diff --git a/.idea/androidTestResultsUserPreferences.xml b/.idea/androidTestResultsUserPreferences.xml
index a751b96..59f6bc1 100644
--- a/.idea/androidTestResultsUserPreferences.xml
+++ b/.idea/androidTestResultsUserPreferences.xml
@@ -16,6 +16,19 @@
+
+
+
+
+
+
+
@@ -44,6 +57,19 @@
+
+
+
+
+
+
+
diff --git a/app/build.gradle b/app/build.gradle
index bc5cfaf..197b055 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -65,8 +65,6 @@ dependencies {
implementation "androidx.compose.ui:ui:$compose_version"
implementation "androidx.compose.ui:ui-tooling-preview:$compose_version"
implementation 'androidx.compose.material:material:1.2.0'
- implementation 'androidx.test.ext:junit-ktx:1.1.5'
- implementation 'androidx.navigation:navigation-testing:2.5.3'
debugImplementation "androidx.compose.ui:ui-test-manifest:$compose_version"
@@ -98,17 +96,13 @@ dependencies {
// JUnit
testImplementation 'junit:junit:4.13.2'
- androidTestImplementation 'androidx.test.ext:junit:1.1.3'
- androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
- androidTestImplementation "androidx.compose.ui:ui-test-junit4:$compose_version"
+ androidTestImplementation 'androidx.test.ext:junit:1.1.5'
// Coroutine testing
testImplementation 'org.jetbrains.kotlinx:kotlinx-coroutines-test:1.6.4'
// Mocking
testImplementation 'org.mockito.kotlin:mockito-kotlin:3.2.0'
- androidTestImplementation 'com.linkedin.dexmaker:dexmaker-mockito-inline:2.28.1'
- androidTestImplementation "org.mockito.kotlin:mockito-kotlin:3.2.0"
// Networking
implementation 'com.squareup.retrofit2:retrofit:2.9.0'
@@ -117,6 +111,8 @@ dependencies {
testImplementation 'androidx.arch.core:core-testing:2.1.0'
// GUI testing
+ androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1'
+ androidTestImplementation "androidx.compose.ui:ui-test-junit4:$compose_version"
debugImplementation "androidx.compose.ui:ui-tooling:$compose_version"
//Firebase
@@ -154,4 +150,4 @@ protobuf {
}
}
}
-}
+}
\ No newline at end of file
diff --git a/app/src/androidTest/java/be/ugent/sel/studeez/HomeScreenTest.kt b/app/src/androidTest/java/be/ugent/sel/studeez/HomeScreenTest.kt
new file mode 100644
index 0000000..fa60dee
--- /dev/null
+++ b/app/src/androidTest/java/be/ugent/sel/studeez/HomeScreenTest.kt
@@ -0,0 +1,42 @@
+package be.ugent.sel.studeez
+
+import androidx.compose.ui.test.junit4.createComposeRule
+import androidx.compose.ui.test.onNodeWithText
+import androidx.compose.ui.test.performClick
+import be.ugent.sel.studeez.common.composable.drawer.DrawerActions
+import be.ugent.sel.studeez.common.composable.feed.FeedUiState
+import be.ugent.sel.studeez.common.composable.navbar.NavigationBarActions
+import be.ugent.sel.studeez.data.local.models.FeedEntry
+import be.ugent.sel.studeez.screens.home.HomeScreen
+import org.junit.Rule
+import org.junit.Test
+
+class HomeScreenTest {
+ @get:Rule
+ val composeTestRule = createComposeRule()
+
+ @Test
+ fun sessionRecapTestt() {
+ var saveCalled = false
+
+ composeTestRule.setContent {
+ HomeScreen(
+ open = {},
+ drawerActions = DrawerActions({}, {}, {}, {}, {}),
+ navigationBarActions = NavigationBarActions({false}, {}, {}, {}, {}, {}, {}, {}),
+ feedUiState = FeedUiState.Succes(mapOf()),
+ continueTask = {_, _ -> },
+ onEmptyFeedHelp = {}
+ )
+ }
+
+ composeTestRule
+ .onNodeWithText(
+ "continue",
+ substring = true,
+ ignoreCase = true
+ )
+ .assertExists()
+ .performClick()
+ }
+}
\ No newline at end of file
diff --git a/app/src/androidTest/java/be/ugent/sel/studeez/ExampleInstrumentedTest.kt b/app/src/androidTest/java/be/ugent/sel/studeez/InstrumentedTest.kt
similarity index 95%
rename from app/src/androidTest/java/be/ugent/sel/studeez/ExampleInstrumentedTest.kt
rename to app/src/androidTest/java/be/ugent/sel/studeez/InstrumentedTest.kt
index 06f9435..d6a1522 100644
--- a/app/src/androidTest/java/be/ugent/sel/studeez/ExampleInstrumentedTest.kt
+++ b/app/src/androidTest/java/be/ugent/sel/studeez/InstrumentedTest.kt
@@ -14,7 +14,7 @@ import org.junit.Assert.*
* See [testing documentation](http://d.android.com/tools/testing).
*/
@RunWith(AndroidJUnit4::class)
-class ExampleInstrumentedTest {
+class InstrumentedTest {
@Test
fun useAppContext() {
// Context of the app under test.
diff --git a/app/src/androidTest/java/be/ugent/sel/studeez/SessionScreenTest.kt b/app/src/androidTest/java/be/ugent/sel/studeez/SessionScreenTest.kt
index 65fb5eb..995f0a2 100644
--- a/app/src/androidTest/java/be/ugent/sel/studeez/SessionScreenTest.kt
+++ b/app/src/androidTest/java/be/ugent/sel/studeez/SessionScreenTest.kt
@@ -18,7 +18,7 @@ class SessionScreenTest {
val composeTestRule = createComposeRule()
@Test
- fun SessionRecapTest() {
+ fun sessionRecapTest() {
var saveCalled = false
var discardCalled = false
@@ -67,4 +67,6 @@ class SessionScreenTest {
Assert.assertTrue(saveCalled)
Assert.assertTrue(discardCalled)
}
+
+
}
diff --git a/build.gradle b/build.gradle
index 7f70dd1..4535dd7 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,5 +1,6 @@
buildscript {
ext {
+ compose_ui_version = '1.2.0'
compose_version = '1.1.1'
coreTestingVersion = '2.1.0'
espressoVersion = '3.4.0'
@@ -8,16 +9,15 @@ buildscript {
dependencies {
classpath 'com.google.gms:google-services:4.3.15'
- classpath 'com.android.tools.build:gradle:8.0.0'
+ classpath 'com.android.tools.build:gradle:7.2.0'
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.4'
}
}// Top-level build file where you can add configuration options common to all sub-projects/modules.
plugins {
- id 'com.android.application' version '8.0.0' apply false
- id 'com.android.library' version '8.0.0' apply false
+ id 'com.android.application' version '7.4.2' apply false
+ id 'com.android.library' version '7.4.2' apply false
id 'org.jetbrains.kotlin.android' version '1.7.0' apply false
// Hilt
id 'com.google.dagger.hilt.android' version '2.44' apply false
}
-