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

Default app config cleanup (DEV) #2396


* Remove legacy config check, not necessary anymore.

* Unknown serialized fields should be 0.

Co-authored-by: default avatarRalf Gehrer <ralfgehrer@users.noreply.github.com>
parent d848d7b4
No related branches found
No related tags found
No related merge requests found
......@@ -300,6 +300,7 @@ dependencies {
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:$coroutineVersion"
implementation "org.jetbrains.kotlinx:kotlinx-coroutines-play-services:$coroutineVersion"
testImplementation "org.jetbrains.kotlinx:kotlinx-coroutines-test:$coroutineVersion"
testImplementation "org.jetbrains.kotlin:kotlin-reflect:1.4.21"
// ANDROID STANDARD
def nav_version = "2.3.3"
......
File deleted
a562bf5940b8c149138634d313db69a298a50e8c52c0b42d18ddf608c385b598
\ No newline at end of file
......@@ -3,7 +3,7 @@ package de.rki.coronawarnapp.appconfig.sources.fallback
import android.content.Context
import android.os.Build
import androidx.test.core.app.ApplicationProvider
import de.rki.coronawarnapp.server.protocols.internal.AppConfig
import com.google.protobuf.UnknownFieldSetLite
import de.rki.coronawarnapp.server.protocols.internal.v2.AppConfigAndroid
import de.rki.coronawarnapp.util.HashExtensions.toSHA256
import io.kotest.assertions.throwables.shouldNotThrowAny
......@@ -24,9 +24,6 @@ import testhelpers.EmptyApplication
@RunWith(RobolectricTestRunner::class)
class DefaultAppConfigSanityCheck : BaseTest() {
private val legacyConfigName = "default_app_config.bin"
private val legacyCheckSumName = "default_app_config.sha256"
private val configName = "default_app_config_android.bin"
private val checkSumName = "default_app_config_android.sha256"
......@@ -55,23 +52,14 @@ class DefaultAppConfigSanityCheck : BaseTest() {
fun `current default config can be parsed`() {
shouldNotThrowAny {
val config = context.assets.open(configName).readBytes()
AppConfigAndroid.ApplicationConfigurationAndroid.parseFrom(config) shouldNotBe null
}
}
val parsedConfig = AppConfigAndroid.ApplicationConfigurationAndroid.parseFrom(config)
parsedConfig shouldNotBe null
@Test
fun `legacy config - current default matches checksum`() {
val config = context.assets.open(legacyConfigName).readBytes()
val sha256 = context.assets.open(legacyCheckSumName).readBytes().toString(Charsets.UTF_8)
sha256 shouldBe "a562bf5940b8c149138634d313db69a298a50e8c52c0b42d18ddf608c385b598"
config.toSHA256() shouldBe sha256
}
@Test
fun `legacy config - current default config can be parsed`() {
shouldNotThrowAny {
val config = context.assets.open(legacyConfigName).readBytes()
AppConfig.ApplicationConfiguration.parseFrom(config) shouldNotBe null
val unknownFields = parsedConfig.javaClass.superclass!!.getDeclaredField("unknownFields").let {
it.isAccessible = true
it.get(parsedConfig) as UnknownFieldSetLite
}
unknownFields.serializedSize shouldBe 0
}
}
}
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