@@ -2232,7 +2232,8 @@ public void IfAndroidJarDoesNotExistThrowXA5207 ()
22322232 public void ValidateUseLatestAndroid ( )
22332233 {
22342234 var path = Path . Combine ( "temp" , TestName ) ;
2235- var referencesPath = CreateFauxReferencesDirectory ( Path . Combine ( path , "xbuild-frameworks" ) , new ApiInfo [ ] {
2235+ var referencesPath = CreateFauxReferencesDirectory ( Path . Combine ( path , "xbuild-frameworks" ) , new ApiInfo [ ] {
2236+ new ApiInfo ( ) { Id = 23 , Level = 23 , Name = "Marshmallow" , FrameworkVersion = "v6.0" , Stable = true } ,
22362237 new ApiInfo ( ) { Id = 26 , Level = 26 , Name = "Oreo" , FrameworkVersion = "v8.0" , Stable = true } ,
22372238 new ApiInfo ( ) { Id = 27 , Level = 27 , Name = "Oreo" , FrameworkVersion = "v8.1" , Stable = false } ,
22382239 } ) ;
@@ -2241,33 +2242,36 @@ public void ValidateUseLatestAndroid ()
22412242 TargetFrameworkVersion = "v8.0" ,
22422243 UseLatestPlatformSdk = false ,
22432244 } ;
2245+ var targetFramework = new string [ ] {
2246+ $ "TargetFrameworkRootPath={ referencesPath } ",
2247+ } ;
2248+ var envVar = new Dictionary < string , string > {
2249+ { "XBUILD_FRAMEWORK_FOLDERS_PATH" , referencesPath } ,
2250+ } ;
22442251 using ( var builder = CreateApkBuilder ( Path . Combine ( path , proj . ProjectName ) ) ) {
22452252 builder . ThrowOnBuildFailure = false ;
22462253 builder . Target = "_SetLatestTargetFrameworkVersion" ;
2247- Assert . True ( builder . Build ( proj , parameters : new string [ ] {
2248- $ "TargetFrameworkRootPath={ referencesPath } ",
2249- } ) , string . Format ( "Build should have succeeded" ) ) ;
2250- Assert . IsTrue ( builder . LastBuildOutput . ContainsText ( "_TargetFrameworkVersion=v8.0" ) , "_TargetFrameworkVersion should be v8.0" ) ;
2254+ Assert . True ( builder . Build ( proj , parameters : targetFramework , environmentVariables : envVar ) ,
2255+ string . Format ( "First Build should have succeeded" ) ) ;
2256+ Assert . IsTrue ( builder . LastBuildOutput . ContainsOccurances ( "TargetFrameworkVersion: v8.0" , 2 ) , "TargetFrameworkVersion should be v8.0" ) ;
22512257
22522258 proj . TargetFrameworkVersion = "v8.1" ;
2253- Assert . True ( builder . Build ( proj , parameters : new string [ ] {
2254- $ "TargetFrameworkRootPath={ referencesPath } ",
2255- } ) , string . Format ( "Build should have succeeded" ) ) ;
2256- Assert . IsTrue ( builder . LastBuildOutput . ContainsText ( "_TargetFrameworkVersion=v8.1" ) , "_TargetFrameworkVersion should be v8.1" ) ;
2259+ Assert . True ( builder . Build ( proj , parameters : targetFramework , environmentVariables : envVar ) ,
2260+ string . Format ( "Second Build should have succeeded" ) ) ;
2261+ Assert . IsTrue ( builder . LastBuildOutput . ContainsOccurances ( "TargetFrameworkVersion: v8.1" , 2 ) , "TargetFrameworkVersion should be v8.1" ) ;
22572262
22582263 proj . UseLatestPlatformSdk = true ;
22592264 proj . TargetFrameworkVersion = "v8.1" ;
2260- Assert . True ( builder . Build ( proj , parameters : new string [ ] {
2261- $ "TargetFrameworkRootPath={ referencesPath } ",
2262- } ) , string . Format ( "Build should have succeeded" ) ) ;
2263- Assert . IsTrue ( builder . LastBuildOutput . ContainsText ( "_TargetFrameworkVersion=v8.1" ) , "_TargetFrameworkVersion should be v8.1" ) ;
2265+ Assert . True ( builder . Build ( proj , parameters : targetFramework , environmentVariables : envVar ) ,
2266+ string . Format ( "Third Build should have succeeded" ) ) ;
2267+ Assert . IsTrue ( builder . LastBuildOutput . ContainsOccurances ( "TargetFrameworkVersion: v8.1" , 2 ) , "TargetFrameworkVersion should be v8.1" ) ;
22642268
22652269 proj . UseLatestPlatformSdk = true ;
22662270 proj . TargetFrameworkVersion = "v6.0" ;
2267- Assert . True ( builder . Build ( proj , parameters : new string [ ] {
2268- $ "TargetFrameworkRootPath= { referencesPath } " ,
2269- } ) , string . Format ( "Build should have succeeded" ) ) ;
2270- Assert . IsTrue ( builder . LastBuildOutput . ContainsText ( "_TargetFrameworkVersion= v8.0" ) , "_TargetFrameworkVersion should be v8.0" ) ;
2271+ Assert . True ( builder . Build ( proj , parameters : targetFramework , environmentVariables : envVar ) ,
2272+ string . Format ( "Forth Build should have succeeded" ) ) ;
2273+ Assert . IsTrue ( builder . LastBuildOutput . ContainsOccurances ( "TargetFrameworkVersion: v6.0" , 1 ) , "TargetFrameworkVersion should initially be v6.0" ) ;
2274+ Assert . IsTrue ( builder . LastBuildOutput . ContainsOccurances ( "TargetFrameworkVersion: v8.0" , 1 ) , "TargetFrameworkVersion should be v8.0" ) ;
22712275
22722276
22732277 }
0 commit comments