16
16
17
17
package com.example.compose.jetchat
18
18
19
+ import androidx.activity.ComponentActivity
20
+ import androidx.compose.runtime.Providers
21
+ import androidx.compose.runtime.collectAsState
19
22
import androidx.compose.ui.geometry.Offset
20
23
import androidx.compose.ui.test.assertIsDisplayed
21
24
import androidx.compose.ui.test.center
@@ -26,22 +29,25 @@ import androidx.compose.ui.test.onNodeWithText
26
29
import androidx.compose.ui.test.performClick
27
30
import androidx.compose.ui.test.performGesture
28
31
import androidx.compose.ui.test.swipe
32
+ import com.example.compose.jetchat.conversation.ConversationContent
29
33
import com.example.compose.jetchat.conversation.ConversationTestTag
34
+ import com.example.compose.jetchat.conversation.LocalBackPressedDispatcher
35
+ import com.example.compose.jetchat.data.exampleUiState
36
+ import com.example.compose.jetchat.theme.JetchatTheme
37
+ import dev.chrisbanes.accompanist.insets.LocalWindowInsets
30
38
import dev.chrisbanes.accompanist.insets.WindowInsets
31
39
import kotlinx.coroutines.flow.MutableStateFlow
32
40
import org.junit.Before
33
- import org.junit.Ignore
34
41
import org.junit.Rule
35
42
import org.junit.Test
36
43
37
44
/* *
38
45
* Checks that the features in the Conversation screen work as expected.
39
46
*/
40
- @Ignore(" b/nnnnnnn Sync problems related to AndroidView, app never idle" )
41
47
class ConversationTest {
42
48
43
49
@get:Rule
44
- val composeTestRule = createAndroidComposeRule<NavActivity >()
50
+ val composeTestRule = createAndroidComposeRule<ComponentActivity >()
45
51
46
52
private val themeIsDark = MutableStateFlow (false )
47
53
@@ -50,22 +56,22 @@ class ConversationTest {
50
56
// Provide empty insets. We can modify this value as necessary
51
57
val windowInsets = WindowInsets ()
52
58
53
- // // Launch the conversation screen
54
- // composeTestRule.setContent {
55
- // val onBackPressedDispatcher = composeTestRule.activity.onBackPressedDispatcher
56
- // Providers(
57
- // AmbientBackPressedDispatcher provides onBackPressedDispatcher,
58
- // LocalWindowInsets provides windowInsets
59
- // ) {
60
- // JetchatTheme(isDarkTheme = themeIsDark.collectAsState(false).value) {
61
- // ConversationContent(
62
- // uiState = exampleUiState,
63
- // navigateToProfile = { },
64
- // onNavIconPressed = { }
65
- // )
66
- // }
67
- // }
68
- // }
59
+ // Launch the conversation screen
60
+ composeTestRule.setContent {
61
+ val onBackPressedDispatcher = composeTestRule.activity.onBackPressedDispatcher
62
+ Providers (
63
+ LocalBackPressedDispatcher provides onBackPressedDispatcher,
64
+ LocalWindowInsets provides windowInsets
65
+ ) {
66
+ JetchatTheme (isDarkTheme = themeIsDark.collectAsState(false ).value) {
67
+ ConversationContent (
68
+ uiState = exampleUiState,
69
+ navigateToProfile = { },
70
+ onNavIconPressed = { }
71
+ )
72
+ }
73
+ }
74
+ }
69
75
}
70
76
71
77
@Test
0 commit comments