Skip to content

Commit 48311b4

Browse files
authored
Merge pull request eu-digital-identity-wallet#502 from niscy-eudiw/bugfix/test_tags_compatibilty_with_apium
feat: Expose test tags as resource IDs for UI testing
2 parents 4aabb48 + 95858fa commit 48311b4

File tree

3 files changed

+17
-2
lines changed

3 files changed

+17
-2
lines changed

ui-logic/src/main/java/eu/europa/ec/uilogic/component/wrap/WrapModalBottomSheet.kt

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ import eu.europa.ec.uilogic.component.utils.SPACING_LARGE
6666
import eu.europa.ec.uilogic.component.utils.SPACING_MEDIUM
6767
import eu.europa.ec.uilogic.component.utils.SPACING_SMALL
6868
import eu.europa.ec.uilogic.component.utils.VSpacer
69+
import eu.europa.ec.uilogic.extension.exposeTestTagsAsResourceId
6970
import eu.europa.ec.uilogic.extension.optionalTestTag
7071
import eu.europa.ec.uilogic.extension.throttledClickable
7172
import eu.europa.ec.uilogic.mvi.ViewEvent
@@ -125,7 +126,9 @@ fun WrapModalBottomSheet(
125126
) {
126127
ModalBottomSheet(
127128
onDismissRequest = onDismissRequest,
128-
modifier = modifier,
129+
modifier = Modifier
130+
.exposeTestTagsAsResourceId()
131+
.then(modifier),
129132
sheetState = sheetState,
130133
shape = shape,
131134
dragHandle = dragHandle,

ui-logic/src/main/java/eu/europa/ec/uilogic/container/EudiComponentActivity.kt

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ import androidx.lifecycle.lifecycleScope
2828
import androidx.navigation.NavController
2929
import androidx.navigation.NavGraphBuilder
3030
import eu.europa.ec.resourceslogic.theme.ThemeManager
31+
import eu.europa.ec.uilogic.extension.exposeTestTagsAsResourceId
3132
import eu.europa.ec.uilogic.navigation.IssuanceScreens
3233
import eu.europa.ec.uilogic.navigation.RouterHost
3334
import eu.europa.ec.uilogic.navigation.helper.DeepLinkAction
@@ -59,7 +60,9 @@ open class EudiComponentActivity : FragmentActivity() {
5960
) {
6061
ThemeManager.instance.Theme {
6162
Surface(
62-
modifier = Modifier.fillMaxSize(),
63+
modifier = Modifier
64+
.exposeTestTagsAsResourceId()
65+
.fillMaxSize(),
6366
color = MaterialTheme.colorScheme.surface
6467
) {
6568
routerHost.StartFlow {

ui-logic/src/main/java/eu/europa/ec/uilogic/extension/ModifierExtensions.kt

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,8 @@ import androidx.compose.ui.platform.LocalLayoutDirection
4646
import androidx.compose.ui.platform.debugInspectorInfo
4747
import androidx.compose.ui.platform.testTag
4848
import androidx.compose.ui.semantics.Role
49+
import androidx.compose.ui.semantics.semantics
50+
import androidx.compose.ui.semantics.testTagsAsResourceId
4951
import androidx.compose.ui.unit.Dp
5052
import androidx.compose.ui.unit.dp
5153
import kotlinx.coroutines.channels.BufferOverflow
@@ -200,4 +202,11 @@ fun Modifier.optionalTestTag(testTag: String?): Modifier {
200202
Modifier
201203
}
202204
)
205+
}
206+
207+
fun Modifier.exposeTestTagsAsResourceId(): Modifier {
208+
return this
209+
.semantics {
210+
this.testTagsAsResourceId = true
211+
}
203212
}

0 commit comments

Comments
 (0)