Skip to content

Commit ecc9244

Browse files
committed
Pass agp version to android gradle runner in tests
1 parent f01ce9c commit ecc9244

5 files changed

+35
-21
lines changed

src/test/groovy/com/google/protobuf/gradle/AndroidProjectDetectionTest.groovy

+5-4
Original file line numberDiff line numberDiff line change
@@ -39,9 +39,10 @@ class AndroidProjectDetectionTest extends Specification {
3939

4040
when: "checkForAndroidPlugin task evaluates Utils.isAndroidProject"
4141
BuildResult result = buildAndroidProject(
42-
mainProjectDir,
43-
gradleVersion,
44-
"checkForAndroidPlugin"
42+
mainProjectDir,
43+
gradleVersion,
44+
agpVersion,
45+
"checkForAndroidPlugin"
4546
)
4647

4748
then: "Utils.isAndroidProject evaluation matched assertion in task checkForAndroidPlugin"
@@ -72,7 +73,7 @@ class AndroidProjectDetectionTest extends Specification {
7273
when: "checkForAndroidPlugin task evaluates Utils.isAndroidProject"
7374
BuildResult result = buildAndroidProject(
7475
mainProjectDir,
75-
gradleVersion,
76+
gradleVersion,agpVersion,
7677
"checkForAndroidPlugin"
7778
)
7879

src/test/groovy/com/google/protobuf/gradle/ProtobufAndroidPluginKotlinTest.groovy

+4-3
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,10 @@ class ProtobufAndroidPluginKotlinTest extends Specification {
3737
.build()
3838
when: "build is invoked"
3939
BuildResult result = buildAndroidProject(
40-
mainProjectDir,
41-
gradleVersion,
42-
"testProjectAndroid:build"
40+
mainProjectDir,
41+
gradleVersion,
42+
agpVersion,
43+
"testProjectAndroid:build"
4344
)
4445

4546
then: "it succeed"

src/test/groovy/com/google/protobuf/gradle/ProtobufAndroidPluginTest.groovy

+8-7
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,10 @@ class ProtobufAndroidPluginTest extends Specification {
3636
.build()
3737
when: "build is invoked"
3838
BuildResult result = buildAndroidProject(
39-
mainProjectDir,
40-
gradleVersion,
41-
"testProjectAndroid:build"
39+
mainProjectDir,
40+
gradleVersion,
41+
agpVersion,
42+
"testProjectAndroid:build"
4243
)
4344

4445
then: "it succeed"
@@ -68,7 +69,7 @@ class ProtobufAndroidPluginTest extends Specification {
6869
and:
6970
GradleRunner runner = getAndroidGradleRunner(
7071
mainProjectDir,
71-
gradleVersion,
72+
gradleVersion,agpVersion,
7273
"testProjectAndroid:assembleDebug",
7374
"-Dorg.gradle.unsafe.configuration-cache=true"
7475
)
@@ -93,7 +94,7 @@ class ProtobufAndroidPluginTest extends Specification {
9394
when: "clean is invoked, before a build"
9495
buildAndroidProject(
9596
mainProjectDir,
96-
gradleVersion,
97+
gradleVersion,agpVersion,
9798
"testProjectAndroid:clean",
9899
"-Dorg.gradle.unsafe.configuration-cache=true"
99100
)
@@ -126,7 +127,7 @@ class ProtobufAndroidPluginTest extends Specification {
126127
when: "build is invoked"
127128
BuildResult result = buildAndroidProject(
128129
mainProjectDir,
129-
gradleVersion,
130+
gradleVersion,agpVersion,
130131
"testProjectAndroid:build"
131132
)
132133

@@ -157,7 +158,7 @@ class ProtobufAndroidPluginTest extends Specification {
157158
when: "build is invoked"
158159
BuildResult result = buildAndroidProject(
159160
mainProjectDir,
160-
gradleVersion,
161+
gradleVersion,agpVersion,
161162
"testProjectAndroid:assembleAndroidTest"
162163
)
163164

src/test/groovy/com/google/protobuf/gradle/ProtobufKotlinDslPluginTest.groovy

+4-3
Original file line numberDiff line numberDiff line change
@@ -61,9 +61,10 @@ class ProtobufKotlinDslPluginTest extends Specification {
6161
6262
when: "build is invoked"
6363
BuildResult result = buildAndroidProject(
64-
mainProjectDir,
65-
gradleVersion,
66-
"testProjectAndroidKotlinDsl:build"
64+
mainProjectDir,
65+
gradleVersion,
66+
agpVersion,
67+
"testProjectAndroidKotlinDsl:build"
6768
)
6869
6970
then: "it succeed"

src/test/groovy/com/google/protobuf/gradle/ProtobufPluginTestHelper.groovy

+14-4
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,22 @@ final class ProtobufPluginTestHelper {
2828
}
2929

3030
static BuildResult buildAndroidProject(
31-
File mainProjectDir, String gradleVersion, String fullPathTask, String... arguments) {
32-
return getAndroidGradleRunner(mainProjectDir, gradleVersion, fullPathTask, arguments).build()
31+
File mainProjectDir,
32+
String gradleVersion,
33+
String agpVersion,
34+
String fullPathTask,
35+
String... arguments
36+
) {
37+
return getAndroidGradleRunner(mainProjectDir, gradleVersion, agpVersion, fullPathTask, arguments).build()
3338
}
3439

3540
static GradleRunner getAndroidGradleRunner(
36-
File mainProjectDir, String gradleVersion, String fullPathTask, String... arguments) {
41+
File mainProjectDir,
42+
String gradleVersion,
43+
String agpVersion,
44+
String fullPathTask,
45+
String... arguments
46+
) {
3747
File localBuildCache = new File(mainProjectDir, ".buildCache")
3848
if (localBuildCache.exists()) {
3949
localBuildCache.deleteDir()
@@ -42,7 +52,7 @@ final class ProtobufPluginTestHelper {
4252
// set android build cache to avoid using home directory on CI.
4353
// More details about that if can be found here:
4454
// https://developer.android.com/studio/releases/gradle-plugin.html#build-cache-removed
45-
if (gradleVersion.take(1) == "7") { // TODO: improve version comparison
55+
if (agpVersion.take(1).toInteger() >= 4) { // TODO: improve version comparison
4656
args.add("-PbuildCache.local.directory=$localBuildCache".toString())
4757
args.add("-PbuildCache.local.removeUnusedEntriesAfterDays=7")
4858
} else {

0 commit comments

Comments
 (0)