Skip to content

Commit 6a6fa09

Browse files
authored
Add: Tests for the minimum required Android Gradle Plugin version check (#56)
1 parent 1b1f716 commit 6a6fa09

File tree

3 files changed

+34
-0
lines changed

3 files changed

+34
-0
lines changed

gradle/libs.versions.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ androidJUnit = { module = "androidx.test.ext:junit", vers
1919
commonsCsv = { module = "org.apache.commons:commons-csv", version = "1.9.0" }
2020
kotlinTest = { module = "org.jetbrains.kotlin:kotlin-test", version.ref = "kotlin" }
2121
robolectric = { module = "org.robolectric:robolectric", version = "4.7.3" }
22+
mockk = { module = "io.mockk:mockk", version = "1.12.4" }
2223

2324
[bundles]
2425
androidInstrumentedTest = ["supportTestRunner", "espressoCore", "androidJUnit"]

plugin/build.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,4 +74,5 @@ dependencies {
7474
testImplementation libs.androidGradlePlugin
7575
testImplementation libs.bundles.jvmTest
7676
testImplementation gradleTestKit()
77+
testImplementation libs.mockk
7778
}
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
package org.neotech.plugin.rootcoverage
2+
3+
import com.android.build.api.AndroidPluginVersion
4+
import com.android.build.api.variant.AndroidComponentsExtension
5+
import io.mockk.every
6+
import io.mockk.mockk
7+
import org.gradle.api.GradleException
8+
import org.junit.Test
9+
import org.neotech.plugin.rootcoverage.utilities.assertMinimumRequiredAGPVersion
10+
11+
class AndroidGradlePluginExtensionsTest {
12+
13+
@Test(expected = GradleException::class)
14+
fun `when AGP version is lower than minimum required then assertMinimumRequiredAGPVersion throws an exception`() {
15+
16+
val mockedAndroidComponentsExtension = mockk<AndroidComponentsExtension<*,*,*>>()
17+
18+
every { mockedAndroidComponentsExtension.pluginVersion } returns AndroidPluginVersion(7, 1)
19+
20+
mockedAndroidComponentsExtension.assertMinimumRequiredAGPVersion(AndroidPluginVersion(7, 2).alpha(6))
21+
}
22+
23+
@Test
24+
fun `when AGP version is higher than minimum required then assertMinimumRequiredAGAVEVersion() returns successfully`() {
25+
26+
val mockedAndroidComponentsExtension = mockk<AndroidComponentsExtension<*,*,*>>()
27+
28+
every { mockedAndroidComponentsExtension.pluginVersion } returns AndroidPluginVersion(7, 3)
29+
30+
mockedAndroidComponentsExtension.assertMinimumRequiredAGPVersion(AndroidPluginVersion(7, 2).alpha(6))
31+
}
32+
}

0 commit comments

Comments
 (0)