Introduce value class RoomAlias

This commit is contained in:
Benoit Marty 2024-04-16 10:39:45 +02:00 committed by Benoit Marty
parent 2a467bd49b
commit bd12ff737b
8 changed files with 50 additions and 12 deletions

View file

@ -39,6 +39,7 @@ import io.element.android.libraries.designsystem.theme.currentUserMentionPillBac
import io.element.android.libraries.designsystem.theme.currentUserMentionPillText
import io.element.android.libraries.designsystem.theme.mentionPillBackground
import io.element.android.libraries.designsystem.theme.mentionPillText
import io.element.android.libraries.matrix.api.core.RoomAlias
import io.element.android.libraries.matrix.api.core.SessionId
import io.element.android.libraries.matrix.api.core.UserId
import io.element.android.libraries.matrix.api.permalink.PermalinkData
@ -140,7 +141,7 @@ internal fun MentionSpanPreview() {
"https://matrix.to/#/@me:matrix.org" -> PermalinkData.UserLink(UserId("@me:matrix.org"))
"https://matrix.to/#/@other:matrix.org" -> PermalinkData.UserLink(UserId("@other:matrix.org"))
"https://matrix.to/#/#room:matrix.org" -> PermalinkData.RoomAliasLink(
roomAlias = "#room:matrix.org",
roomAlias = RoomAlias("#room:matrix.org"),
viaParameters = persistentListOf(),
)
else -> TODO()

View file

@ -18,6 +18,7 @@ package io.element.android.libraries.textcomposer.impl.mentions
import android.graphics.Color
import com.google.common.truth.Truth.assertThat
import io.element.android.libraries.matrix.api.core.RoomAlias
import io.element.android.libraries.matrix.api.core.UserId
import io.element.android.libraries.matrix.api.permalink.PermalinkData
import io.element.android.libraries.matrix.test.A_SESSION_ID
@ -69,7 +70,7 @@ class MentionSpanProviderTest {
fun `getting mention span for a room should return a MentionSpan with normal colors`() {
permalinkParser.givenResult(
PermalinkData.RoomAliasLink(
roomAlias = "#room:matrix.org",
roomAlias = RoomAlias("#room:matrix.org"),
viaParameters = persistentListOf(),
)
)
@ -82,7 +83,7 @@ class MentionSpanProviderTest {
fun `getting mention span for @room should return a MentionSpan with normal colors`() {
permalinkParser.givenResult(
PermalinkData.RoomAliasLink(
roomAlias = "#",
roomAlias = RoomAlias("#"),
viaParameters = persistentListOf(),
)
)