@@ -133,10 +133,13 @@ class CrossVersionOutcomeAndRelocationTest extends AbstractTest {
133133 def isAndroid35xOrHigher = androidVersion >= android(" 3.5.0" )
134134 def isAndroid350to352 = androidVersion >= android(" 3.5.0" ) && androidVersion <= android(" 3.5.2" )
135135 def isAndroid35x = androidVersion >= android(" 3.5.0" ) && androidVersion < android(" 3.6.0" )
136- def isAndroid35xTo36x= androidVersion >= android(" 3.5.0" ) && androidVersion <= android(" 3.6.3" )
136+ def isAndroid35xTo36x = androidVersion >= android(" 3.5.0" ) && androidVersion <= android(" 3.6.3" )
137+ def isAndroid35xTo40x = androidVersion >= android(" 3.5.0" ) && androidVersion <= android(" 4.1.0-alpha01" )
137138 def isAndroid36x = androidVersion >= android(" 3.6.0" ) && androidVersion < android(" 4.0.0-alpha01" )
138139 def isAndroid36xOrHigher = androidVersion >= android(" 3.6.0" )
139140 def isAndroid40xOrHigher = androidVersion >= android(" 4.0.0-beta01" )
141+ def isAndroid40x = androidVersion >= android(" 4.0.0" ) && androidVersion < android(" 4.1.0-alpha01" )
142+ def isAndroid41xOrHigher = androidVersion >= android(" 4.1.0-alpha01" )
140143 def builder = new ExpectedOutcomeBuilder ()
141144
142145 // Applies to anything 3.5.0 or higher
@@ -174,6 +177,19 @@ class CrossVersionOutcomeAndRelocationTest extends AbstractTest {
174177 android40xOrHigherExpectations(builder)
175178 }
176179
180+ if (isAndroid35xTo40x ) {
181+ android35xTo40xExpectations(builder)
182+ }
183+
184+ if (isAndroid40x ) {
185+ android40xOnlyExpectations(builder)
186+ }
187+
188+ // Applies to anything 4.1.0 or higher
189+ if (isAndroid41xOrHigher) {
190+ android41xOrHigherExpectations(builder)
191+ }
192+
177193 new ExpectedResults (
178194 builder. build()
179195 )
@@ -197,8 +213,6 @@ class CrossVersionOutcomeAndRelocationTest extends AbstractTest {
197213 builder. expect(' :app:compileReleaseSources' , UP_TO_DATE )
198214 builder. expect(' :app:createDebugCompatibleScreenManifests' , FROM_CACHE )
199215 builder. expect(' :app:createReleaseCompatibleScreenManifests' , FROM_CACHE )
200- builder. expect(' :app:dataBindingExportFeaturePackageIdsDebug' , FROM_CACHE )
201- builder. expect(' :app:dataBindingExportFeaturePackageIdsRelease' , FROM_CACHE )
202216 builder. expect(' :app:dataBindingGenBaseClassesDebug' , FROM_CACHE )
203217 builder. expect(' :app:dataBindingGenBaseClassesRelease' , FROM_CACHE )
204218 builder. expect(' :app:dataBindingMergeDependencyArtifactsDebug' , FROM_CACHE )
@@ -207,12 +221,10 @@ class CrossVersionOutcomeAndRelocationTest extends AbstractTest {
207221 builder. expect(' :app:generateDebugBuildConfig' , FROM_CACHE )
208222 builder. expect(' :app:generateDebugResValues' , FROM_CACHE )
209223 builder. expect(' :app:generateDebugResources' , UP_TO_DATE )
210- builder. expect(' :app:generateDebugSources' , SUCCESS )
211224 builder. expect(' :app:generateReleaseAssets' , UP_TO_DATE )
212225 builder. expect(' :app:generateReleaseBuildConfig' , FROM_CACHE )
213226 builder. expect(' :app:generateReleaseResValues' , FROM_CACHE )
214227 builder. expect(' :app:generateReleaseResources' , UP_TO_DATE )
215- builder. expect(' :app:generateReleaseSources' , SUCCESS )
216228 builder. expect(' :app:javaPreCompileDebug' , FROM_CACHE )
217229 builder. expect(' :app:javaPreCompileRelease' , FROM_CACHE )
218230 builder. expect(' :app:kaptGenerateStubsDebugKotlin' , FROM_CACHE )
@@ -240,7 +252,6 @@ class CrossVersionOutcomeAndRelocationTest extends AbstractTest {
240252 builder. expect(' :app:preDebugBuild' , UP_TO_DATE )
241253 builder. expect(' :app:preReleaseBuild' , UP_TO_DATE )
242254 builder. expect(' :app:prepareLintJar' , SUCCESS )
243- builder. expect(' :app:prepareLintJarForPublish' , SUCCESS )
244255 builder. expect(' :app:processDebugJavaRes' , NO_SOURCE )
245256 builder. expect(' :app:processDebugManifest' , FROM_CACHE )
246257 builder. expect(' :app:processReleaseJavaRes' , NO_SOURCE )
@@ -274,13 +285,11 @@ class CrossVersionOutcomeAndRelocationTest extends AbstractTest {
274285 builder. expect(' :library:generateDebugRFile' , FROM_CACHE )
275286 builder. expect(' :library:generateDebugResValues' , FROM_CACHE )
276287 builder. expect(' :library:generateDebugResources' , UP_TO_DATE )
277- builder. expect(' :library:generateDebugSources' , SUCCESS )
278288 builder. expect(' :library:generateReleaseAssets' , UP_TO_DATE )
279289 builder. expect(' :library:generateReleaseBuildConfig' , FROM_CACHE )
280290 builder. expect(' :library:generateReleaseRFile' , FROM_CACHE )
281291 builder. expect(' :library:generateReleaseResValues' , FROM_CACHE )
282292 builder. expect(' :library:generateReleaseResources' , UP_TO_DATE )
283- builder. expect(' :library:generateReleaseSources' , SUCCESS )
284293 builder. expect(' :library:javaPreCompileDebug' , FROM_CACHE )
285294 builder. expect(' :library:javaPreCompileRelease' , FROM_CACHE )
286295 builder. expect(' :library:kaptGenerateStubsDebugKotlin' , FROM_CACHE )
@@ -304,7 +313,6 @@ class CrossVersionOutcomeAndRelocationTest extends AbstractTest {
304313 builder. expect(' :library:preBuild' , UP_TO_DATE )
305314 builder. expect(' :library:preDebugBuild' , UP_TO_DATE )
306315 builder. expect(' :library:preReleaseBuild' , UP_TO_DATE )
307- builder. expect(' :library:prepareLintJar' , SUCCESS )
308316 builder. expect(' :library:prepareLintJarForPublish' , SUCCESS )
309317 builder. expect(' :library:processDebugJavaRes' , NO_SOURCE )
310318 builder. expect(' :library:processDebugManifest' , FROM_CACHE )
@@ -348,6 +356,17 @@ class CrossVersionOutcomeAndRelocationTest extends AbstractTest {
348356 builder. expect(' :library:mergeReleaseGeneratedProguardFiles' , SUCCESS )
349357 }
350358
359+ static void android35xTo40xExpectations (ExpectedOutcomeBuilder builder ) {
360+ builder. expect(' :app:prepareLintJarForPublish' , SUCCESS )
361+ builder. expect(' :app:dataBindingExportFeaturePackageIdsDebug' , FROM_CACHE )
362+ builder. expect(' :app:dataBindingExportFeaturePackageIdsRelease' , FROM_CACHE )
363+ builder. expect(' :app:generateDebugSources' , SUCCESS )
364+ builder. expect(' :app:generateReleaseSources' , SUCCESS )
365+ builder. expect(' :library:generateDebugSources' , SUCCESS )
366+ builder. expect(' :library:generateReleaseSources' , SUCCESS )
367+ builder. expect(' :library:prepareLintJar' , SUCCESS )
368+ }
369+
351370 static void android35xOnlyExpectations (ExpectedOutcomeBuilder builder ) {
352371 builder. expect(' :app:checkDebugManifest' , SUCCESS )
353372 builder. expect(' :app:checkReleaseManifest' , SUCCESS )
@@ -405,8 +424,6 @@ class CrossVersionOutcomeAndRelocationTest extends AbstractTest {
405424 static void android40xOrHigherExpectations (ExpectedOutcomeBuilder builder ) {
406425 builder. expect(' :app:compileDebugShaders' , NO_SOURCE )
407426 builder. expect(' :app:compileReleaseShaders' , NO_SOURCE )
408- builder. expect(' :app:dataBindingExportBuildInfoDebug' , FROM_CACHE )
409- builder. expect(' :app:dataBindingExportBuildInfoRelease' , FROM_CACHE )
410427 builder. expect(' :app:dataBindingMergeGenClassesDebug' , FROM_CACHE )
411428 builder. expect(' :app:dataBindingMergeGenClassesRelease' , FROM_CACHE )
412429 builder. expect(' :app:mergeDebugResources' , SUCCESS )
@@ -417,8 +434,6 @@ class CrossVersionOutcomeAndRelocationTest extends AbstractTest {
417434 builder. expect(' :library:compileDebugShaders' , NO_SOURCE )
418435 builder. expect(' :library:compileReleaseLibraryResources' , SUCCESS )
419436 builder. expect(' :library:compileReleaseShaders' , NO_SOURCE )
420- builder. expect(' :library:dataBindingExportBuildInfoDebug' , FROM_CACHE )
421- builder. expect(' :library:dataBindingExportBuildInfoRelease' , FROM_CACHE )
422437 builder. expect(' :library:dataBindingMergeGenClassesDebug' , FROM_CACHE )
423438 builder. expect(' :library:dataBindingMergeGenClassesRelease' , FROM_CACHE )
424439 builder. expect(' :library:mergeDebugConsumerProguardFiles' , FROM_CACHE )
@@ -434,4 +449,26 @@ class CrossVersionOutcomeAndRelocationTest extends AbstractTest {
434449 builder. expect(' :app:collectReleaseDependencies' , SUCCESS )
435450 builder. expect(' :app:sdkReleaseDependencyData' , SUCCESS )
436451 }
452+
453+ static void android41xOrHigherExpectations (ExpectedOutcomeBuilder builder ) {
454+ builder. expect(' :library:dataBindingTriggerDebug' , FROM_CACHE )
455+ builder. expect(' :library:dataBindingTriggerRelease' , FROM_CACHE )
456+ builder. expect(' :app:dataBindingTriggerDebug' , FROM_CACHE )
457+ builder. expect(' :app:processDebugMainManifest' , FROM_CACHE )
458+ builder. expect(' :app:processDebugManifestForPackage' , FROM_CACHE )
459+ builder. expect(' :app:dataBindingTriggerRelease' , FROM_CACHE )
460+ builder. expect(' :app:processReleaseMainManifest' , FROM_CACHE )
461+ builder. expect(' :app:processReleaseManifestForPackage' , FROM_CACHE )
462+ builder. expect(' :app:compressDebugAssets' , FROM_CACHE )
463+ builder. expect(' :app:compressReleaseAssets' , FROM_CACHE )
464+ builder. expect(' :app:mergeDebugNativeDebugMetadata' , NO_SOURCE )
465+ builder. expect(' :app:mergeReleaseNativeDebugMetadata' , NO_SOURCE )
466+ }
467+
468+ static void android40xOnlyExpectations (ExpectedOutcomeBuilder builder ) {
469+ builder. expect(' :app:dataBindingExportBuildInfoDebug' , FROM_CACHE )
470+ builder. expect(' :app:dataBindingExportBuildInfoRelease' , FROM_CACHE )
471+ builder. expect(' :library:dataBindingExportBuildInfoDebug' , FROM_CACHE )
472+ builder. expect(' :library:dataBindingExportBuildInfoRelease' , FROM_CACHE )
473+ }
437474}
0 commit comments