diff --git a/app/build.gradle b/app/build.gradle index 4829807b7..4d2f67971 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -244,7 +244,9 @@ dependencies { implementation 'com.github.wooplr:Spotlight:1.3' implementation 'com.google.code.findbugs:jsr305:3.0.2' implementation 'com.github.nextcloud-deps:ChatKit:0.4.2' - + testImplementation 'junit:junit:4.13.2' + testImplementation 'org.mockito:mockito-core:5.5.0' + androidTestImplementation 'org.mockito:mockito-android:2.24.5' implementation 'joda-time:joda-time:2.12.5' implementation "io.coil-kt:coil:${coilKtVersion}" implementation "io.coil-kt:coil-gif:${coilKtVersion}" diff --git a/app/src/main/java/com/nextcloud/talk/utils/UserIdUtils.kt b/app/src/main/java/com/nextcloud/talk/utils/UserIdUtils.kt index a6a27894f..712db93f4 100644 --- a/app/src/main/java/com/nextcloud/talk/utils/UserIdUtils.kt +++ b/app/src/main/java/com/nextcloud/talk/utils/UserIdUtils.kt @@ -23,7 +23,7 @@ package com.nextcloud.talk.utils import com.nextcloud.talk.data.user.model.User object UserIdUtils { - private const val NO_ID: Long = -1 + const val NO_ID: Long = -1 fun getIdForUser(user: User?): Long { return if (user?.id != null) { diff --git a/app/src/test/java/com/nextcloud/talk/utils/UserIdUtilsTest.kt b/app/src/test/java/com/nextcloud/talk/utils/UserIdUtilsTest.kt new file mode 100644 index 000000000..0ac64f660 --- /dev/null +++ b/app/src/test/java/com/nextcloud/talk/utils/UserIdUtilsTest.kt @@ -0,0 +1,36 @@ +package com.nextcloud.talk.utils + +import com.nextcloud.talk.data.user.model.User +import org.junit.Assert +import org.junit.Before +import org.junit.Test +import org.mockito.Mock +import org.mockito.Mockito +import org.mockito.MockitoAnnotations + +class UserIdUtilsTest { + + @Mock + private lateinit var user: User + + @Before + fun setUp() { + MockitoAnnotations.openMocks(this) + } + + @Test + fun testGetIdForUser_if_userIsNull_returnsNoId() { + Mockito.`when`(user.id).thenReturn(null) + val result = UserIdUtils.getIdForUser(user) + Assert.assertEquals("The id is NO_ID when user is null", UserIdUtils.NO_ID, result) + } + + @Test + fun testGetIdForUser_if_userIdIsSet_returnsUserId() { + val expectedId: Long = 12345 + Mockito.`when`(user.id).thenReturn(expectedId) + val result = UserIdUtils.getIdForUser(user) + Assert.assertEquals("The id is correct user id is not null", expectedId, result) + } +} +