Skip to content

Commit 697efba

Browse files
authored
Replace Islamic calendar with Hebrew calendar in LocalesTest (#391)
The Islamic calendar is apparently not preinstalled on Android OS 26+ based on local testing, making LocalesTest fail on these devices. The Hebrew calendar does seem to be preinstalled on all OS levels, making it a better choice for this test.
1 parent b323ce3 commit 697efba

File tree

1 file changed

+14
-7
lines changed

1 file changed

+14
-7
lines changed

tests/src/main/kotlin/app/cash/paraphrase/tests/LocalesTest.kt

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ import android.icu.util.ULocale
1919
import androidx.test.platform.app.InstrumentationRegistry
2020
import app.cash.paraphrase.FormattedResource
2121
import app.cash.paraphrase.getString
22-
import app.cash.paraphrase.tests.LocalesTest.TestLocale.en_SA
22+
import app.cash.paraphrase.tests.LocalesTest.TestLocale.en_IL_ca_hebrew
2323
import app.cash.paraphrase.tests.LocalesTest.TestLocale.en_US
2424
import com.google.common.truth.Truth.assertThat
2525
import com.google.testing.junit.testparameterinjector.TestParameter
@@ -56,7 +56,7 @@ class LocalesTest(
5656
@Test fun defaultLocale() {
5757
val expected = when (testLocale) {
5858
en_US -> "Mar 24, 2022"
59-
en_SA -> "Sha. 21, 1443 AH"
59+
en_IL_ca_hebrew -> "21 Adar II 5782"
6060
}
6161
assertThat(context.getString(resource)).isEqualTo("A $expected B")
6262
}
@@ -69,16 +69,23 @@ class LocalesTest(
6969
assertThat(context.getString(resource, ULocale.GERMANY)).isEqualTo("A 24.03.2022 B")
7070
}
7171

72-
@Test fun saudiArabiaLocale() {
73-
assertThat(context.getString(resource, Locale.forLanguageTag("en-SA")))
74-
.isEqualTo("A Sha. 21, 1443 AH B")
72+
@Test fun hebrewCalendarLocale() {
73+
assertThat(context.getString(resource, hebrewCalendarLocale))
74+
.isEqualTo("A 21 Adar II 5782 B")
7575
}
7676

7777
@Suppress("EnumEntryName", "unused")
7878
enum class TestLocale(
7979
val value: Locale,
8080
) {
81-
en_US(Locale("en", "US")),
82-
en_SA(Locale("en", "SA")),
81+
en_US(value = Locale("en", "US")),
82+
en_IL_ca_hebrew(value = hebrewCalendarLocale),
83+
}
84+
85+
private companion object {
86+
val hebrewCalendarLocale: Locale = Locale.Builder()
87+
.setLocale(Locale("en", "IL"))
88+
.setExtension('u', "ca-hebrew")
89+
.build()
8390
}
8491
}

0 commit comments

Comments
 (0)