diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/coronatest/type/rapidantigen/RACoronaTest.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/coronatest/type/rapidantigen/RACoronaTest.kt index 126787cc04c00086d90af173e4303bc74ff6fcd2..fd54e5b7c04a6904963fd4cf582d540a44116f5f 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/coronatest/type/rapidantigen/RACoronaTest.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/coronatest/type/rapidantigen/RACoronaTest.kt @@ -71,10 +71,8 @@ data class RACoronaTest( override val type: CoronaTest.Type get() = CoronaTest.Type.RAPID_ANTIGEN - private fun isOutdated(nowUTC: Instant, testConfig: CoronaTestConfig): Boolean { - val timeoutTime = sampleCollectedAt ?: testedAt - return timeoutTime.plus(testConfig.coronaRapidAntigenTestParameters.hoursToDeemTestOutdated).isBefore(nowUTC) - } + private fun isOutdated(nowUTC: Instant, testConfig: CoronaTestConfig): Boolean = + testTakenAt.plus(testConfig.coronaRapidAntigenTestParameters.hoursToDeemTestOutdated).isBefore(nowUTC) fun getState(nowUTC: Instant, testConfig: CoronaTestConfig) = if (testResult == RAT_NEGATIVE && isOutdated(nowUTC, testConfig)) { @@ -91,6 +89,9 @@ data class RACoronaTest( } } + val testTakenAt: Instant + get() = sampleCollectedAt ?: testedAt + override val isFinal: Boolean get() = testResult == RAT_REDEEMED diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/coronatest/type/rapidantigen/RapidAntigenCoronaTestExtensions.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/coronatest/type/rapidantigen/RapidAntigenCoronaTestExtensions.kt index 2b25be3b5417dd86fbc81fd315aa7325ea7af0ce..82089caae360a03f067421f36843c3ec73d20e08 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/coronatest/type/rapidantigen/RapidAntigenCoronaTestExtensions.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/coronatest/type/rapidantigen/RapidAntigenCoronaTestExtensions.kt @@ -28,10 +28,10 @@ fun RACoronaTest?.toSubmissionState(nowUTC: Instant = Instant.now(), coronaTestC else -> when (getState(nowUTC, coronaTestConfig)) { INVALID -> TestError POSITIVE -> { - if (isViewed) TestPositive(testRegisteredAt = testedAt) + if (isViewed) TestPositive(testRegisteredAt = testTakenAt) else TestResultReady } - NEGATIVE -> TestNegative(testRegisteredAt = testedAt) + NEGATIVE -> TestNegative(testRegisteredAt = testTakenAt) REDEEMED -> TestInvalid PENDING -> TestPending OUTDATED -> TestOutdated diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/submission/ui/testresults/negative/RATResultNegativeFragment.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/submission/ui/testresults/negative/RATResultNegativeFragment.kt index 0906f2e79ae246945d2b865aaffbd9d125f4490b..19fee1b59c96c6f04302935c9864eb6dd9d422c0 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/submission/ui/testresults/negative/RATResultNegativeFragment.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/submission/ui/testresults/negative/RATResultNegativeFragment.kt @@ -65,7 +65,7 @@ class RATResultNegativeFragment : Fragment(R.layout.fragment_submission_antigen_ } } - val localTime = testAge.test.testedAt.toUserTimeZone() + val localTime = testAge.test.testTakenAt.toUserTimeZone() resultReceivedTimeAndDate.text = getString( R.string.coronatest_negative_antigen_result_time_date_placeholder, localTime?.toString(DATE_FORMAT), diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/submission/ui/testresults/negative/RATResultNegativeViewModel.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/submission/ui/testresults/negative/RATResultNegativeViewModel.kt index 607dde7401e656e7c3d8d05c122aecfd7d3cb883..9e80a0bff0f2a202f0379e6c5be40327eded24a6 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/submission/ui/testresults/negative/RATResultNegativeViewModel.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/submission/ui/testresults/negative/RATResultNegativeViewModel.kt @@ -47,7 +47,7 @@ class RATResultNegativeViewModel @AssistedInject constructor( } val nowUTC = timeStamper.nowUTC - val age = nowUTC.millis - testedAt.millis + val age = nowUTC.millis - testTakenAt.millis val ageText = formatter.print(Duration(age).toPeriod()) return TestAge(test = this, ageText) diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/view/TestResultSectionView.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/view/TestResultSectionView.kt index 2dd7bb977224e27df6c25d50ba67eb73d1317373..86a23f07d5c02a9d6f6d61907ce707655740ff90 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/view/TestResultSectionView.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/ui/view/TestResultSectionView.kt @@ -81,7 +81,7 @@ constructor( return if (coronaTest is RACoronaTest) { context.getString( R.string.ag_homescreen_card_rapid_body_result_date, - coronaTest.testedAt.toDate()?.toUIFormat(context) + coronaTest.testTakenAt.toDate()?.toUIFormat(context) ) } else { context.getString(