Loading android/testing.go +5 −0 Original line number Diff line number Diff line Loading @@ -117,6 +117,11 @@ var PrepareForTestWithAllowMissingDependencies = GroupFixturePreparers( }), ) // Prepares a test that disallows non-existent paths. var PrepareForTestDisallowNonExistentPaths = FixtureModifyConfig(func(config Config) { config.TestAllowNonExistentPaths = false }) func NewTestArchContext(config Config) *TestContext { ctx := NewTestContext(config) ctx.preDeps = append(ctx.preDeps, registerArchMutator) Loading apex/apex_test.go +6 −7 Original line number Diff line number Diff line Loading @@ -144,7 +144,6 @@ var apexFixtureFactory = android.NewFixtureFactory( "a.java": nil, "PrebuiltAppFoo.apk": nil, "PrebuiltAppFooPriv.apk": nil, "build/make/target/product/security": nil, "apex_manifest.json": nil, "AndroidManifest.xml": nil, "system/sepolicy/apex/myapex-file_contexts": nil, Loading java/java_test.go +25 −27 Original line number Diff line number Diff line Loading @@ -133,6 +133,15 @@ func defaultModuleToPath(name string) string { } } // Test that the PrepareForTestWithJavaDefaultModules provides all the files that it uses by // running it in a fixture that requires all source files to exist. func TestPrepareForTestWithJavaDefaultModules(t *testing.T) { android.GroupFixturePreparers( PrepareForTestWithJavaDefaultModules, android.PrepareForTestDisallowNonExistentPaths, ).RunTest(t) } func TestJavaLinkType(t *testing.T) { testJava(t, ` java_library { Loading Loading @@ -1220,9 +1229,11 @@ func TestJavaLintWithoutBaseline(t *testing.T) { } func TestJavaLintRequiresCustomLintFileToExist(t *testing.T) { config := TestConfig(t.TempDir(), nil, ` android.GroupFixturePreparers( PrepareForTestWithJavaDefaultModules, android.PrepareForTestDisallowNonExistentPaths, ).ExtendWithErrorHandler(android.FixtureExpectsAllErrorsToMatchAPattern([]string{`source path "mybaseline.xml" does not exist`})). RunTestWithBp(t, ` java_library { name: "foo", srcs: [ Loading @@ -1233,20 +1244,7 @@ func TestJavaLintRequiresCustomLintFileToExist(t *testing.T) { baseline_filename: "mybaseline.xml", }, } `, map[string][]byte{ "build/soong/java/lint_defaults.txt": nil, "prebuilts/cmdline-tools/tools/bin/lint": nil, "prebuilts/cmdline-tools/tools/lib/lint-classpath.jar": nil, "framework/aidl": nil, "a.java": nil, "AndroidManifest.xml": nil, "build/make/target/product/security": nil, }) config.TestAllowNonExistentPaths = false testJavaErrorWithConfig(t, "source path \"mybaseline.xml\" does not exist", config, ) `) } func TestJavaLintUsesCorrectBpConfig(t *testing.T) { Loading java/testing.go +17 −0 Original line number Diff line number Diff line Loading @@ -45,12 +45,29 @@ var PrepareForTestWithJavaBuildComponents = android.GroupFixturePreparers( // Make java build components available to the test. android.FixtureRegisterWithContext(registerRequiredBuildComponentsForTest), android.FixtureRegisterWithContext(registerJavaPluginBuildComponents), // Additional files needed in tests that disallow non-existent source files. // This includes files that are needed by all, or at least most, instances of a java module type. android.MockFS{ // Needed for linter used by java_library. "build/soong/java/lint_defaults.txt": nil, // Needed for apps that do not provide their own. "build/make/target/product/security": nil, }.AddToFixture(), ) // Test fixture preparer that will define default java modules, e.g. standard prebuilt modules. var PrepareForTestWithJavaDefaultModules = android.GroupFixturePreparers( // Make sure that all the module types used in the defaults are registered. PrepareForTestWithJavaBuildComponents, // Additional files needed when test disallows non-existent source. android.MockFS{ // Needed for framework-res defaultJavaDir + "/AndroidManifest.xml": nil, // Needed for framework defaultJavaDir + "/framework/aidl": nil, // Needed for various deps defined in GatherRequiredDepsForTest() defaultJavaDir + "/a.java": nil, }.AddToFixture(), // The java default module definitions. android.FixtureAddTextFile(defaultJavaDir+"/Android.bp", gatherRequiredDepsForTest()), // Add dexpreopt compat libs (android.test.base, etc.) and a fake dex2oatd module. Loading sdk/testing.go +0 −1 Original line number Diff line number Diff line Loading @@ -44,7 +44,6 @@ var prepareForSdkTestWithApex = android.GroupFixturePreparers( `), android.FixtureMergeMockFs(map[string][]byte{ "build/make/target/product/security": nil, "apex_manifest.json": nil, "system/sepolicy/apex/myapex-file_contexts": nil, "system/sepolicy/apex/myapex2-file_contexts": nil, Loading Loading
android/testing.go +5 −0 Original line number Diff line number Diff line Loading @@ -117,6 +117,11 @@ var PrepareForTestWithAllowMissingDependencies = GroupFixturePreparers( }), ) // Prepares a test that disallows non-existent paths. var PrepareForTestDisallowNonExistentPaths = FixtureModifyConfig(func(config Config) { config.TestAllowNonExistentPaths = false }) func NewTestArchContext(config Config) *TestContext { ctx := NewTestContext(config) ctx.preDeps = append(ctx.preDeps, registerArchMutator) Loading
apex/apex_test.go +6 −7 Original line number Diff line number Diff line Loading @@ -144,7 +144,6 @@ var apexFixtureFactory = android.NewFixtureFactory( "a.java": nil, "PrebuiltAppFoo.apk": nil, "PrebuiltAppFooPriv.apk": nil, "build/make/target/product/security": nil, "apex_manifest.json": nil, "AndroidManifest.xml": nil, "system/sepolicy/apex/myapex-file_contexts": nil, Loading
java/java_test.go +25 −27 Original line number Diff line number Diff line Loading @@ -133,6 +133,15 @@ func defaultModuleToPath(name string) string { } } // Test that the PrepareForTestWithJavaDefaultModules provides all the files that it uses by // running it in a fixture that requires all source files to exist. func TestPrepareForTestWithJavaDefaultModules(t *testing.T) { android.GroupFixturePreparers( PrepareForTestWithJavaDefaultModules, android.PrepareForTestDisallowNonExistentPaths, ).RunTest(t) } func TestJavaLinkType(t *testing.T) { testJava(t, ` java_library { Loading Loading @@ -1220,9 +1229,11 @@ func TestJavaLintWithoutBaseline(t *testing.T) { } func TestJavaLintRequiresCustomLintFileToExist(t *testing.T) { config := TestConfig(t.TempDir(), nil, ` android.GroupFixturePreparers( PrepareForTestWithJavaDefaultModules, android.PrepareForTestDisallowNonExistentPaths, ).ExtendWithErrorHandler(android.FixtureExpectsAllErrorsToMatchAPattern([]string{`source path "mybaseline.xml" does not exist`})). RunTestWithBp(t, ` java_library { name: "foo", srcs: [ Loading @@ -1233,20 +1244,7 @@ func TestJavaLintRequiresCustomLintFileToExist(t *testing.T) { baseline_filename: "mybaseline.xml", }, } `, map[string][]byte{ "build/soong/java/lint_defaults.txt": nil, "prebuilts/cmdline-tools/tools/bin/lint": nil, "prebuilts/cmdline-tools/tools/lib/lint-classpath.jar": nil, "framework/aidl": nil, "a.java": nil, "AndroidManifest.xml": nil, "build/make/target/product/security": nil, }) config.TestAllowNonExistentPaths = false testJavaErrorWithConfig(t, "source path \"mybaseline.xml\" does not exist", config, ) `) } func TestJavaLintUsesCorrectBpConfig(t *testing.T) { Loading
java/testing.go +17 −0 Original line number Diff line number Diff line Loading @@ -45,12 +45,29 @@ var PrepareForTestWithJavaBuildComponents = android.GroupFixturePreparers( // Make java build components available to the test. android.FixtureRegisterWithContext(registerRequiredBuildComponentsForTest), android.FixtureRegisterWithContext(registerJavaPluginBuildComponents), // Additional files needed in tests that disallow non-existent source files. // This includes files that are needed by all, or at least most, instances of a java module type. android.MockFS{ // Needed for linter used by java_library. "build/soong/java/lint_defaults.txt": nil, // Needed for apps that do not provide their own. "build/make/target/product/security": nil, }.AddToFixture(), ) // Test fixture preparer that will define default java modules, e.g. standard prebuilt modules. var PrepareForTestWithJavaDefaultModules = android.GroupFixturePreparers( // Make sure that all the module types used in the defaults are registered. PrepareForTestWithJavaBuildComponents, // Additional files needed when test disallows non-existent source. android.MockFS{ // Needed for framework-res defaultJavaDir + "/AndroidManifest.xml": nil, // Needed for framework defaultJavaDir + "/framework/aidl": nil, // Needed for various deps defined in GatherRequiredDepsForTest() defaultJavaDir + "/a.java": nil, }.AddToFixture(), // The java default module definitions. android.FixtureAddTextFile(defaultJavaDir+"/Android.bp", gatherRequiredDepsForTest()), // Add dexpreopt compat libs (android.test.base, etc.) and a fake dex2oatd module. Loading
sdk/testing.go +0 −1 Original line number Diff line number Diff line Loading @@ -44,7 +44,6 @@ var prepareForSdkTestWithApex = android.GroupFixturePreparers( `), android.FixtureMergeMockFs(map[string][]byte{ "build/make/target/product/security": nil, "apex_manifest.json": nil, "system/sepolicy/apex/myapex-file_contexts": nil, "system/sepolicy/apex/myapex2-file_contexts": nil, Loading