Browse Source

Merge pull request #4100 from nextcloud/restore-broken-tests

Revert "fix: deactivate broken test and remove test platform config"
Marcel Hibbe 6 months ago
parent
commit
092499ce92

+ 6 - 6
app/build.gradle

@@ -93,11 +93,11 @@ android {
         buildConfigField "String", "PERMISSION_LOCAL_BROADCAST", "\"${localBroadcastPermission}\""
     }
 
-    // testOptions {
-    //     unitTests.all {
-    //         useJUnitPlatform()
-    //     }
-    // }
+    testOptions {
+        unitTests.all {
+            useJUnitPlatform()
+        }
+    }
 
     buildTypes {
         release {
@@ -359,12 +359,12 @@ dependencies {
     kapt "com.google.dagger:hilt-android-compiler:$hilt_version"
 
     implementation("androidx.lifecycle:lifecycle-viewmodel-compose:2.8.5")
-    testImplementation("junit:junit:4.13.2")
     androidTestImplementation(platform("androidx.compose:compose-bom:2024.09.00"))
     androidTestImplementation("androidx.compose.ui:ui-test-junit4")
     testImplementation "org.mockito.kotlin:mockito-kotlin:$mockitoKotlinVersion"
     testImplementation "org.jetbrains.kotlinx:kotlinx-coroutines-test:$coroutines_version"
 
+    testImplementation 'org.junit.vintage:junit-vintage-engine:5.10.0'
 }
 
 tasks.register('installGitHooks', Copy) {

+ 69 - 19
app/src/test/java/com/nextcloud/talk/utils/ParticipantPermissionsTest.kt

@@ -7,8 +7,12 @@
  */
 package com.nextcloud.talk.utils
 
+import com.nextcloud.talk.data.user.model.User
+import com.nextcloud.talk.models.domain.ConversationModel
 import com.nextcloud.talk.models.json.capabilities.SpreedCapability
 import com.nextcloud.talk.models.json.conversations.Conversation
+import com.nextcloud.talk.models.json.conversations.ConversationEnums
+import com.nextcloud.talk.models.json.participants.Participant
 import junit.framework.TestCase
 import org.junit.Test
 
@@ -17,28 +21,74 @@ class ParticipantPermissionsTest : TestCase() {
     @Test
     fun test_areFlagsSet() {
         val spreedCapability = SpreedCapability()
-        val conversation = Conversation(null, null)
+        val conversation = Conversation(
+            token = "test",
+            name = "test",
+            displayName = "test",
+            description = "test",
+            type = ConversationEnums.ConversationType.DUMMY,
+            lastPing = 1,
+            participantType = Participant.ParticipantType.DUMMY,
+            hasPassword = true,
+            sessionId = "test",
+            actorId = "test",
+            actorType = "test",
+            password = "test",
+            favorite = false,
+            lastActivity = 1,
+            unreadMessages = 1,
+            unreadMention = false,
+            lastMessage = null,
+            objectType = ConversationEnums.ObjectType.DEFAULT,
+            notificationLevel = ConversationEnums.NotificationLevel.ALWAYS,
+            conversationReadOnlyState = ConversationEnums.ConversationReadOnlyState.CONVERSATION_READ_WRITE,
+            lobbyState = ConversationEnums.LobbyState.LOBBY_STATE_ALL_PARTICIPANTS,
+            lobbyTimer = 1,
+            lastReadMessage = 1,
+            lastCommonReadMessage = 1,
+            hasCall = true,
+            callFlag = 1,
+            canStartCall = false,
+            canLeaveConversation = true,
+            canDeleteConversation = true,
+            unreadMentionDirect = true,
+            notificationCalls = 1,
+            permissions = 1,
+            messageExpiration = 1,
+            status = "test",
+            statusIcon = "test",
+            statusMessage = "test",
+            statusClearAt = 1,
+            callRecording = 1,
+            avatarVersion = "test",
+            hasCustomAvatar = true,
+            callStartTime = 1,
+            recordingConsentRequired = 1,
+            remoteServer = "",
+            remoteToken = ""
+        )
+
         conversation.permissions = ParticipantPermissions.PUBLISH_SCREEN or
             ParticipantPermissions.JOIN_CALL or
             ParticipantPermissions.DEFAULT
 
-        /**
-         * val attendeePermissions =
-         *             ParticipantPermissions(
-         *                 spreedCapability,
-         *                 conversation
-         *             )
-         *
-         *         assert(attendeePermissions.canPublishScreen)
-         *         assert(attendeePermissions.canJoinCall)
-         *         assert(attendeePermissions.isDefault)
-         *
-         *         assertFalse(attendeePermissions.isCustom)
-         *         assertFalse(attendeePermissions.canStartCall())
-         *         assertFalse(attendeePermissions.canIgnoreLobby())
-         *         assertTrue(attendeePermissions.canPublishAudio())
-         *         assertTrue(attendeePermissions.canPublishVideo())
-         */
-        assertTrue(true)
+        val user = User()
+        user.id = 1
+
+        val attendeePermissions =
+            ParticipantPermissions(
+                spreedCapability,
+                ConversationModel.mapToConversationModel(conversation, user)
+            )
+
+        assert(attendeePermissions.canPublishScreen)
+        assert(attendeePermissions.canJoinCall)
+        assert(attendeePermissions.isDefault)
+
+        assertFalse(attendeePermissions.isCustom)
+        assertFalse(attendeePermissions.canStartCall())
+        assertFalse(attendeePermissions.canIgnoreLobby())
+        assertTrue(attendeePermissions.canPublishAudio())
+        assertTrue(attendeePermissions.canPublishVideo())
     }
 }

+ 154 - 0
gradle/verification-keyring.keys

@@ -387,6 +387,60 @@ HdZk2xusuOEx27cIovRPHwvLcgY+4u3j
 =oNWb
 -----END PGP PUBLIC KEY BLOCK-----
 
+pub    928B20E9AD5298CC
+sub    0AA3E5C3D232E79B
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: BCPG v@RELEASE_NAME@
+
+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
+=Y1uz
+-----END PGP PUBLIC KEY BLOCK-----
+
 pub    928FBF39003C0425
 uid    Spring Builds (JAR Signing) <spring-builds@vmware.com>
 
@@ -1272,6 +1326,48 @@ IprKXtD8103BdNqrPJev2azwqWwxFpN83tEPbK4SwWPgk1nSELXZZ5ClcDgqatg+
 =uOQ4
 -----END PGP PUBLIC KEY BLOCK-----
 
+pub    B943F5CB616566CD
+sub    D73B23600E60600B
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: BCPG v@RELEASE_NAME@
+
+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
+=bif8
+-----END PGP PUBLIC KEY BLOCK-----
+
 pub    BCF4173966770193
 sub    C9F04E6E2DC4F7F8
 -----BEGIN PGP PUBLIC KEY BLOCK-----
@@ -1844,6 +1940,51 @@ ikmfPIGVw73RF3HXjJ8GVqTkqbo4ZpgTw/7Z3+fAYE/vxquhnpl2HvE=
 =5tlI
 -----END PGP PUBLIC KEY BLOCK-----
 
+pub    D4DA5EAB3CD7E958
+uid    Jiaxiang Chen <jiaxiang@google.com>
+
+sub    D826E3935EE9DC71
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: BCPG v@RELEASE_NAME@
+
+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
+=Jp6+
+-----END PGP PUBLIC KEY BLOCK-----
+
 pub    D9B2BC72A3754BEA
 uid    Lukasz Piliszczuk <lukasz.pili@gmail.com>
 
@@ -3733,6 +3874,19 @@ VZTvAGH69TDqVvdmLsKhtQidSFbes+7ku5tM61P6ggfv5FJQgQk7WEQ=
 =k4Pb
 -----END PGP PUBLIC KEY BLOCK-----
 
+pub    23778689FBFBE047
+sub    40D34E692FCBA56E
+-----BEGIN PGP PUBLIC KEY BLOCK-----
+Version: BCPG v@RELEASE_NAME@
+
+mDMEZXgxpxYJKwYBBAHaRw8BAQdAbIycVyFgMJnhB7aqYPz+dU9MIlsok/qclCuI
+IsilKgS4OARleDGnEgorBgEEAZdVAQUBAQdA3w+8KkqAyic6PWfjlTbhe1upf6Rr
+Qt0Dqns3NoQYoU0DAQgHiHgEGBYKACAWIQSxcTbQYVNVgQHbffcjd4aJ+/vgRwUC
+ZXgxpwIbDAAKCRAjd4aJ+/vgR/CkAQD79gNi5NkEtK8jqYIYc4HJyHx8LuNov7Wh
+A5u9ZhIgTwEAhjiQCoCjYE/F9u0Y8fQrlalxahFEfM+qf31PB6fF7Qw=
+=60bi
+-----END PGP PUBLIC KEY BLOCK-----
+
 pub    280D66A55F5316C5
 -----BEGIN PGP PUBLIC KEY BLOCK-----
 Version: BCPG v@RELEASE_NAME@

+ 1 - 0
gradle/verification-metadata.xml

@@ -36,6 +36,7 @@
          <trusted-key id="0CC641C3A62453AB390066C4A41F13C999945293" group="commons-logging" name="commons-logging" version="1.2"/>
          <trusted-key id="0D35D3F60078655126908E8AF3D1600878E85A3D" group="io.netty"/>
          <trusted-key id="0D5989CD63724BA1CA7D92D7C488A74FCAE540C6" group="org.michaelevans.colorart" name="library" version="0.0.3"/>
+         <trusted-key id="0D5D634755737A19ABBE2930D4DA5EAB3CD7E958" group="com.google.devtools.ksp" name="symbol-processing-api" version="1.7.0-1.0.6"/>
          <trusted-key id="0F07D1201BDDAB67CFB84EB479752DB6C966F0B8" group="com.google.android" name="annotations" version="4.1.1.4"/>
          <trusted-key id="10F3C7A02ECA55E502BADCF3991EFB94DB91127D" group="org.ow2" name="ow2" version="1.5.1"/>
          <trusted-key id="120D6F34E627ED3A772EBBFE55C7E5E701832382" group="org.snakeyaml" name="snakeyaml-engine" version="2.6"/>