Skip to content

Commit 4e77055

Browse files
committed
Improvement for AGPInterface
1 parent e8c15d0 commit 4e77055

File tree

18 files changed

+91
-177
lines changed
  • booster-android-gradle-api/src/main/kotlin/com/didiglobal/booster/gradle
  • booster-android-gradle-compat/src/main/kotlin/com/didiglobal/booster/gradle
  • booster-android-gradle-v3_0/src
    • integrationTest/kotlin/com/didiglobal/booster/android/gradle/v3_0
    • main/kotlin/com/didiglobal/booster/android/gradle/v3_0
  • booster-android-gradle-v3_2/src
    • integrationTest/kotlin/com/didiglobal/booster/android/gradle/v3_2
    • main/kotlin/com/didiglobal/booster/android/gradle/v3_2
  • booster-android-gradle-v3_3/src
    • integrationTest/kotlin/com/didiglobal/booster/android/gradle/v3_3
    • main/kotlin/com/didiglobal/booster/android/gradle/v3_3
  • booster-android-gradle-v3_5/src
    • integrationTest/kotlin/com/didiglobal/booster/android/gradle/v3_5
    • main/kotlin/com/didiglobal/booster/android/gradle/v3_5
  • booster-android-gradle-v3_6/src
    • integrationTest/kotlin/com/didiglobal/booster/android/gradle/v3_6
    • main/kotlin/com/didiglobal/booster/android/gradle/v3_6
  • booster-android-gradle-v4_0/src
    • integrationTest/kotlin/com/didiglobal/booster/android/gradle/v4_0
    • main/kotlin/com/didiglobal/booster/android/gradle/v4_0
  • booster-android-gradle-v4_1/src
    • integrationTest/kotlin/com/didiglobal/booster/android/gradle/v4_1
    • main/kotlin/com/didiglobal/booster/android/gradle/v4_1

18 files changed

+91
-177
lines changed

booster-android-gradle-api/src/main/kotlin/com/didiglobal/booster/gradle/BaseVariant.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ import java.io.File
1919
*/
2020
@Suppress("DEPRECATION")
2121
val BaseVariant.project: Project
22-
get() = globalScope.project
22+
get() = AGP.run { globalScope }.project
2323

2424
/**
2525
* The `android` extension associates with this variant

booster-android-gradle-api/src/main/kotlin/com/didiglobal/booster/gradle/Internal.kt

Lines changed: 0 additions & 28 deletions
This file was deleted.

booster-android-gradle-api/src/main/kotlin/com/didiglobal/booster/gradle/ResolvedArtifactResults.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,7 +76,7 @@ class ResolvedArtifactResults(private val variant: BaseVariant) : Collection<Res
7676
/**
7777
* Default output location: $buildDir/intermediates/dependencies/${variantDirName}/dependencies.txt
7878
*/
79-
private fun makeDependenciesOutput() = variant.globalScope.intermediatesDir.file(
79+
private fun makeDependenciesOutput() = AGP.run { variant.globalScope }.intermediatesDir.file(
8080
"dependencies",
8181
variant.dirName.separatorsToSystem(),
8282
"dependencies.txt"

booster-android-gradle-compat/src/main/kotlin/com/didiglobal/booster/gradle/AGPInterface.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import com.android.build.gradle.api.BaseVariant
1010
import com.android.build.gradle.internal.pipeline.TransformManager
1111
import com.android.build.gradle.internal.pipeline.TransformTask
1212
import com.android.build.gradle.internal.publishing.AndroidArtifacts
13+
import com.android.build.gradle.internal.scope.GlobalScope
1314
import com.android.build.gradle.internal.scope.VariantScope
1415
import com.android.build.gradle.internal.variant.BaseVariantData
1516
import com.android.builder.core.VariantType
@@ -49,6 +50,8 @@ interface AGPInterface {
4950

5051
val BaseVariant.variantScope: VariantScope
5152

53+
val BaseVariant.globalScope: GlobalScope
54+
5255
val BaseVariant.originalApplicationId: String
5356

5457
val BaseVariant.hasDynamicFeature: Boolean

booster-android-gradle-v3_0/src/integrationTest/kotlin/com/didiglobal/booster/android/gradle/v3_0/V30IntegrationTest.kt

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,11 @@ abstract class V30IntegrationTest(val isLib: Boolean) {
121121
fun `test AGPInterface#variantScope`() {
122122
}
123123

124+
@Test
125+
@Case(GlobalScopeTestCase::class)
126+
fun `test AGPInterface#globalScope`() {
127+
}
128+
124129
@Test
125130
@Case(OriginalApplicationIdTestCase::class)
126131
fun `test AGPInterface#originalApplicationId`() {
@@ -285,14 +290,18 @@ class VariantDataTestCase : VariantTestCase() {
285290
override fun apply(variant: BaseVariant) {
286291
assertNotNull(AGP.run { variant.variantData })
287292
}
288-
289293
}
290294

291295
class VariantScopeTestCase : VariantTestCase() {
292296
override fun apply(variant: BaseVariant) {
293297
assertNotNull(AGP.run { variant.variantScope })
294298
}
299+
}
295300

301+
class GlobalScopeTestCase : VariantTestCase() {
302+
override fun apply(variant: BaseVariant) {
303+
assertNotNull(AGP.run { variant.globalScope })
304+
}
296305
}
297306

298307
class OriginalApplicationIdTestCase : VariantTestCase() {

booster-android-gradle-v3_0/src/main/kotlin/com/didiglobal/booster/android/gradle/v3_0/V30.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,9 @@ object V30 : AGPInterface {
7979
override val BaseVariant.variantScope: VariantScope
8080
get() = variantData.scope
8181

82+
override val BaseVariant.globalScope: GlobalScope
83+
get() = variantScope.globalScope
84+
8285
override val BaseVariant.originalApplicationId: String
8386
get() = variantData.variantConfiguration.originalApplicationId
8487

booster-android-gradle-v3_2/src/integrationTest/kotlin/com/didiglobal/booster/android/gradle/v3_2/V32IntegrationTest.kt

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,6 +121,11 @@ abstract class V32IntegrationTest(val isLib: Boolean) {
121121
fun `test AGPInterface#variantScope`() {
122122
}
123123

124+
@Test
125+
@Case(GlobalScopeTestCase::class)
126+
fun `test AGPInterface#globalScope`() {
127+
}
128+
124129
@Test
125130
@Case(OriginalApplicationIdTestUnit::class)
126131
fun `test AGPInterface#originalApplicationId`() {
@@ -285,14 +290,18 @@ class VariantDataTestUnit : VariantTestCase() {
285290
override fun apply(variant: BaseVariant) {
286291
assertNotNull(AGP.run { variant.variantData })
287292
}
288-
289293
}
290294

291295
class VariantScopeTestUnit : VariantTestCase() {
292296
override fun apply(variant: BaseVariant) {
293297
assertNotNull(AGP.run { variant.variantScope })
294298
}
299+
}
295300

301+
class GlobalScopeTestCase : VariantTestCase() {
302+
override fun apply(variant: BaseVariant) {
303+
assertNotNull(AGP.run { variant.globalScope })
304+
}
296305
}
297306

298307
class OriginalApplicationIdTestUnit : VariantTestCase() {

booster-android-gradle-v3_2/src/main/kotlin/com/didiglobal/booster/android/gradle/v3_2/V32.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,9 @@ object V32 : AGPInterface {
9393
override val BaseVariant.variantScope: VariantScope
9494
get() = variantData.scope
9595

96+
override val BaseVariant.globalScope: GlobalScope
97+
get() = variantScope.globalScope
98+
9699
override val BaseVariant.originalApplicationId: String
97100
get() = variantData.variantConfiguration.originalApplicationId
98101

booster-android-gradle-v3_3/src/integrationTest/kotlin/com/didiglobal/booster/android/gradle/v3_3/V33IntegrationTest.kt

Lines changed: 9 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -65,175 +65,151 @@ abstract class V33IntegrationTest(val isLib: Boolean) {
6565
@Test
6666
@Case(ScopeFullWithFeaturesTest::class)
6767
fun `test AGPInterface#scopeFullWithFeatures`() {
68-
6968
}
7069

7170
@Test
7271
@Case(ScopeFullLibraryWithFeaturesTest::class)
7372
fun `test AGPInterface#scopeFullLibraryWithFeatures`() {
74-
7573
}
7674

7775
@Test
7876
@Case(ProjectTest::class)
7977
fun `test AGPInterface#project`() {
80-
8178
}
8279

8380
@Test
8481
@Case(JavaCompilerTaskTestUnit::class)
8582
fun `test AGPInterface#javaCompilerTask`() {
86-
8783
}
8884

8985
@Test
9086
@Case(PreBuildTaskTestUnit::class)
9187
fun `test AGPInterface#preBuildTask`() {
92-
9388
}
9489

9590
@Test
9691
@Case(AssembleTaskTestUnit::class)
9792
fun `test AGPInterface#assembleTask`() {
98-
9993
}
10094

10195
@Test
10296
@Case(MergeAssetsTaskTestUnit::class)
10397
fun `test AGPInterface#mergeAssetsTask`() {
104-
10598
}
10699

107100
@Test
108101
@Case(MergeResourcesTaskTestUnit::class)
109102
fun `test AGPInterface#mergeResources`() {
110-
111103
}
112104

113105
@Test
114106
@Case(GetTaskNameTestUnit::class)
115107
fun `test AGPInterface#getTaskName(String)`() {
116-
117108
}
118109

119110
@Test
120111
@Case(GetTaskName2TestUnit::class)
121112
fun `test AGPInterface#getTaskName(String, String)`() {
122-
123113
}
124114

125115
@Test
126116
@Case(VariantDataTestUnit::class)
127117
fun `test AGPInterface#variantData`() {
128-
129118
}
130119

131120
@Test
132121
@Case(VariantScopeTestUnit::class)
133122
fun `test AGPInterface#variantScope`() {
123+
}
134124

125+
@Test
126+
@Case(GlobalScopeTestCase::class)
127+
fun `test AGPInterface#globalScope`() {
135128
}
136129

137130
@Test
138131
@Case(OriginalApplicationIdTestUnit::class)
139132
fun `test AGPInterface#originalApplicationId`() {
140-
141133
}
142134

143135
@Test
144136
@Case(HasDynamicFeatureTestUnit::class)
145137
fun `test AGPInterface#hasDynamicFeature`() {
146-
147138
}
148139

149140
@Test
150141
@Case(RawAndroidResourcesTestUnit::class)
151142
fun `test AGPInterface#rawAndroidResources`() {
152-
153143
}
154144

155145
@Test
156146
@Case(AllArtifactsTestUnit::class)
157147
fun `test AGPInterface#allArtifacts`() {
158-
159148
}
160149

161150
@Test
162151
@Case(MinSdkVersionTestUnit::class)
163152
fun `test AGPInterface#minSdkVersion`() {
164-
165153
}
166154

167155
@Test
168156
@Case(TargetSdkVersionTestUnit::class)
169157
fun `test AGPInterface#targetSdkVersion`() {
170-
171158
}
172159

173160
@Test
174161
@Case(VariantTypeTestUnit::class)
175162
fun `test AGPInterface#variantType`() {
176-
177163
}
178164

179165
@Test
180166
@Case(AarTestUnit::class)
181167
fun `test AGPInterface#aar`() {
182-
183168
}
184169

185170
@Test
186171
@Case(ApkTestUnit::class)
187172
fun `test AGPInterface#apk`() {
188-
189173
}
190174

191175
@Test
192176
@Case(MergedManifestsTestUnit::class)
193177
fun `test AGPInterface#mergedManifests`() {
194-
195178
}
196179

197180
@Test
198181
@Case(MergedResourcesTestUnit::class)
199182
fun `test AGPInterface#mergedRes`() {
200-
201183
}
202184

203185
@Test
204186
@Case(MergedAssetsTestUnit::class)
205187
fun `test AGPInterface#mergedAssets`() {
206-
207188
}
208189

209190
@Test
210191
@Case(ProcessedResTestUnit::class)
211192
fun `test AGPInterface#processedRes`() {
212-
213193
}
214194

215195
@Test
216196
@Case(SymbolListTestUnit::class)
217197
fun `test AGPInterface#symbolList`() {
218-
219198
}
220199

221200
@Test
222201
@Case(SymbolListWithPackageNameTestUnit::class)
223202
fun `test AGPInterface#symbolListWithPackageName`() {
224-
225203
}
226204

227205
@Test
228206
@Case(AllClassesTestUnit::class)
229207
fun `test AGPInterface#allClasses`() {
230-
231208
}
232209

233210
@Test
234211
@Case(BuildToolsTestUnit::class)
235212
fun `test AGPInterface#buildTools`() {
236-
237213
}
238214

239215
}
@@ -315,14 +291,18 @@ class VariantDataTestUnit : VariantTestCase() {
315291
override fun apply(variant: BaseVariant) {
316292
assertNotNull(AGP.run { variant.variantData })
317293
}
318-
319294
}
320295

321296
class VariantScopeTestUnit : VariantTestCase() {
322297
override fun apply(variant: BaseVariant) {
323298
assertNotNull(AGP.run { variant.variantScope })
324299
}
300+
}
325301

302+
class GlobalScopeTestCase : VariantTestCase() {
303+
override fun apply(variant: BaseVariant) {
304+
assertNotNull(AGP.run { variant.globalScope })
305+
}
326306
}
327307

328308
class OriginalApplicationIdTestUnit : VariantTestCase() {

booster-android-gradle-v3_3/src/main/kotlin/com/didiglobal/booster/android/gradle/v3_3/V33.kt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,9 @@ object V33 : AGPInterface {
8989
override val BaseVariant.variantScope: VariantScope
9090
get() = variantData.scope
9191

92+
override val BaseVariant.globalScope: GlobalScope
93+
get() = variantScope.globalScope
94+
9295
override val BaseVariant.originalApplicationId: String
9396
get() = variantData.variantConfiguration.originalApplicationId
9497

0 commit comments

Comments
 (0)