This commit is contained in:
Benoit Marty
2024-11-21 21:51:19 +01:00
parent 4525f97be6
commit e6474bffb7
2 changed files with 25 additions and 5 deletions

View File

@@ -11,6 +11,7 @@ import android.content.Context
import android.os.Build
import androidx.core.app.NotificationCompat
import com.google.common.truth.Truth.assertThat
import io.element.android.appconfig.NotificationConfig
import io.element.android.libraries.matrix.api.media.MediaSource
import io.element.android.libraries.matrix.test.A_ROOM_ID
import io.element.android.libraries.matrix.test.A_TIMESTAMP
@@ -18,6 +19,8 @@ import io.element.android.libraries.matrix.ui.components.aMatrixUser
import io.element.android.libraries.matrix.ui.media.AVATAR_THUMBNAIL_SIZE_IN_PIXEL
import io.element.android.libraries.matrix.ui.media.MediaRequestData
import io.element.android.libraries.push.impl.notifications.factories.createNotificationCreator
import io.element.android.libraries.push.impl.notifications.factories.markAsReadActionTitle
import io.element.android.libraries.push.impl.notifications.factories.quickReplyActionTitle
import io.element.android.libraries.push.impl.notifications.fixtures.aNotifiableMessageEvent
import io.element.android.libraries.push.test.notifications.FakeImageLoader
import io.element.android.services.toolbox.api.sdk.BuildVersionSdkIntProvider
@@ -156,6 +159,13 @@ class DefaultRoomGroupMessageCreatorTest {
)
assertThat(result.number).isEqualTo(2)
assertThat(result.`when`).isEqualTo(A_TIMESTAMP + 10)
val actionTitles = result.actions?.map { it.title }
assertThat(actionTitles).isEqualTo(
listOfNotNull(
markAsReadActionTitle.takeIf { NotificationConfig.SUPPORT_MARK_AS_READ_ACTION },
quickReplyActionTitle.takeIf { NotificationConfig.SUPPORT_QUICK_REPLY_ACTION },
)
)
assertThat(fakeImageLoader.getCoilRequests().size).isEqualTo(0)
}
@@ -175,7 +185,12 @@ class DefaultRoomGroupMessageCreatorTest {
imageLoader = fakeImageLoader.getImageLoader(),
existingNotification = null,
)
assertThat(result.actions).isNull()
val actionTitles = result.actions?.map { it.title }
assertThat(actionTitles).isEqualTo(
listOfNotNull(
markAsReadActionTitle.takeIf { NotificationConfig.SUPPORT_MARK_AS_READ_ACTION }
)
)
assertThat(fakeImageLoader.getCoilRequests().size).isEqualTo(0)
}

View File

@@ -271,6 +271,11 @@ class DefaultNotificationCreatorTest {
}
}
const val markAsReadActionTitle = "MarkAsReadAction"
const val quickReplyActionTitle = "QuickReplyAction"
const val acceptInvitationActionTitle = "AcceptInvitationAction"
const val rejectInvitationActionTitle = "RejectInvitationAction"
fun createNotificationCreator(
context: Context = RuntimeEnvironment.getApplication(),
buildMeta: BuildMeta = aBuildMeta(),
@@ -291,26 +296,26 @@ fun createNotificationCreator(
markAsReadActionFactory = MarkAsReadActionFactory(
context = context,
actionIds = NotificationActionIds(buildMeta),
stringProvider = FakeStringProvider("MarkAsReadActionFactory"),
stringProvider = FakeStringProvider(markAsReadActionTitle),
clock = FakeSystemClock(),
),
quickReplyActionFactory = QuickReplyActionFactory(
context = context,
actionIds = NotificationActionIds(buildMeta),
stringProvider = FakeStringProvider("QuickReplyActionFactory"),
stringProvider = FakeStringProvider(quickReplyActionTitle),
clock = FakeSystemClock(),
),
bitmapLoader = bitmapLoader,
acceptInvitationActionFactory = AcceptInvitationActionFactory(
context = context,
actionIds = NotificationActionIds(buildMeta),
stringProvider = FakeStringProvider("AcceptInvitationActionFactory"),
stringProvider = FakeStringProvider(acceptInvitationActionTitle),
clock = FakeSystemClock(),
),
rejectInvitationActionFactory = RejectInvitationActionFactory(
context = context,
actionIds = NotificationActionIds(buildMeta),
stringProvider = FakeStringProvider("RejectInvitationActionFactory"),
stringProvider = FakeStringProvider(rejectInvitationActionTitle),
clock = FakeSystemClock(),
),
)