Updated on 2026-08-14

This commit is contained in:
Tangem 2026-07-16 09:36:16 +02:00
parent 3e82313e52
commit 8794515c69
5 changed files with 22 additions and 28 deletions

View file

@ -1,12 +1,14 @@
package com.tangem.domain.promo.models
enum class PromoCampaignId(val deeplinkId: Int, val slug: String) {
WhaleSwapCashback(deeplinkId = 1, slug = "whale-swap-cashback"),
ReactivationCashback(deeplinkId = 2, slug = "reactivation-cashback"),
private const val CAMPAIGN_ID_WHALE = "whale-swap-cashback"
private const val CAMPAIGN_ID_REACTIVATION = "reactivation-cashback"
enum class PromoCampaignId(val slug: String) {
WhaleSwapCashback(slug = CAMPAIGN_ID_WHALE),
ReactivationCashback(slug = CAMPAIGN_ID_REACTIVATION),
;
companion object {
fun fromDeeplinkId(id: Int): PromoCampaignId? = entries.firstOrNull { it.deeplinkId == id }
fun fromSlug(slug: String): PromoCampaignId? = entries.firstOrNull { it.slug == slug }
}
}

View file

@ -5,17 +5,6 @@ import org.junit.jupiter.api.Test
internal class PromoCampaignIdTest {
@Test
fun `GIVEN known deeplink id WHEN fromDeeplinkId THEN returns campaign`() {
assertThat(PromoCampaignId.fromDeeplinkId(1)).isEqualTo(PromoCampaignId.WhaleSwapCashback)
assertThat(PromoCampaignId.fromDeeplinkId(2)).isEqualTo(PromoCampaignId.ReactivationCashback)
}
@Test
fun `GIVEN unknown deeplink id WHEN fromDeeplinkId THEN returns null`() {
assertThat(PromoCampaignId.fromDeeplinkId(99)).isNull()
}
@Test
fun `GIVEN known slug WHEN fromSlug THEN returns campaign`() {
assertThat(PromoCampaignId.fromSlug("whale-swap-cashback")).isEqualTo(PromoCampaignId.WhaleSwapCashback)