mirror of
https://github.com/Novaloop-AG/element-x-android.git
synced 2026-11-04 01:19:33 +00:00
Add libraries/emoji/test module with picker fakes
This commit is contained in:
@@ -107,5 +107,6 @@ dependencies {
|
|||||||
testImplementation(projects.features.poll.test)
|
testImplementation(projects.features.poll.test)
|
||||||
testImplementation(projects.libraries.eventformatter.test)
|
testImplementation(projects.libraries.eventformatter.test)
|
||||||
testImplementation(projects.libraries.emoji.impl)
|
testImplementation(projects.libraries.emoji.impl)
|
||||||
|
testImplementation(projects.libraries.emoji.test)
|
||||||
testImplementation(projects.libraries.slashcommands.test)
|
testImplementation(projects.libraries.slashcommands.test)
|
||||||
}
|
}
|
||||||
|
|||||||
+2
-3
@@ -11,9 +11,8 @@ package io.element.android.features.messages.impl.timeline.components.customreac
|
|||||||
import com.google.common.truth.Truth.assertThat
|
import com.google.common.truth.Truth.assertThat
|
||||||
import io.element.android.features.messages.impl.timeline.aTimelineItemEvent
|
import io.element.android.features.messages.impl.timeline.aTimelineItemEvent
|
||||||
import io.element.android.features.messages.impl.timeline.aTimelineItemReactions
|
import io.element.android.features.messages.impl.timeline.aTimelineItemReactions
|
||||||
import io.element.android.libraries.emoji.api.picker.EmojiPickerPresenter
|
|
||||||
import io.element.android.libraries.emoji.api.recentemojis.EmptyGetRecentEmojis
|
import io.element.android.libraries.emoji.api.recentemojis.EmptyGetRecentEmojis
|
||||||
import io.element.android.libraries.emoji.impl.picker.anEmojiPickerState
|
import io.element.android.libraries.emoji.test.fakeEmojiPickerPresenterFactory
|
||||||
import io.element.android.libraries.matrix.test.AN_EVENT_ID
|
import io.element.android.libraries.matrix.test.AN_EVENT_ID
|
||||||
import io.element.android.tests.testutils.WarmUpRule
|
import io.element.android.tests.testutils.WarmUpRule
|
||||||
import io.element.android.tests.testutils.test
|
import io.element.android.tests.testutils.test
|
||||||
@@ -26,7 +25,7 @@ class CustomReactionPresenterTest {
|
|||||||
val warmUpRule = WarmUpRule()
|
val warmUpRule = WarmUpRule()
|
||||||
|
|
||||||
private val presenter = CustomReactionPresenter(
|
private val presenter = CustomReactionPresenter(
|
||||||
emojiPickerPresenterFactory = EmojiPickerPresenter.Factory { EmojiPickerPresenter { anEmojiPickerState() } },
|
emojiPickerPresenterFactory = fakeEmojiPickerPresenterFactory(),
|
||||||
getRecentEmojis = EmptyGetRecentEmojis,
|
getRecentEmojis = EmptyGetRecentEmojis,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,19 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2026 Element Creations Ltd.
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial.
|
||||||
|
* Please see LICENSE files in the repository root for full details.
|
||||||
|
*/
|
||||||
|
|
||||||
|
plugins {
|
||||||
|
id("io.element.android-compose-library")
|
||||||
|
}
|
||||||
|
|
||||||
|
android {
|
||||||
|
namespace = "io.element.android.libraries.emoji.test"
|
||||||
|
}
|
||||||
|
|
||||||
|
dependencies {
|
||||||
|
api(projects.libraries.emoji.api)
|
||||||
|
implementation(projects.libraries.architecture)
|
||||||
|
}
|
||||||
+19
@@ -0,0 +1,19 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2026 Element Creations Ltd.
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial.
|
||||||
|
* Please see LICENSE files in the repository root for full details.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package io.element.android.libraries.emoji.test
|
||||||
|
|
||||||
|
import io.element.android.libraries.emoji.api.picker.EmojiPickerPresenter
|
||||||
|
import io.element.android.libraries.emoji.api.picker.EmojiPickerState
|
||||||
|
|
||||||
|
fun fakeEmojiPickerPresenter(
|
||||||
|
state: EmojiPickerState = FakeEmojiPickerState(),
|
||||||
|
): EmojiPickerPresenter = EmojiPickerPresenter { state }
|
||||||
|
|
||||||
|
fun fakeEmojiPickerPresenterFactory(
|
||||||
|
presenter: EmojiPickerPresenter = fakeEmojiPickerPresenter(),
|
||||||
|
): EmojiPickerPresenter.Factory = EmojiPickerPresenter.Factory { presenter }
|
||||||
+18
@@ -0,0 +1,18 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2026 Element Creations Ltd.
|
||||||
|
*
|
||||||
|
* SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial.
|
||||||
|
* Please see LICENSE files in the repository root for full details.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package io.element.android.libraries.emoji.test
|
||||||
|
|
||||||
|
import io.element.android.libraries.emoji.api.picker.EmojiPickerState
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Minimal [EmojiPickerState] for use in tests that don't render the picker (typically presenter
|
||||||
|
* tests).
|
||||||
|
*/
|
||||||
|
data class FakeEmojiPickerState(
|
||||||
|
override val isReady: Boolean = true,
|
||||||
|
) : EmojiPickerState
|
||||||
Reference in New Issue
Block a user