From cfc16eb7908850ffeb9e579f4c8e08a0c62ed75b Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Fri, 24 May 2024 14:55:56 +0200 Subject: [PATCH] Add Konsist test to ensure that BuildConfig.VersionCode is not used. --- .../tests/konsist/KonsistContentTest.kt | 35 +++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 tests/konsist/src/test/kotlin/io/element/android/tests/konsist/KonsistContentTest.kt diff --git a/tests/konsist/src/test/kotlin/io/element/android/tests/konsist/KonsistContentTest.kt b/tests/konsist/src/test/kotlin/io/element/android/tests/konsist/KonsistContentTest.kt new file mode 100644 index 0000000000..972bdcb606 --- /dev/null +++ b/tests/konsist/src/test/kotlin/io/element/android/tests/konsist/KonsistContentTest.kt @@ -0,0 +1,35 @@ +/* + * Copyright (c) 2023 New Vector Ltd + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package io.element.android.tests.konsist + +import com.lemonappdev.konsist.api.Konsist +import com.lemonappdev.konsist.api.ext.list.withImportNamed +import com.lemonappdev.konsist.api.verify.assertFalse +import org.junit.Test + +class KonsistContentTest { + @Test + fun `assert that BuildConfig dot VersionCode is not used`() { + Konsist + .scopeFromProduction() + .files + .withImportNamed("io.element.android.x.BuildConfig") + .assertFalse(additionalMessage = "Please do not use BuildConfig.VERSION_CODE, but use the versionCode from BuildMeta") { + it.text.contains("BuildConfig.VERSION_CODE") + } + } +}