Skip to content
Snippets Groups Projects
Unverified Commit 3cc1ca61 authored by Matthias Urhahn's avatar Matthias Urhahn Committed by GitHub
Browse files

We don't show test result available notification for TAN based test registrations. (#2968)

parent 7eab8a64
No related branches found
No related tags found
No related merge requests found
...@@ -61,7 +61,9 @@ class PCRProcessor @Inject constructor( ...@@ -61,7 +61,9 @@ class PCRProcessor @Inject constructor(
analyticsKeySubmissionCollector.reportRegisteredWithTeleTAN() analyticsKeySubmissionCollector.reportRegisteredWithTeleTAN()
return createCoronaTest(request, registrationData) return createCoronaTest(request, registrationData).copy(
isResultAvailableNotificationSent = true
)
} }
private suspend fun createCoronaTest( private suspend fun createCoronaTest(
......
package de.rki.coronawarnapp.coronatest.type.pcr package de.rki.coronawarnapp.coronatest.type.pcr
import de.rki.coronawarnapp.coronatest.qrcode.CoronaTestQRCode
import de.rki.coronawarnapp.coronatest.server.CoronaTestResult import de.rki.coronawarnapp.coronatest.server.CoronaTestResult
import de.rki.coronawarnapp.coronatest.tan.CoronaTestTAN
import de.rki.coronawarnapp.coronatest.type.CoronaTestService import de.rki.coronawarnapp.coronatest.type.CoronaTestService
import de.rki.coronawarnapp.datadonation.analytics.modules.keysubmission.AnalyticsKeySubmissionCollector import de.rki.coronawarnapp.datadonation.analytics.modules.keysubmission.AnalyticsKeySubmissionCollector
import de.rki.coronawarnapp.datadonation.analytics.modules.registeredtest.TestResultDataCollector import de.rki.coronawarnapp.datadonation.analytics.modules.registeredtest.TestResultDataCollector
...@@ -29,6 +31,15 @@ class PCRProcessorTest : BaseTest() { ...@@ -29,6 +31,15 @@ class PCRProcessorTest : BaseTest() {
private val nowUTC = Instant.parse("2021-03-15T05:45:00.000Z") private val nowUTC = Instant.parse("2021-03-15T05:45:00.000Z")
private var testQRRegistrationData = CoronaTestService.RegistrationData(
registrationToken = "qr-regtoken",
testResult = CoronaTestResult.PCR_POSITIVE,
)
private var testTANRegistrationData = CoronaTestService.RegistrationData(
registrationToken = "tan-regtoken",
testResult = CoronaTestResult.PCR_POSITIVE,
)
@BeforeEach @BeforeEach
fun setup() { fun setup() {
MockKAnnotations.init(this) MockKAnnotations.init(this)
...@@ -37,10 +48,22 @@ class PCRProcessorTest : BaseTest() { ...@@ -37,10 +48,22 @@ class PCRProcessorTest : BaseTest() {
submissionService.apply { submissionService.apply {
coEvery { asyncRequestTestResult(any()) } answers { CoronaTestResult.PCR_OR_RAT_PENDING } coEvery { asyncRequestTestResult(any()) } answers { CoronaTestResult.PCR_OR_RAT_PENDING }
coEvery { asyncRegisterDeviceViaTAN(any()) } answers { testTANRegistrationData }
coEvery { asyncRegisterDeviceViaGUID(any()) } answers { testQRRegistrationData }
} }
analyticsKeySubmissionCollector.apply {
coEvery { reportRegisteredWithTeleTAN() } just Runs
coEvery { reset() } just Runs
coEvery { reportPositiveTestResultReceived() } just Runs
coEvery { reportTestRegistered() } just Runs
}
testResultDataCollector.apply { testResultDataCollector.apply {
coEvery { updatePendingTestResultReceivedTime(any()) } just Runs coEvery { updatePendingTestResultReceivedTime(any()) } just Runs
coEvery { saveTestResultAnalyticsSettings(any()) } just Runs
}
deadmanNotificationScheduler.apply {
every { cancelScheduledWork() } just Runs
} }
} }
...@@ -72,4 +95,18 @@ class PCRProcessorTest : BaseTest() { ...@@ -72,4 +95,18 @@ class PCRProcessorTest : BaseTest() {
instance.pollServer(past60DaysTest).testResult shouldBe CoronaTestResult.PCR_REDEEMED instance.pollServer(past60DaysTest).testResult shouldBe CoronaTestResult.PCR_REDEEMED
} }
// TANs are automatically positive, there is no test result available screen that should be reached
@Test
fun `registering a TAN test automatically consumes the notification flag`() = runBlockingTest {
val instance = createInstance()
instance.create(CoronaTestTAN.PCR(tan = "thisIsATan")).apply {
isResultAvailableNotificationSent shouldBe true
}
instance.create(CoronaTestQRCode.PCR(qrCodeGUID = "thisIsAQRCodeGUID")).apply {
isResultAvailableNotificationSent shouldBe false
}
}
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment