Skip to content

Commit

Permalink
Support AGP 7.4
Browse files Browse the repository at this point in the history
  • Loading branch information
johnsonlee committed May 27, 2023
1 parent ae09abf commit bde009f
Show file tree
Hide file tree
Showing 43 changed files with 754 additions and 161 deletions.
22 changes: 22 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -326,3 +326,25 @@ jobs:
name: booster-android-gradle-v7_3
path: booster-android-gradle-v7_3/build/reports/tests/integrationTest

integration-test-agp-v7_4:
name: AGP 7.4 Integration Test
needs: build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-java@v3
with:
distribution: 'adopt'
java-version: '11'
cache: 'gradle'
- uses: actions/cache@v3
with:
path: ~/.m2
key: ${{ runner.os }}-m2-${{ github.run_number }}
- shell: bash
run: ./gradlew booster-android-gradle-v7_4:integrationTest -S --no-daemon -Pversion=${{ github.run_number }}
- uses: actions/upload-artifact@v3
if: failure()
with:
name: booster-android-gradle-v7_4
path: booster-android-gradle-v7_4/build/reports/tests/integrationTest
1 change: 1 addition & 0 deletions booster-android-gradle-api/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@ dependencies {
implementation project(':booster-android-gradle-v7_1')
implementation project(':booster-android-gradle-v7_2')
implementation project(':booster-android-gradle-v7_3')
implementation project(':booster-android-gradle-v7_4')
compileOnly 'com.android.tools.build:gradle:3.0.0'
testCompileOnly 'com.android.tools.build:gradle:3.0.0'
}
Original file line number Diff line number Diff line change
Expand Up @@ -13,5 +13,7 @@ val GTE_V4_2: Boolean by lazy { AGP.revision.major > 4 || (AGP.revision.major ==
val GTE_V4_1: Boolean by lazy { AGP.revision.major > 4 || (AGP.revision.major == 4 && AGP.revision.minor >= 1) }

val GTE_V7_X: Boolean by lazy { AGP.revision.major >= 7 }
val GTE_V7_4: Boolean by lazy { AGP.revision.major > 7 || (AGP.revision.major == 7 && AGP.revision.minor >= 4) }
val GTE_V7_3: Boolean by lazy { AGP.revision.major > 7 || (AGP.revision.major == 7 && AGP.revision.minor >= 3) }
val GTE_V7_2: Boolean by lazy { AGP.revision.major > 7 || (AGP.revision.major == 7 && AGP.revision.minor >= 2) }
val GTE_V7_1: Boolean by lazy { AGP.revision.major > 7 || (AGP.revision.major == 7 && AGP.revision.minor >= 1) }
Original file line number Diff line number Diff line change
Expand Up @@ -95,8 +95,6 @@ interface AGPInterface {

val BaseVariant.variantData: BaseVariantData

val BaseVariant.variantScope: VariantScope

@Deprecated(
message = "Use BaseVariant.namespace instead",
replaceWith = ReplaceWith(expression = "variant.namespace"),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -109,10 +109,6 @@ abstract class V33IntegrationTest(private val isLib: Boolean) {
@Case(VariantDataTestUnit::class)
fun `test AGPInterface#variantData`() = Unit

@Test
@Case(VariantScopeTestUnit::class)
fun `test AGPInterface#variantScope`() = Unit

@Test
@Case(OriginalApplicationIdTestUnit::class)
fun `test AGPInterface#originalApplicationId`() = Unit
Expand Down Expand Up @@ -258,12 +254,6 @@ class VariantDataTestUnit : VariantTestCase() {
}
}

class VariantScopeTestUnit : VariantTestCase() {
override fun apply(variant: BaseVariant) {
assertNotNull(AGP.run { variant.variantScope })
}
}

class OriginalApplicationIdTestUnit : VariantTestCase() {
override fun apply(variant: BaseVariant) {
assertNotNull(AGP.run { variant.originalApplicationId })
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ internal object V33 : AGPInterface {
isAccessible = true
}.invoke(this) as BaseVariantData

override val BaseVariant.variantScope: VariantScope
val BaseVariant.variantScope: VariantScope
get() = variantData.scope

private val BaseVariant.globalScope: GlobalScope
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -109,10 +109,6 @@ abstract class V34IntegrationTest(private val isLib: Boolean) {
@Case(VariantDataTestUnit::class)
fun `test AGPInterface#variantData`() = Unit

@Test
@Case(VariantScopeTestUnit::class)
fun `test AGPInterface#variantScope`() = Unit

@Test
@Case(OriginalApplicationIdTestUnit::class)
fun `test AGPInterface#originalApplicationId`() = Unit
Expand Down Expand Up @@ -258,12 +254,6 @@ class VariantDataTestUnit : VariantTestCase() {
}
}

class VariantScopeTestUnit : VariantTestCase() {
override fun apply(variant: BaseVariant) {
assertNotNull(AGP.run { variant.variantScope })
}
}

class OriginalApplicationIdTestUnit : VariantTestCase() {
override fun apply(variant: BaseVariant) {
assertNotNull(AGP.run { variant.originalApplicationId })
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -100,7 +100,7 @@ internal object V34 : AGPInterface {
isAccessible = true
}.invoke(this) as BaseVariantData

override val BaseVariant.variantScope: VariantScope
val BaseVariant.variantScope: VariantScope
get() = variantData.scope

private val BaseVariant.globalScope: GlobalScope
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -109,10 +109,6 @@ abstract class V35IntegrationTest(private val isLib: Boolean) {
@Case(VariantDataTestUnit::class)
fun `test AGPInterface#variantData`() = Unit

@Test
@Case(VariantScopeTestUnit::class)
fun `test AGPInterface#variantScope`() = Unit

@Test
@Case(OriginalApplicationIdTestUnit::class)
fun `test AGPInterface#originalApplicationId`() = Unit
Expand Down Expand Up @@ -258,12 +254,6 @@ class VariantDataTestUnit : VariantTestCase() {
}
}

class VariantScopeTestUnit : VariantTestCase() {
override fun apply(variant: BaseVariant) {
assertNotNull(AGP.run { variant.variantScope })
}
}

class OriginalApplicationIdTestUnit : VariantTestCase() {
override fun apply(variant: BaseVariant) {
assertNotNull(AGP.run { variant.originalApplicationId })
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@ internal object V35 : AGPInterface {
isAccessible = true
}.invoke(this) as BaseVariantData

override val BaseVariant.variantScope: VariantScope
val BaseVariant.variantScope: VariantScope
get() = variantData.scope

private val BaseVariant.globalScope: GlobalScope
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -109,10 +109,6 @@ abstract class V36IntegrationTest(private val isLib: Boolean) {
@Case(VariantDataTestUnit::class)
fun `test AGPInterface#variantData`() = Unit

@Test
@Case(VariantScopeTestUnit::class)
fun `test AGPInterface#variantScope`() = Unit

@Test
@Case(OriginalApplicationIdTestUnit::class)
fun `test AGPInterface#originalApplicationId`() = Unit
Expand Down Expand Up @@ -258,12 +254,6 @@ class VariantDataTestUnit : VariantTestCase() {
}
}

class VariantScopeTestUnit : VariantTestCase() {
override fun apply(variant: BaseVariant) {
assertNotNull(AGP.run { variant.variantScope })
}
}

class OriginalApplicationIdTestUnit : VariantTestCase() {
override fun apply(variant: BaseVariant) {
assertNotNull(AGP.run { variant.originalApplicationId })
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -109,7 +109,7 @@ object V36 : AGPInterface {
isAccessible = true
}.invoke(this) as BaseVariantData

override val BaseVariant.variantScope: VariantScope
val BaseVariant.variantScope: VariantScope
get() = variantData.scope

private val BaseVariant.globalScope: GlobalScope
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -109,10 +109,6 @@ abstract class V40IntegrationTest(private val isLib: Boolean) {
@Case(VariantDataTestUnit::class)
fun `test AGPInterface#variantData`() = Unit

@Test
@Case(VariantScopeTestUnit::class)
fun `test AGPInterface#variantScope`() = Unit

@Test
@Case(OriginalApplicationIdTestUnit::class)
fun `test AGPInterface#originalApplicationId`() = Unit
Expand Down Expand Up @@ -258,12 +254,6 @@ class VariantDataTestUnit : VariantTestCase() {
}
}

class VariantScopeTestUnit : VariantTestCase() {
override fun apply(variant: BaseVariant) {
assertNotNull(AGP.run { variant.variantScope })
}
}

class OriginalApplicationIdTestUnit : VariantTestCase() {
override fun apply(variant: BaseVariant) {
assertNotNull(AGP.run { variant.originalApplicationId })
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ internal object V40 : AGPInterface {
isAccessible = true
}.invoke(this) as BaseVariantData

override val BaseVariant.variantScope: VariantScope
val BaseVariant.variantScope: VariantScope
get() = variantData.scope

private val BaseVariant.globalScope: GlobalScope
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -109,10 +109,6 @@ abstract class V41IntegrationTest(val isLib: Boolean) {
@Case(VariantDataTestUnit::class)
fun `test AGPInterface#variantData`() = Unit

@Test
@Case(VariantScopeTestUnit::class)
fun `test AGPInterface#variantScope`() = Unit

@Test
@Case(OriginalApplicationIdTestUnit::class)
fun `test AGPInterface#originalApplicationId`() = Unit
Expand Down Expand Up @@ -258,12 +254,6 @@ class VariantDataTestUnit : VariantTestCase() {
}
}

class VariantScopeTestUnit : VariantTestCase() {
override fun apply(variant: BaseVariant) {
assertNotNull(AGP.run { variant.variantScope })
}
}

class OriginalApplicationIdTestUnit : VariantTestCase() {
override fun apply(variant: BaseVariant) {
assertNotNull(AGP.run { variant.originalApplicationId })
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,7 @@ internal object V41 : AGPInterface {
isAccessible = true
}.invoke(this) as BaseVariantData

override val BaseVariant.variantScope: VariantScope
val BaseVariant.variantScope: VariantScope
get() = componentProperties.variantScope

private val BaseVariant.globalScope: GlobalScope
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -109,10 +109,6 @@ abstract class V42IntegrationTest(val isLib: Boolean) {
@Case(VariantDataTestUnit::class)
fun `test AGPInterface#variantData`() = Unit

@Test
@Case(VariantScopeTestUnit::class)
fun `test AGPInterface#variantScope`() = Unit

@Test
@Case(OriginalApplicationIdTestUnit::class)
fun `test AGPInterface#originalApplicationId`() = Unit
Expand Down Expand Up @@ -258,12 +254,6 @@ class VariantDataTestUnit : VariantTestCase() {
}
}

class VariantScopeTestUnit : VariantTestCase() {
override fun apply(variant: BaseVariant) {
assertNotNull(AGP.run { variant.variantScope })
}
}

class OriginalApplicationIdTestUnit : VariantTestCase() {
override fun apply(variant: BaseVariant) {
assertNotNull(AGP.run { variant.originalApplicationId })
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,7 @@ internal object V42 : AGPInterface {
isAccessible = true
}.invoke(this) as BaseVariantData

override val BaseVariant.variantScope: VariantScope
val BaseVariant.variantScope: VariantScope
get() = component.variantScope

@Suppress("DEPRECATION")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -108,10 +108,6 @@ abstract class V70IntegrationTest(private val isLib: Boolean) {
@Case(VariantDataTestUnit::class)
fun `test AGPInterface#variantData`() = Unit

@Test
@Case(VariantScopeTestUnit::class)
fun `test AGPInterface#variantScope`() = Unit

@Test
@Case(OriginalApplicationIdTestUnit::class)
fun `test AGPInterface#originalApplicationId`() = Unit
Expand Down Expand Up @@ -262,12 +258,6 @@ class VariantDataTestUnit : VariantTestCase() {
}
}

class VariantScopeTestUnit : VariantTestCase() {
override fun apply(variant: BaseVariant) {
assertNotNull(AGP.run { variant.variantScope })
}
}

class OriginalApplicationIdTestUnit : VariantTestCase() {
override fun apply(variant: BaseVariant) {
assertNotNull(AGP.run { variant.originalApplicationId })
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -149,7 +149,7 @@ internal object V70 : AGPInterface {
isAccessible = true
}.invoke(this) as BaseVariantData

override val BaseVariant.variantScope: VariantScope
val BaseVariant.variantScope: VariantScope
get() = component.variantScope

@Suppress("DEPRECATION")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -108,10 +108,6 @@ abstract class V71IntegrationTest(private val isLib: Boolean) {
@Case(VariantDataTestUnit::class)
fun `test AGPInterface#variantData`() = Unit

@Test
@Case(VariantScopeTestUnit::class)
fun `test AGPInterface#variantScope`() = Unit

@Test
@Case(OriginalApplicationIdTestUnit::class)
fun `test AGPInterface#originalApplicationId`() = Unit
Expand Down Expand Up @@ -262,12 +258,6 @@ class VariantDataTestUnit : VariantTestCase() {
}
}

class VariantScopeTestUnit : VariantTestCase() {
override fun apply(variant: BaseVariant) {
assertNotNull(AGP.run { variant.variantScope })
}
}

class OriginalApplicationIdTestUnit : VariantTestCase() {
override fun apply(variant: BaseVariant) {
assertNotNull(AGP.run { variant.originalApplicationId })
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,7 @@ internal object V71 : AGPInterface {
isAccessible = true
}.invoke(this) as BaseVariantData

override val BaseVariant.variantScope: VariantScope
val BaseVariant.variantScope: VariantScope
get() = component.variantScope

@Suppress("DEPRECATION")
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -108,10 +108,6 @@ abstract class V72IntegrationTest(private val isLib: Boolean) {
@Case(VariantDataTestUnit::class)
fun `test AGPInterface#variantData`() = Unit

@Test
@Case(VariantScopeTestUnit::class)
fun `test AGPInterface#variantScope`() = Unit

@Test
@Case(OriginalApplicationIdTestUnit::class)
fun `test AGPInterface#originalApplicationId`() = Unit
Expand Down Expand Up @@ -267,12 +263,6 @@ class VariantDataTestUnit : VariantTestCase() {
}
}

class VariantScopeTestUnit : VariantTestCase() {
override fun apply(variant: BaseVariant) {
assertNotNull(AGP.run { variant.variantScope })
}
}

class OriginalApplicationIdTestUnit : VariantTestCase() {
override fun apply(variant: BaseVariant) {
assertNotNull(AGP.run { variant.originalApplicationId })
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@ internal object V72 : AGPInterface {
isAccessible = true
}.invoke(this) as BaseVariantData

override val BaseVariant.variantScope: VariantScope
val BaseVariant.variantScope: VariantScope
get() = component.variantScope

@Suppress("DEPRECATION")
Expand Down

0 comments on commit bde009f

Please sign in to comment.