From 4580c7acd30149afdb06ff0c9bc3df8755cf2eaf Mon Sep 17 00:00:00 2001 From: Philipp Woessner <64482866+pwoessner@users.noreply.github.com> Date: Fri, 5 Jun 2020 13:08:05 +0200 Subject: [PATCH] changed timevariables constants to new values and deleted unused DateAndTime helper functions (#180) --- .../java/de/rki/coronawarnapp/risk/TimeVariables.kt | 7 ++++--- .../coronawarnapp/transaction/RiskLevelTransaction.kt | 3 +-- .../rki/coronawarnapp/util/TimeAndDateExtensions.kt | 11 ----------- .../transaction/RiskLevelTransactionTest.kt | 5 +++-- 4 files changed, 8 insertions(+), 18 deletions(-) diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/risk/TimeVariables.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/risk/TimeVariables.kt index 2e90edd67..5a6537cc9 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/risk/TimeVariables.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/risk/TimeVariables.kt @@ -76,14 +76,14 @@ object TimeVariables { /** * The timeRange until the calculated exposure figures are rated as stale. - * In days. + * In hours. */ - private const val MAX_STALE_EXPOSURE_RISK_RANGE = 1 + private const val MAX_STALE_EXPOSURE_RISK_RANGE = 48 /** * Getter function for [MAX_STALE_EXPOSURE_RISK_RANGE] * - * @return stale threshold in days + * @return stale threshold in hours */ fun getMaxStaleExposureRiskRange(): Int = MAX_STALE_EXPOSURE_RISK_RANGE @@ -106,6 +106,7 @@ object TimeVariables { * Internal requirements: 2 hours = 7200000 milliseconds * Test value: 1 minute */ + // todo exchange with real value (currently 120 min) private const val MANUAL_KEY_RETRIEVAL_DELAY = 60000L /** diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/transaction/RiskLevelTransaction.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/transaction/RiskLevelTransaction.kt index 32e157f37..df32874cc 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/transaction/RiskLevelTransaction.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/transaction/RiskLevelTransaction.kt @@ -33,7 +33,6 @@ import de.rki.coronawarnapp.transaction.RiskLevelTransaction.RiskLevelTransactio import de.rki.coronawarnapp.transaction.RiskLevelTransaction.RiskLevelTransactionState.RETRIEVE_APPLICATION_CONFIG import de.rki.coronawarnapp.transaction.RiskLevelTransaction.RiskLevelTransactionState.RETRIEVE_EXPOSURE_SUMMARY import de.rki.coronawarnapp.transaction.RiskLevelTransaction.RiskLevelTransactionState.UPDATE_RISK_LEVEL -import de.rki.coronawarnapp.util.TimeAndDateExtensions.millisecondsToDays import de.rki.coronawarnapp.util.TimeAndDateExtensions.millisecondsToHours import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.withContext @@ -284,7 +283,7 @@ object RiskLevelTransaction : Transaction() { /** we only return outdated risk level if the threshold is reached AND the active tracing time is above the defined threshold because [UNKNOWN_RISK_INITIAL] overrules [UNKNOWN_RISK_OUTDATED_RESULTS] */ - if (timeSinceLastDiagnosisKeyFetchFromServer.millisecondsToDays() > + if (timeSinceLastDiagnosisKeyFetchFromServer.millisecondsToHours() > TimeVariables.getMaxStaleExposureRiskRange() && isActiveTracingTimeAboveThreshold() ) { return@executeState UNKNOWN_RISK_OUTDATED_RESULTS.also { diff --git a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/TimeAndDateExtensions.kt b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/TimeAndDateExtensions.kt index 7f07904ca..5169ec2f5 100644 --- a/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/TimeAndDateExtensions.kt +++ b/Corona-Warn-App/src/main/java/de/rki/coronawarnapp/util/TimeAndDateExtensions.kt @@ -2,7 +2,6 @@ package de.rki.coronawarnapp.util import org.joda.time.DateTime import org.joda.time.DateTimeZone -import org.joda.time.Instant import org.joda.time.chrono.GJChronology import org.joda.time.format.DateTimeFormat import java.util.Date @@ -14,12 +13,6 @@ object TimeAndDateExtensions { private const val MS_TO_HOURS = (1000 * 60 * 60) private const val MS_TO_SECONDS = 1000 - fun getCurrentHourUTC(): Int = DateTime(Instant.now(), DateTimeZone.UTC).hourOfDay().get() - - fun Date.getHourFromUTCDate(): Int = DateTime(this, DateTimeZone.UTC).hourOfDay().get() - - fun String.toMillis(): Long? = DateTime.parse(this).millis - fun Date.toServerFormat(): String = DateTimeFormat.forPattern("yyyy-MM-dd").withChronology(GJChronology.getInstance()) .withZoneUTC() @@ -31,10 +24,6 @@ object TimeAndDateExtensions { return this.div(MS_TO_SECONDS) } - fun Long.millisecondsToDays(): Long { - return this.div(MS_TO_DAYS) - } - fun Long.millisecondsToHours(): Long { return this.div(MS_TO_HOURS) } diff --git a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/transaction/RiskLevelTransactionTest.kt b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/transaction/RiskLevelTransactionTest.kt index 83ec19259..db67511c3 100644 --- a/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/transaction/RiskLevelTransactionTest.kt +++ b/Corona-Warn-App/src/test/java/de/rki/coronawarnapp/transaction/RiskLevelTransactionTest.kt @@ -118,14 +118,15 @@ class RiskLevelTransactionTest { val testRiskLevel = UNKNOWN_RISK_OUTDATED_RESULTS - val twoDaysAboveMaxStale = TimeUnit.DAYS.toMillis(TimeVariables.getMaxStaleExposureRiskRange().plus(2).toLong()) + val twoHoursAboveMaxStale = + TimeUnit.HOURS.toMillis(TimeVariables.getMaxStaleExposureRiskRange().plus(2).toLong()) // tracing is activated coEvery { InternalExposureNotificationClient.asyncIsEnabled() } returns true // the last time we fetched keys from the server is above the threshold every { TimeVariables.getLastTimeDiagnosisKeysFromServerFetch() } returns System.currentTimeMillis() - .minus(twoDaysAboveMaxStale) + .minus(twoHoursAboveMaxStale) // active tracing time is 1h above the threshold every { TimeVariables.getTimeActiveTracingDuration() } returns TimeUnit.HOURS.toMillis( -- GitLab