Skip to content

Commit b73b0ae

Browse files
committed
fix tests
Signed-off-by: alperozturk96 <alper_ozturk@proton.me>
1 parent 1997673 commit b73b0ae

3 files changed

Lines changed: 43 additions & 70 deletions

File tree

app/src/test/java/com/owncloud/android/ui/activities/ActivitiesPresenterTest.kt

Lines changed: 24 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -19,12 +19,11 @@ import com.owncloud.android.ui.activities.data.files.FilesRepository.ReadRemoteF
1919
import com.owncloud.android.ui.activity.BaseActivity
2020
import org.junit.Before
2121
import org.junit.Test
22-
import org.mockito.ArgumentCaptor
23-
import org.mockito.ArgumentMatchers.eq
24-
import org.mockito.Captor
2522
import org.mockito.Mock
2623
import org.mockito.Mockito.verify
2724
import org.mockito.MockitoAnnotations
25+
import org.mockito.kotlin.argumentCaptor
26+
import org.mockito.kotlin.eq
2827
import java.util.Date
2928

3029
class ActivitiesPresenterTest {
@@ -50,18 +49,12 @@ class ActivitiesPresenterTest {
5049
@Mock
5150
private lateinit var lifecycleScope: LifecycleCoroutineScope
5251

53-
@Captor
54-
private lateinit var readRemoteFileCallbackCaptor: ArgumentCaptor<ReadRemoteFileCallback>
55-
56-
@Captor
57-
private lateinit var loadActivitiesCallbackCaptor: ArgumentCaptor<LoadActivitiesCallback>
58-
5952
private lateinit var activitiesPresenter: ActivitiesPresenter
6053
private lateinit var activitiesList: List<Any>
6154

6255
@Before
6356
fun setupActivitiesPresenter() {
64-
MockitoAnnotations.initMocks(this)
57+
MockitoAnnotations.openMocks(this)
6558
activitiesPresenter = ActivitiesPresenter(activitiesRepository, filesRepository, view)
6659

6760
activitiesList = mutableListOf(
@@ -79,104 +72,84 @@ class ActivitiesPresenterTest {
7972
@Test
8073
fun loadInitialActivitiesFromRepositoryIntoView() {
8174
val lastGiven = -1L
75+
val captor = argumentCaptor<LoadActivitiesCallback>()
8276

83-
// When loading activities from repository is requested from presenter...
8477
activitiesPresenter.loadActivities(lifecycleScope, lastGiven)
85-
// Empty list view is hidden in view
8678
verify(view).showLoadingMessage()
87-
// Repository starts retrieving activities from server
8879
verify(activitiesRepository).getActivities(
8980
eq(lifecycleScope),
9081
eq(lastGiven),
91-
loadActivitiesCallbackCaptor.capture()
92-
)
93-
// Repository returns data
94-
loadActivitiesCallbackCaptor.value.onActivitiesLoaded(
95-
activitiesList,
96-
nextcloudClient,
97-
lastGiven
82+
captor.capture()
9883
)
99-
// Progress indicator is hidden
84+
captor.firstValue.onActivitiesLoaded(activitiesList, nextcloudClient, lastGiven)
10085
verify(view).setProgressIndicatorState(eq(false))
101-
// List of activities is shown in view
10286
verify(view).showActivities(eq(activitiesList), eq(nextcloudClient), eq(lastGiven))
10387
}
10488

10589
@Test
10690
fun loadFollowUpActivitiesFromRepositoryIntoView() {
10791
val lastGiven = 1L
92+
val captor = argumentCaptor<LoadActivitiesCallback>()
10893

109-
// When loading activities from repository is requested from presenter...
11094
activitiesPresenter.loadActivities(lifecycleScope, lastGiven)
111-
// Progress indicator is shown in view
11295
verify(view).setProgressIndicatorState(eq(true))
113-
// Repository starts retrieving activities from server
11496
verify(activitiesRepository).getActivities(
11597
eq(lifecycleScope),
11698
eq(lastGiven),
117-
loadActivitiesCallbackCaptor.capture()
99+
captor.capture()
118100
)
119-
// Repository returns data
120-
loadActivitiesCallbackCaptor.value.onActivitiesLoaded(activitiesList, nextcloudClient, lastGiven)
121-
// Progress indicator is hidden
101+
captor.firstValue.onActivitiesLoaded(activitiesList, nextcloudClient, lastGiven)
122102
verify(view).setProgressIndicatorState(eq(false))
123-
// List of activities is shown in view
124103
verify(view).showActivities(eq(activitiesList), eq(nextcloudClient), eq(lastGiven))
125104
}
126105

127106
@Test
128107
fun loadActivitiesFromRepositoryShowError() {
129108
val lastGiven = -1L
109+
val captor = argumentCaptor<LoadActivitiesCallback>()
130110

131-
// When loading activities from repository is requested from presenter...
132111
activitiesPresenter.loadActivities(lifecycleScope, lastGiven)
133-
// Repository starts retrieving activities from server
134112
verify(activitiesRepository).getActivities(
135113
eq(lifecycleScope),
136114
eq(lastGiven),
137-
loadActivitiesCallbackCaptor.capture()
115+
captor.capture()
138116
)
139-
// Repository returns an error
140-
loadActivitiesCallbackCaptor.value.onActivitiesLoadedError("error")
141-
// Correct error is shown in view
117+
captor.firstValue.onActivitiesLoadedError("error")
142118
verify(view).showActivitiesLoadError(eq("error"))
143119
}
144120

145121
@Test
146122
fun loadRemoteFileFromRepositoryShowDetailUI() {
147-
// When retrieving remote file from repository...
123+
val captor = argumentCaptor<ReadRemoteFileCallback>()
124+
148125
activitiesPresenter.openActivity("null", baseActivity)
149126
verify(view).setProgressIndicatorState(eq(true))
150-
verify(filesRepository).readRemoteFile(eq("null"), eq(baseActivity), readRemoteFileCallbackCaptor.capture())
151-
152-
// Repository returns a valid file object
153-
readRemoteFileCallbackCaptor.value.onFileLoaded(ocFile)
127+
verify(filesRepository).readRemoteFile(eq("null"), eq(baseActivity), captor.capture())
128+
captor.firstValue.onFileLoaded(ocFile)
154129
verify(view).setProgressIndicatorState(eq(false))
155130
verify(view).showActivityDetailUI(eq(ocFile))
156131
}
157132

158133
@Test
159134
fun loadRemoteFileFromRepositoryShowEmptyFile() {
160-
// When retrieving remote file from repository...
135+
val captor = argumentCaptor<ReadRemoteFileCallback>()
136+
161137
activitiesPresenter.openActivity("null", baseActivity)
162138
verify(view).setProgressIndicatorState(eq(true))
163-
verify(filesRepository).readRemoteFile(eq("null"), eq(baseActivity), readRemoteFileCallbackCaptor.capture())
164-
165-
// Repository returns a valid but null file object
166-
readRemoteFileCallbackCaptor.value.onFileLoaded(null)
139+
verify(filesRepository).readRemoteFile(eq("null"), eq(baseActivity), captor.capture())
140+
captor.firstValue.onFileLoaded(null)
167141
verify(view).setProgressIndicatorState(eq(false))
168142
verify(view).showActivityDetailUIIsNull()
169143
}
170144

171145
@Test
172146
fun loadRemoteFileFromRepositoryShowError() {
173-
// When retrieving remote file from repository...
147+
val captor = argumentCaptor<ReadRemoteFileCallback>()
148+
174149
activitiesPresenter.openActivity("null", baseActivity)
175150
verify(view).setProgressIndicatorState(eq(true))
176-
verify(filesRepository).readRemoteFile(eq("null"), eq(baseActivity), readRemoteFileCallbackCaptor.capture())
177-
178-
// Repository returns an error
179-
readRemoteFileCallbackCaptor.value.onFileLoadError("error")
151+
verify(filesRepository).readRemoteFile(eq("null"), eq(baseActivity), captor.capture())
152+
captor.firstValue.onFileLoadError("error")
180153
verify(view).setProgressIndicatorState(eq(false))
181154
verify(view).showActivityDetailError(eq("error"))
182155
}

app/src/test/java/com/owncloud/android/ui/activities/data/activities/RemoteActivitiesRepositoryTest.kt

Lines changed: 9 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
* SPDX-FileCopyrightText: 2018 Edvard Holst <edvard.holst@gmail.com>
66
* SPDX-License-Identifier: AGPL-3.0-or-later OR GPL-2.0-only
77
*/
8+
89
package com.owncloud.android.ui.activities.data.activities
910

1011
import androidx.lifecycle.LifecycleCoroutineScope
@@ -13,12 +14,11 @@ import com.owncloud.android.ui.activities.data.activities.ActivitiesRepository.L
1314
import com.owncloud.android.ui.activities.data.activities.ActivitiesServiceApi.ActivitiesServiceCallback
1415
import org.junit.Before
1516
import org.junit.Test
16-
import org.mockito.ArgumentCaptor
17-
import org.mockito.ArgumentMatchers.eq
18-
import org.mockito.Captor
1917
import org.mockito.Mock
2018
import org.mockito.Mockito.verify
2119
import org.mockito.MockitoAnnotations
20+
import org.mockito.kotlin.argumentCaptor
21+
import org.mockito.kotlin.eq
2222

2323
class RemoteActivitiesRepositoryTest {
2424

@@ -34,9 +34,6 @@ class RemoteActivitiesRepositoryTest {
3434
@Mock
3535
private lateinit var lifecycleScope: LifecycleCoroutineScope
3636

37-
@Captor
38-
private lateinit var activitiesServiceCallbackCaptor: ArgumentCaptor<ActivitiesServiceCallback<List<Any>>>
39-
4037
private lateinit var activitiesRepository: ActivitiesRepository
4138
private lateinit var activitiesList: List<Any>
4239

@@ -50,28 +47,30 @@ class RemoteActivitiesRepositoryTest {
5047
@Test
5148
fun loadActivitiesReturnSuccess() {
5249
val lastGiven = -1L
50+
val captor = argumentCaptor<ActivitiesServiceCallback<List<Any>>>()
5351

5452
activitiesRepository.getActivities(lifecycleScope, lastGiven, mockedLoadActivitiesCallback)
5553
verify(serviceApi).getAllActivities(
5654
eq(lifecycleScope),
5755
eq(lastGiven),
58-
activitiesServiceCallbackCaptor.capture()
56+
captor.capture()
5957
)
60-
activitiesServiceCallbackCaptor.value.onLoaded(activitiesList, nextcloudClient, lastGiven)
58+
captor.firstValue.onLoaded(activitiesList, nextcloudClient, lastGiven)
6159
verify(mockedLoadActivitiesCallback).onActivitiesLoaded(eq(activitiesList), eq(nextcloudClient), eq(lastGiven))
6260
}
6361

6462
@Test
6563
fun loadActivitiesReturnError() {
6664
val lastGiven = -1L
65+
val captor = argumentCaptor<ActivitiesServiceCallback<List<Any>>>()
6766

6867
activitiesRepository.getActivities(lifecycleScope, lastGiven, mockedLoadActivitiesCallback)
6968
verify(serviceApi).getAllActivities(
7069
eq(lifecycleScope),
7170
eq(lastGiven),
72-
activitiesServiceCallbackCaptor.capture()
71+
captor.capture()
7372
)
74-
activitiesServiceCallbackCaptor.value.onError("error")
73+
captor.firstValue.onError("error")
7574
verify(mockedLoadActivitiesCallback).onActivitiesLoadedError(eq("error"))
7675
}
7776
}

app/src/test/java/com/owncloud/android/ui/activities/data/files/RemoteFilesRepositoryTest.kt

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,11 @@ import com.owncloud.android.ui.activities.data.files.FilesServiceApi.FilesServic
1313
import com.owncloud.android.ui.activity.BaseActivity
1414
import org.junit.Before
1515
import org.junit.Test
16-
import org.mockito.ArgumentCaptor
17-
import org.mockito.ArgumentMatchers.eq
18-
import org.mockito.Captor
1916
import org.mockito.Mock
2017
import org.mockito.Mockito.verify
2118
import org.mockito.MockitoAnnotations
19+
import org.mockito.kotlin.argumentCaptor
20+
import org.mockito.kotlin.eq
2221

2322
class RemoteFilesRepositoryTest {
2423

@@ -30,8 +29,6 @@ class RemoteFilesRepositoryTest {
3029

3130
@Mock private lateinit var ocFile: OCFile
3231

33-
@Captor private lateinit var filesServiceCallbackCaptor: ArgumentCaptor<FilesServiceCallback<OCFile>>
34-
3532
private lateinit var filesRepository: FilesRepository
3633

3734
@Before
@@ -42,17 +39,21 @@ class RemoteFilesRepositoryTest {
4239

4340
@Test
4441
fun readRemoteFileReturnSuccess() {
42+
val captor = argumentCaptor<FilesServiceCallback<OCFile>>()
43+
4544
filesRepository.readRemoteFile("path", baseActivity, mockedReadRemoteFileCallback)
46-
verify(serviceApi).readRemoteFile(eq("path"), eq(baseActivity), filesServiceCallbackCaptor.capture())
47-
filesServiceCallbackCaptor.value.onLoaded(ocFile)
45+
verify(serviceApi).readRemoteFile(eq("path"), eq(baseActivity), captor.capture())
46+
captor.firstValue.onLoaded(ocFile)
4847
verify(mockedReadRemoteFileCallback).onFileLoaded(eq(ocFile))
4948
}
5049

5150
@Test
5251
fun readRemoteFileReturnError() {
52+
val captor = argumentCaptor<FilesServiceCallback<OCFile>>()
53+
5354
filesRepository.readRemoteFile("path", baseActivity, mockedReadRemoteFileCallback)
54-
verify(serviceApi).readRemoteFile(eq("path"), eq(baseActivity), filesServiceCallbackCaptor.capture())
55-
filesServiceCallbackCaptor.value.onError("error")
55+
verify(serviceApi).readRemoteFile(eq("path"), eq(baseActivity), captor.capture())
56+
captor.firstValue.onError("error")
5657
verify(mockedReadRemoteFileCallback).onFileLoadError(eq("error"))
5758
}
5859
}

0 commit comments

Comments
 (0)