From 0600e22fb4e4cb33d8f5c61868d7700eaebc97e7 Mon Sep 17 00:00:00 2001 From: Juraj Kusnier <jurajkusnier@users.noreply.github.com> Date: Fri, 8 Jan 2021 14:34:23 +0100 Subject: [PATCH] Fix Pending result when positive test result has been registered (EXPOSUREAPP-4309) #2044 * Cancel test result notification after submission finish (EXPOSUREAPP-4309) * remove trailing comma to fix circleci check * update tests Co-authored-by: Ralf Gehrer <ralfgehrer@users.noreply.github.com> --- .../notification/TestResultAvailableNotification.kt | 4 ++++ .../de/rki/coronawarnapp/submission/task/SubmissionTask.kt | 5 ++++- .../coronawarnapp/submission/task/SubmissionTaskTest.kt | 7 ++++++- 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/notification/TestResultAvailableNotification.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/notification/TestResultAvailableNotification.kt index 07214c4d7..80cdfa756 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/notification/TestResultAvailableNotification.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/notification/TestResultAvailableNotification.kt @@ -35,6 +35,10 @@ class TestResultAvailableNotification @Inject constructor( ) } + fun cancelTestResultNotification() { + notificationHelper.cancelCurrentNotification(NotificationConstants.TEST_RESULT_AVAILABLE_NOTIFICATION_ID) + } + /** * The pending result fragment will forward to the correct screen * Because we can't save the test result at the moment (legal), diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/submission/task/SubmissionTask.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/submission/task/SubmissionTask.kt index 7b0deee24..645d93170 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/submission/task/SubmissionTask.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/submission/task/SubmissionTask.kt @@ -3,6 +3,7 @@ package de.rki.coronawarnapp.submission.task import com.google.android.gms.nearby.exposurenotification.TemporaryExposureKey import de.rki.coronawarnapp.appconfig.AppConfigProvider import de.rki.coronawarnapp.exception.NoRegistrationTokenSetException +import de.rki.coronawarnapp.notification.TestResultAvailableNotification import de.rki.coronawarnapp.notification.TestResultNotificationService import de.rki.coronawarnapp.playbook.Playbook import de.rki.coronawarnapp.storage.LocalData @@ -33,7 +34,8 @@ class SubmissionTask @Inject constructor( private val submissionSettings: SubmissionSettings, private val autoSubmission: AutoSubmission, private val timeStamper: TimeStamper, - private val testResultNotificationService: TestResultNotificationService + private val testResultNotificationService: TestResultNotificationService, + private val testResultAvailableNotification: TestResultAvailableNotification ) : Task<DefaultProgress, SubmissionTask.Result> { private val internalProgress = ConflatedBroadcastChannel<DefaultProgress>() @@ -154,6 +156,7 @@ class SubmissionTask @Inject constructor( LocalData.numberOfSuccessfulSubmissions(1) testResultNotificationService.cancelPositiveTestResultNotification() + testResultAvailableNotification.cancelTestResultNotification() } data class Arguments( diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/task/SubmissionTaskTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/task/SubmissionTaskTest.kt index 4e9905c86..596fb9a24 100644 --- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/task/SubmissionTaskTest.kt +++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/submission/task/SubmissionTaskTest.kt @@ -4,6 +4,7 @@ import com.google.android.gms.nearby.exposurenotification.TemporaryExposureKey import de.rki.coronawarnapp.appconfig.AppConfigProvider import de.rki.coronawarnapp.appconfig.ConfigData import de.rki.coronawarnapp.exception.NoRegistrationTokenSetException +import de.rki.coronawarnapp.notification.TestResultAvailableNotification import de.rki.coronawarnapp.notification.TestResultNotificationService import de.rki.coronawarnapp.playbook.Playbook import de.rki.coronawarnapp.server.protocols.external.exposurenotification.TemporaryExposureKeyExportOuterClass @@ -48,6 +49,7 @@ class SubmissionTaskTest : BaseTest() { @MockK lateinit var tekHistoryStorage: TEKHistoryStorage @MockK lateinit var submissionSettings: SubmissionSettings @MockK lateinit var testResultNotificationService: TestResultNotificationService + @MockK lateinit var testResultAvailableNotification: TestResultAvailableNotification @MockK lateinit var autoSubmission: AutoSubmission @MockK lateinit var tekBatch: TEKHistoryStorage.TEKBatch @@ -99,6 +101,7 @@ class SubmissionTaskTest : BaseTest() { coEvery { playbook.submit(any()) } just Runs every { testResultNotificationService.cancelPositiveTestResultNotification() } just Runs + every { testResultAvailableNotification.cancelTestResultNotification() } just Runs every { autoSubmission.updateMode(any()) } just Runs @@ -113,7 +116,8 @@ class SubmissionTaskTest : BaseTest() { submissionSettings = submissionSettings, testResultNotificationService = testResultNotificationService, timeStamper = timeStamper, - autoSubmission = autoSubmission + autoSubmission = autoSubmission, + testResultAvailableNotification = testResultAvailableNotification ) @Test @@ -152,6 +156,7 @@ class SubmissionTaskTest : BaseTest() { LocalData.numberOfSuccessfulSubmissions(1) testResultNotificationService.cancelPositiveTestResultNotification() + testResultAvailableNotification.cancelTestResultNotification() } } -- GitLab