From a8a318ea4967a419385fcd3936803c09bac1b416 Mon Sep 17 00:00:00 2001 From: Matthias Urhahn <matthias.urhahn@sap.com> Date: Tue, 25 May 2021 15:49:22 +0200 Subject: [PATCH] Allow user locale to be passed manually for vacc certs to fix flaky test (DEV) (#3268) Co-authored-by: Mohamed Metwalli <mohamed.metwalli@sap.com> Co-authored-by: harambasicluka <64483219+harambasicluka@users.noreply.github.com> --- .../core/repository/storage/VaccinationContainer.kt | 10 +++++++--- .../repository/storage/VaccinationContainerTest.kt | 8 ++------ 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/vaccination/core/repository/storage/VaccinationContainer.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/vaccination/core/repository/storage/VaccinationContainer.kt index b76916194..e1f417461 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/vaccination/core/repository/storage/VaccinationContainer.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/vaccination/core/repository/storage/VaccinationContainer.kt @@ -51,7 +51,10 @@ data class VaccinationContainer internal constructor( val personIdentifier: VaccinatedPersonIdentifier get() = certificate.personIdentifier - fun toVaccinationCertificate(valueSet: VaccinationValueSet?) = object : VaccinationCertificate { + fun toVaccinationCertificate( + valueSet: VaccinationValueSet?, + userLocale: Locale = Locale.getDefault(), + ) = object : VaccinationCertificate { override val personIdentifier: VaccinatedPersonIdentifier get() = certificate.personIdentifier @@ -83,9 +86,10 @@ data class VaccinationContainer internal constructor( get() = vaccination.certificateIssuer override val certificateCountry: String get() = Locale( - Locale.getDefault().language, + userLocale.language, vaccination.countryOfVaccination.uppercase() - ).displayCountry + ).getDisplayCountry(userLocale) + override val certificateId: String get() = vaccination.uniqueCertificateIdentifier diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/vaccination/core/repository/storage/VaccinationContainerTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/vaccination/core/repository/storage/VaccinationContainerTest.kt index c362bebab..b13ce6a2e 100644 --- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/vaccination/core/repository/storage/VaccinationContainerTest.kt +++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/vaccination/core/repository/storage/VaccinationContainerTest.kt @@ -7,7 +7,6 @@ import de.rki.coronawarnapp.vaccination.core.server.valueset.VaccinationValueSet import io.kotest.matchers.shouldBe import io.mockk.every import io.mockk.mockk -import io.mockk.mockkObject import org.joda.time.Instant import org.joda.time.LocalDate import org.junit.jupiter.api.BeforeEach @@ -23,7 +22,6 @@ class VaccinationContainerTest : BaseTest() { @BeforeEach fun setup() { DaggerVaccinationTestComponent.factory().create().inject(this) - mockkObject(Locale.getDefault()) } @Test @@ -62,8 +60,7 @@ class VaccinationContainerTest : BaseTest() { @Test fun `mapping to user facing data - valueset is null`() { - every { Locale.getDefault().language } returns "de" - testData.personAVac1Container.toVaccinationCertificate(null).apply { + testData.personAVac1Container.toVaccinationCertificate(null, userLocale = Locale.GERMAN).apply { firstName shouldBe "Andreas" lastName shouldBe "Astrá Eins" dateOfBirth shouldBe LocalDate.parse("1966-11-11") @@ -110,9 +107,8 @@ class VaccinationContainerTest : BaseTest() { every { mp } returns vpMockk every { ma } returns vpMockk } - every { Locale.getDefault().language } returns "de" - testData.personAVac1Container.toVaccinationCertificate(valueSet).apply { + testData.personAVac1Container.toVaccinationCertificate(valueSet, userLocale = Locale.GERMAN).apply { firstName shouldBe "Andreas" lastName shouldBe "Astrá Eins" dateOfBirth shouldBe LocalDate.parse("1966-11-11") -- GitLab