11package com.example.util.simpletimetracker
22
33import androidx.test.espresso.Espresso.pressBack
4+ import androidx.test.espresso.matcher.ViewMatchers.hasSibling
45import androidx.test.espresso.matcher.ViewMatchers.isCompletelyDisplayed
56import androidx.test.espresso.matcher.ViewMatchers.isDescendantOfA
67import androidx.test.espresso.matcher.ViewMatchers.withId
@@ -20,7 +21,6 @@ import org.junit.Test
2021import org.junit.runner.RunWith
2122import com.example.util.simpletimetracker.core.R as coreR
2223import com.example.util.simpletimetracker.feature_base_adapter.R as baseR
23- import com.example.util.simpletimetracker.feature_statistics.R as statisticsR
2424
2525@HiltAndroidTest
2626@RunWith(AndroidJUnit4 ::class )
@@ -49,7 +49,7 @@ class StatisticsFilterTest : BaseUiTest() {
4949 checkViewIsDisplayed(allOf(withText(name1), isCompletelyDisplayed()))
5050 checkViewIsDisplayed(allOf(withText(name2), isCompletelyDisplayed()))
5151 checkViewIsDisplayed(
52- allOf(withId(statisticsR .id.tvStatisticsInfoText ), withText(" 2$hourString 0$minuteString " )),
52+ allOf(withId(R .id.tvStatisticsItemDuration ), withText(" 2$hourString 0$minuteString " )),
5353 )
5454
5555 // Filter untracked
@@ -62,7 +62,7 @@ class StatisticsFilterTest : BaseUiTest() {
6262 checkViewIsDisplayed(allOf(withText(name1), isCompletelyDisplayed()))
6363 checkViewIsDisplayed(allOf(withText(name2), isCompletelyDisplayed()))
6464 checkViewIsDisplayed(
65- allOf(withId(statisticsR .id.tvStatisticsInfoText ), withText(" 2$hourString 0$minuteString " )),
65+ allOf(withId(R .id.tvStatisticsItemDuration ), withText(" 2$hourString 0$minuteString " )),
6666 )
6767
6868 // Filter activity
@@ -73,7 +73,11 @@ class StatisticsFilterTest : BaseUiTest() {
7373 checkViewDoesNotExist(allOf(withText(name1), isCompletelyDisplayed()))
7474 checkViewIsDisplayed(allOf(withText(name2), isCompletelyDisplayed()))
7575 checkViewIsDisplayed(
76- allOf(withId(statisticsR.id.tvStatisticsInfoText), withText(" 1$hourString 0$minuteString " )),
76+ allOf(
77+ withId(R .id.tvStatisticsItemDuration),
78+ hasSibling(withText(R .string.statistics_total_tracked)),
79+ withText(" 1$hourString 0$minuteString " ),
80+ ),
7781 )
7882
7983 // Filter all
@@ -83,7 +87,7 @@ class StatisticsFilterTest : BaseUiTest() {
8387 tryAction { checkViewDoesNotExist(allOf(withText(coreR.string.untracked_time_name), isCompletelyDisplayed())) }
8488 checkViewDoesNotExist(allOf(withText(name1), isCompletelyDisplayed()))
8589 checkViewDoesNotExist(allOf(withText(name2), isCompletelyDisplayed()))
86- checkViewDoesNotExist(allOf(withId(statisticsR .id.tvStatisticsInfoText ), isCompletelyDisplayed()))
90+ checkViewDoesNotExist(allOf(withId(R .id.tvStatisticsItemDuration ), isCompletelyDisplayed()))
8791 checkViewIsDisplayed(allOf(withText(coreR.string.no_data), isCompletelyDisplayed()))
8892
8993 // Show all
@@ -94,7 +98,7 @@ class StatisticsFilterTest : BaseUiTest() {
9498 checkViewIsDisplayed(allOf(withText(name1), isCompletelyDisplayed()))
9599 checkViewIsDisplayed(allOf(withText(name2), isCompletelyDisplayed()))
96100 checkViewIsDisplayed(
97- allOf(withId(statisticsR .id.tvStatisticsInfoText ), withText(" 2$hourString 0$minuteString " )),
101+ allOf(withId(R .id.tvStatisticsItemDuration ), withText(" 2$hourString 0$minuteString " )),
98102 )
99103
100104 // Hide all
@@ -104,7 +108,7 @@ class StatisticsFilterTest : BaseUiTest() {
104108 tryAction { checkViewDoesNotExist(allOf(withText(coreR.string.untracked_time_name), isCompletelyDisplayed())) }
105109 checkViewDoesNotExist(allOf(withText(name1), isCompletelyDisplayed()))
106110 checkViewDoesNotExist(allOf(withText(name2), isCompletelyDisplayed()))
107- checkViewDoesNotExist(allOf(withId(statisticsR .id.tvStatisticsInfoText ), isCompletelyDisplayed()))
111+ checkViewDoesNotExist(allOf(withId(R .id.tvStatisticsItemDuration ), isCompletelyDisplayed()))
108112 checkViewIsDisplayed(allOf(withText(coreR.string.no_data), isCompletelyDisplayed()))
109113 }
110114
@@ -139,7 +143,7 @@ class StatisticsFilterTest : BaseUiTest() {
139143 checkViewIsDisplayed(allOf(withText(name2), isCompletelyDisplayed()))
140144 checkViewIsDisplayed(allOf(withText(name3), isCompletelyDisplayed()))
141145 checkViewIsDisplayed(
142- allOf(withId(statisticsR .id.tvStatisticsInfoText ), withText(" 3$hourString 0$minuteString " )),
146+ allOf(withId(R .id.tvStatisticsItemDuration ), withText(" 3$hourString 0$minuteString " )),
143147 )
144148
145149 // Switch filter
@@ -153,7 +157,7 @@ class StatisticsFilterTest : BaseUiTest() {
153157 checkViewIsDisplayed(allOf(withText(tag2), isCompletelyDisplayed()))
154158 checkViewIsDisplayed(allOf(withText(coreR.string.uncategorized_time_name), isCompletelyDisplayed()))
155159 checkViewIsDisplayed(
156- allOf(withId(statisticsR .id.tvStatisticsInfoText ), withText(" 3$hourString 0$minuteString " )),
160+ allOf(withId(R .id.tvStatisticsItemDuration ), withText(" 3$hourString 0$minuteString " )),
157161 )
158162
159163 // Filter untracked
@@ -167,7 +171,7 @@ class StatisticsFilterTest : BaseUiTest() {
167171 checkViewIsDisplayed(allOf(withText(tag2), isCompletelyDisplayed()))
168172 checkViewIsDisplayed(allOf(withText(coreR.string.uncategorized_time_name), isCompletelyDisplayed()))
169173 checkViewIsDisplayed(
170- allOf(withId(statisticsR .id.tvStatisticsInfoText ), withText(" 3$hourString 0$minuteString " )),
174+ allOf(withId(R .id.tvStatisticsItemDuration ), withText(" 3$hourString 0$minuteString " )),
171175 )
172176
173177 // Filter uncategorized
@@ -181,7 +185,7 @@ class StatisticsFilterTest : BaseUiTest() {
181185 checkViewIsDisplayed(allOf(withText(tag2), isCompletelyDisplayed()))
182186 checkViewDoesNotExist(allOf(withText(coreR.string.uncategorized_time_name), isCompletelyDisplayed()))
183187 checkViewIsDisplayed(
184- allOf(withId(statisticsR .id.tvStatisticsInfoText ), withText(" 2$hourString 0$minuteString " )),
188+ allOf(withId(R .id.tvStatisticsItemDuration ), withText(" 2$hourString 0$minuteString " )),
185189 )
186190
187191 // Filter tag
@@ -191,7 +195,11 @@ class StatisticsFilterTest : BaseUiTest() {
191195 tryAction { checkViewDoesNotExist(allOf(withText(tag1), isCompletelyDisplayed())) }
192196 checkViewIsDisplayed(allOf(withText(tag2), isCompletelyDisplayed()))
193197 checkViewIsDisplayed(
194- allOf(withId(statisticsR.id.tvStatisticsInfoText), withText(" 1$hourString 0$minuteString " )),
198+ allOf(
199+ withId(R .id.tvStatisticsItemDuration),
200+ hasSibling(withText(R .string.statistics_total_tracked)),
201+ withText(" 1$hourString 0$minuteString " ),
202+ ),
195203 )
196204
197205 // Filter all
@@ -200,7 +208,7 @@ class StatisticsFilterTest : BaseUiTest() {
200208 pressBack()
201209 tryAction { checkViewDoesNotExist(allOf(withText(tag1), isCompletelyDisplayed())) }
202210 checkViewDoesNotExist(allOf(withText(tag2), isCompletelyDisplayed()))
203- checkViewDoesNotExist(allOf(withId(statisticsR .id.tvStatisticsInfoText ), isCompletelyDisplayed()))
211+ checkViewDoesNotExist(allOf(withId(R .id.tvStatisticsItemDuration ), isCompletelyDisplayed()))
204212 checkViewIsDisplayed(allOf(withText(coreR.string.no_data), isCompletelyDisplayed()))
205213
206214 // Show all
@@ -212,7 +220,7 @@ class StatisticsFilterTest : BaseUiTest() {
212220 checkViewIsDisplayed(allOf(withText(coreR.string.untracked_time_name), isCompletelyDisplayed()))
213221 checkViewIsDisplayed(allOf(withText(coreR.string.uncategorized_time_name), isCompletelyDisplayed()))
214222 checkViewIsDisplayed(
215- allOf(withId(statisticsR .id.tvStatisticsInfoText ), withText(" 3$hourString 0$minuteString " )),
223+ allOf(withId(R .id.tvStatisticsItemDuration ), withText(" 3$hourString 0$minuteString " )),
216224 )
217225
218226 // Hide all
@@ -223,7 +231,7 @@ class StatisticsFilterTest : BaseUiTest() {
223231 checkViewDoesNotExist(allOf(withText(tag2), isCompletelyDisplayed()))
224232 checkViewDoesNotExist(allOf(withText(coreR.string.untracked_time_name), isCompletelyDisplayed()))
225233 checkViewDoesNotExist(allOf(withText(coreR.string.uncategorized_time_name), isCompletelyDisplayed()))
226- checkViewDoesNotExist(allOf(withId(statisticsR .id.tvStatisticsInfoText ), isCompletelyDisplayed()))
234+ checkViewDoesNotExist(allOf(withId(R .id.tvStatisticsItemDuration ), isCompletelyDisplayed()))
227235 checkViewIsDisplayed(allOf(withText(coreR.string.no_data), isCompletelyDisplayed()))
228236 }
229237
@@ -258,7 +266,7 @@ class StatisticsFilterTest : BaseUiTest() {
258266 checkViewIsDisplayed(allOf(withText(name2), isCompletelyDisplayed()))
259267 checkViewIsDisplayed(allOf(withText(name3), isCompletelyDisplayed()))
260268 checkViewIsDisplayed(
261- allOf(withId(statisticsR .id.tvStatisticsInfoText ), withText(" 3$hourString 0$minuteString " )),
269+ allOf(withId(R .id.tvStatisticsItemDuration ), withText(" 3$hourString 0$minuteString " )),
262270 )
263271
264272 // Switch filter
@@ -272,7 +280,7 @@ class StatisticsFilterTest : BaseUiTest() {
272280 checkViewIsDisplayed(allOf(withText(tag2), isCompletelyDisplayed()))
273281 checkViewIsDisplayed(allOf(withText(coreR.string.change_record_untagged), isCompletelyDisplayed()))
274282 checkViewIsDisplayed(
275- allOf(withId(statisticsR .id.tvStatisticsInfoText ), withText(" 3$hourString 0$minuteString " )),
283+ allOf(withId(R .id.tvStatisticsItemDuration ), withText(" 3$hourString 0$minuteString " )),
276284 )
277285
278286 // Filter untracked
@@ -286,7 +294,7 @@ class StatisticsFilterTest : BaseUiTest() {
286294 checkViewIsDisplayed(allOf(withText(tag2), isCompletelyDisplayed()))
287295 checkViewIsDisplayed(allOf(withText(coreR.string.change_record_untagged), isCompletelyDisplayed()))
288296 checkViewIsDisplayed(
289- allOf(withId(statisticsR .id.tvStatisticsInfoText ), withText(" 3$hourString 0$minuteString " )),
297+ allOf(withId(R .id.tvStatisticsItemDuration ), withText(" 3$hourString 0$minuteString " )),
290298 )
291299
292300 // Filter untagged
@@ -300,7 +308,7 @@ class StatisticsFilterTest : BaseUiTest() {
300308 checkViewIsDisplayed(allOf(withText(tag2), isCompletelyDisplayed()))
301309 checkViewDoesNotExist(allOf(withText(coreR.string.change_record_untagged), isCompletelyDisplayed()))
302310 checkViewIsDisplayed(
303- allOf(withId(statisticsR .id.tvStatisticsInfoText ), withText(" 2$hourString 0$minuteString " )),
311+ allOf(withId(R .id.tvStatisticsItemDuration ), withText(" 2$hourString 0$minuteString " )),
304312 )
305313
306314 // Filter tag
@@ -310,7 +318,11 @@ class StatisticsFilterTest : BaseUiTest() {
310318 tryAction { checkViewDoesNotExist(allOf(withText(tag1), isCompletelyDisplayed())) }
311319 checkViewIsDisplayed(allOf(withText(tag2), isCompletelyDisplayed()))
312320 checkViewIsDisplayed(
313- allOf(withId(statisticsR.id.tvStatisticsInfoText), withText(" 1$hourString 0$minuteString " )),
321+ allOf(
322+ withId(R .id.tvStatisticsItemDuration),
323+ hasSibling(withText(R .string.statistics_total_tracked)),
324+ withText(" 1$hourString 0$minuteString " ),
325+ ),
314326 )
315327
316328 // Filter all
@@ -319,7 +331,7 @@ class StatisticsFilterTest : BaseUiTest() {
319331 pressBack()
320332 tryAction { checkViewDoesNotExist(allOf(withText(tag1), isCompletelyDisplayed())) }
321333 checkViewDoesNotExist(allOf(withText(tag2), isCompletelyDisplayed()))
322- checkViewDoesNotExist(allOf(withId(statisticsR .id.tvStatisticsInfoText ), isCompletelyDisplayed()))
334+ checkViewDoesNotExist(allOf(withId(R .id.tvStatisticsItemDuration ), isCompletelyDisplayed()))
323335 checkViewIsDisplayed(allOf(withText(coreR.string.no_data), isCompletelyDisplayed()))
324336
325337 // Show all
@@ -331,7 +343,7 @@ class StatisticsFilterTest : BaseUiTest() {
331343 checkViewIsDisplayed(allOf(withText(coreR.string.untracked_time_name), isCompletelyDisplayed()))
332344 checkViewIsDisplayed(allOf(withText(coreR.string.change_record_untagged), isCompletelyDisplayed()))
333345 checkViewIsDisplayed(
334- allOf(withId(statisticsR .id.tvStatisticsInfoText ), withText(" 3$hourString 0$minuteString " )),
346+ allOf(withId(R .id.tvStatisticsItemDuration ), withText(" 3$hourString 0$minuteString " )),
335347 )
336348
337349 // Hide all
@@ -342,7 +354,7 @@ class StatisticsFilterTest : BaseUiTest() {
342354 checkViewDoesNotExist(allOf(withText(tag2), isCompletelyDisplayed()))
343355 checkViewDoesNotExist(allOf(withText(coreR.string.untracked_time_name), isCompletelyDisplayed()))
344356 checkViewDoesNotExist(allOf(withText(coreR.string.change_record_untagged), isCompletelyDisplayed()))
345- checkViewDoesNotExist(allOf(withId(statisticsR .id.tvStatisticsInfoText ), isCompletelyDisplayed()))
357+ checkViewDoesNotExist(allOf(withId(R .id.tvStatisticsItemDuration ), isCompletelyDisplayed()))
346358 checkViewIsDisplayed(allOf(withText(coreR.string.no_data), isCompletelyDisplayed()))
347359 }
348360}
0 commit comments