@@ -3,42 +3,31 @@ package org.dhis2.usescases.teidashboard
3
3
import android.view.View
4
4
import androidx.compose.ui.test.junit4.createAndroidComposeRule
5
5
import androidx.test.core.app.ActivityScenario
6
- import androidx.test.espresso.Espresso.onView
7
- import androidx.test.espresso.assertion.ViewAssertions.matches
8
- import androidx.test.espresso.matcher.ViewMatchers.isDisplayed
9
- import androidx.test.espresso.matcher.ViewMatchers.withId
10
6
import androidx.test.ext.junit.rules.activityScenarioRule
11
7
import dhis2.org.analytics.charts.Charts
12
8
import io.reactivex.Observable
9
+ import java.util.Calendar
13
10
import org.dhis2.R
14
11
import org.dhis2.android.rtsm.utils.NetworkUtils
15
- import org.dhis2.commons.date.DateUtils
16
12
import org.dhis2.commons.filters.FilterManager
13
+ import org.dhis2.commons.prefs.PreferenceProvider
17
14
import org.dhis2.commons.resources.ResourceManager
18
15
import org.dhis2.ui.ThemeManager
19
- import org.dhis2.usescases.eventsWithoutRegistration.eventDetails.EventInitialTest
20
- import org.dhis2.usescases.eventsWithoutRegistration.eventDetails.data.EventDetailsRepository
21
- import org.dhis2.usescases.main.program.ProgramPresenter
22
16
import org.dhis2.usescases.teiDashboard.DashboardRepositoryImpl
23
17
import org.dhis2.usescases.teiDashboard.DashboardViewModel
24
18
import org.dhis2.usescases.teiDashboard.TeiAttributesProvider
25
19
import org.dhis2.usescases.teiDashboard.TeiDashboardContracts
26
20
import org.dhis2.usescases.teiDashboard.TeiDashboardMobileActivity
27
21
import org.dhis2.utils.analytics.AnalyticsHelper
28
22
import org.hisp.dhis.android.core.D2
29
- import org.hisp.dhis.android.core.event.EventEditableStatus
30
23
import org.hisp.dhis.android.core.trackedentity.TrackedEntityInstance
31
24
import org.hisp.dhis.android.core.trackedentity.TrackedEntityType
32
- import org.junit.Before
33
25
import org.junit.Rule
34
26
import org.junit.Test
35
- import org.mockito.ArgumentMatchers
36
27
import org.mockito.Mockito
37
28
import org.mockito.kotlin.doReturn
38
- import org.mockito.kotlin.doReturnConsecutively
39
29
import org.mockito.kotlin.mock
40
30
import org.mockito.kotlin.whenever
41
- import java.util.Calendar
42
31
43
32
class TeiDashboardMobileActivityTest {
44
33
@@ -55,18 +44,21 @@ class TeiDashboardMobileActivityTest {
55
44
private val resources: ResourceManager = mock()
56
45
private val charts: Charts = mock()
57
46
private val teiAttributesProvider: TeiAttributesProvider = mock()
47
+ private val preferences: PreferenceProvider = mock()
58
48
59
49
60
50
private var repository: DashboardRepositoryImpl = mock {
61
51
62
52
}
63
- var tei = Observable .just(TrackedEntityInstance .builder()
64
- .uid(TEI_Uid )
65
- .created(Calendar .getInstance().time)
66
- .lastUpdated(Calendar .getInstance().time)
67
- .organisationUnit(ORG_UNIT_UID )
68
- .trackedEntityType(TETYPE_NAME )
69
- .build())
53
+ var tei = Observable .just(
54
+ TrackedEntityInstance .builder()
55
+ .uid(TEI_Uid )
56
+ .created(Calendar .getInstance().time)
57
+ .lastUpdated(Calendar .getInstance().time)
58
+ .organisationUnit(ORG_UNIT_UID )
59
+ .trackedEntityType(TETYPE_NAME )
60
+ .build()
61
+ )
70
62
71
63
private val teType: TrackedEntityType = mock()
72
64
@@ -93,8 +85,8 @@ class TeiDashboardMobileActivityTest {
93
85
}
94
86
95
87
private fun initViewModel () {
96
- viewModel = DashboardViewModel (
97
- repository ,
88
+ viewModel = DashboardViewModel (
89
+ repository,
98
90
analyticsHelper
99
91
)
100
92
@@ -112,8 +104,8 @@ class TeiDashboardMobileActivityTest {
112
104
TEI_Uid ,
113
105
PROGRAM_UID ,
114
106
ENROLLMENT_UID ,
115
- resources,
116
107
teiAttributesProvider,
108
+ preferences,
117
109
)
118
110
119
111
@@ -123,58 +115,73 @@ class TeiDashboardMobileActivityTest {
123
115
@Test
124
116
fun shouldSuccessfullyInitializeTeiDashBoardMobileActivity () {
125
117
setUp()
126
- whenever (repository.getTETypeName()) doReturn TETYPE_NAME
127
- whenever ( repository.getTrackedEntityInstance(" " ) ) doReturn mock()
128
- whenever {repository.getTrackedEntityInstance(" " ).flatMap { tei: TrackedEntityInstance ->
129
- d2.trackedEntityModule().trackedEntityTypes()
130
- .uid(tei.trackedEntityType())
131
- .get()
132
- .toObservable()
133
- } } doReturn mock()
134
- whenever {repository.getTrackedEntityInstance(" " ).flatMap { tei: TrackedEntityInstance ->
135
- d2.trackedEntityModule().trackedEntityTypes()
136
- .uid(tei.trackedEntityType())
137
- .get()
138
- .toObservable()
139
- }.blockingFirst() } doReturn { teType }
118
+ whenever(repository.getTETypeName()) doReturn TETYPE_NAME
119
+ whenever(repository.getTrackedEntityInstance(" " )) doReturn mock()
120
+ whenever {
121
+ repository.getTrackedEntityInstance(" " ).flatMap { tei: TrackedEntityInstance ->
122
+ d2.trackedEntityModule().trackedEntityTypes()
123
+ .uid(tei.trackedEntityType())
124
+ .get()
125
+ .toObservable()
126
+ }
127
+ } doReturn mock()
128
+ whenever {
129
+ repository.getTrackedEntityInstance(" " ).flatMap { tei: TrackedEntityInstance ->
130
+ d2.trackedEntityModule().trackedEntityTypes()
131
+ .uid(tei.trackedEntityType())
132
+ .get()
133
+ .toObservable()
134
+ }.blockingFirst()
135
+ } doReturn { teType }
140
136
whenever(
141
137
presenter.teType
142
- ) doReturn TETYPE_NAME
138
+ ) doReturn TETYPE_NAME
143
139
144
140
whenever(
145
141
repository.getTETypeName()
146
- ) doReturn TETYPE_NAME
142
+ ) doReturn TETYPE_NAME
147
143
whenever(
148
- d2.trackedEntityModule() ) doReturn mock()
144
+ d2.trackedEntityModule()
145
+ ) doReturn mock()
149
146
whenever(
150
- d2.trackedEntityModule().trackedEntityInstances() ) doReturn mock()
147
+ d2.trackedEntityModule().trackedEntityInstances()
148
+ ) doReturn mock()
151
149
whenever(
152
- d2.trackedEntityModule().trackedEntityInstances().byUid() ) doReturn mock()
150
+ d2.trackedEntityModule().trackedEntityInstances().byUid()
151
+ ) doReturn mock()
153
152
whenever(
154
- d2.trackedEntityModule().trackedEntityInstances().byUid().eq(" " ) ) doReturn mock()
153
+ d2.trackedEntityModule().trackedEntityInstances().byUid().eq(" " )
154
+ ) doReturn mock()
155
155
whenever(
156
- d2.trackedEntityModule().trackedEntityInstances().byUid().eq(" " ).one() ) doReturn mock()
156
+ d2.trackedEntityModule().trackedEntityInstances().byUid().eq(" " ).one()
157
+ ) doReturn mock()
157
158
whenever(
158
159
d2.trackedEntityModule().trackedEntityInstances().byUid().eq(" " ).one()
159
- .blockingGet() ) doReturn mock()
160
+ .blockingGet()
161
+ ) doReturn mock()
160
162
161
163
whenever(
162
- d2.trackedEntityModule().trackedEntityTypes() ) doReturn mock()
164
+ d2.trackedEntityModule().trackedEntityTypes()
165
+ ) doReturn mock()
163
166
whenever(
164
- d2.trackedEntityModule().trackedEntityTypes().uid(" " ) ) doReturn mock()
167
+ d2.trackedEntityModule().trackedEntityTypes().uid(" " )
168
+ ) doReturn mock()
165
169
whenever(
166
- d2.trackedEntityModule().trackedEntityTypes().uid(" " ).get() ) doReturn mock()
170
+ d2.trackedEntityModule().trackedEntityTypes().uid(" " ).get()
171
+ ) doReturn mock()
167
172
whenever(
168
- d2.trackedEntityModule().trackedEntityTypes().uid(" " ).get().toObservable() ) doReturn mock()
173
+ d2.trackedEntityModule().trackedEntityTypes().uid(" " ).get().toObservable()
174
+ ) doReturn mock()
169
175
whenever(
170
- d2.trackedEntityModule().trackedEntityTypes().uid(" " ).get().toObservable() ) doReturn mock()
176
+ d2.trackedEntityModule().trackedEntityTypes().uid(" " ).get().toObservable()
177
+ ) doReturn mock()
171
178
172
179
173
180
174
181
175
182
ActivityScenario .launch(TeiDashboardMobileActivity ::class .java).onActivity { activity ->
176
183
177
- val showMoreOptions = activity.findViewById<View >(R .id.moreOptions)
184
+ val showMoreOptions = activity.findViewById<View >(R .id.moreOptions)
178
185
showMoreOptions.performClick()
179
186
}
180
187
0 commit comments