Remove incorrect strict test for test-suites for test_module_config
I misunderstood our desire to eventually migrate all `test_module_config` modules -> "general-tests" for the requirement that it must be used now. While working on converting these modules to use symlinks rather than copies of data files, I noticed a problem if the derived test was in "general-tests", but the base test was in "device-tests". The symlink would not have a base to point to in general-tests.zip. Allow the derived tests to be in other suites for now. Test: go test ./tradefed_modules/ Test: m blueprint_tests Change-Id: I9524d6c3964db6de38fc3c4cb4c5bc493dadc0db
This commit is contained in:
parent
0dd436cd0a
commit
b4a4ef9d23
2 changed files with 5 additions and 47 deletions
|
@ -160,35 +160,17 @@ func (m *testModuleConfigModule) GenerateAndroidBuildActions(ctx android.ModuleC
|
|||
|
||||
}
|
||||
|
||||
// Any test suites in base should not be repeated in the derived class, except "general-tests".
|
||||
// We may restrict derived tests to only be "general-tests" as it doesn't make sense to add a slice
|
||||
// of a test to compatibility suite.
|
||||
// Ensure at least one test_suite is listed. Ideally it should be general-tests
|
||||
// or device-tests, whichever is listed in base and prefer general-tests if both are listed.
|
||||
// However this is not enforced yet.
|
||||
//
|
||||
// Returns ErrorMessage, false on problems
|
||||
// Returns _, true if okay.
|
||||
// Returns true if okay and reports errors via ModuleErrorf.
|
||||
func (m *testModuleConfigModule) validateTestSuites(ctx android.ModuleContext) bool {
|
||||
if len(m.tradefedProperties.Test_suites) == 0 {
|
||||
ctx.ModuleErrorf("At least one test-suite must be set or this won't run. Use \"general-tests\"")
|
||||
ctx.ModuleErrorf("At least one test-suite must be set or this won't run. Use \"general-tests\" or \"device-tests\"")
|
||||
return false
|
||||
}
|
||||
|
||||
derivedSuites := make(map[string]bool)
|
||||
// See if any suites in base is also in derived (other than general-tests)
|
||||
for _, s := range m.tradefedProperties.Test_suites {
|
||||
if s != "general-tests" {
|
||||
derivedSuites[s] = true
|
||||
}
|
||||
}
|
||||
if len(derivedSuites) == 0 {
|
||||
return true
|
||||
}
|
||||
for _, baseSuite := range m.provider.TestSuites {
|
||||
if derivedSuites[baseSuite] {
|
||||
ctx.ModuleErrorf("TestSuite %s exists in the base, do not add it here", baseSuite)
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
return true
|
||||
}
|
||||
|
||||
|
|
|
@ -325,30 +325,6 @@ func TestModuleConfigHostNeedsATestSuite(t *testing.T) {
|
|||
RunTestWithBp(t, badBp)
|
||||
}
|
||||
|
||||
func TestModuleConfigHostDuplicateTestSuitesGiveErrors(t *testing.T) {
|
||||
badBp := `
|
||||
java_test_host {
|
||||
name: "base",
|
||||
srcs: ["a.java"],
|
||||
test_suites: ["general-tests", "some-compat"],
|
||||
}
|
||||
|
||||
test_module_config_host {
|
||||
name: "derived_test",
|
||||
base: "base",
|
||||
exclude_filters: ["android.test.example.devcodelab.DevCodelabTest#testHelloFail"],
|
||||
include_annotations: ["android.platform.test.annotations.LargeTest"],
|
||||
test_suites: ["general-tests", "some-compat"],
|
||||
}`
|
||||
|
||||
android.GroupFixturePreparers(
|
||||
java.PrepareForTestWithJavaDefaultModules,
|
||||
android.FixtureRegisterWithContext(RegisterTestModuleConfigBuildComponents),
|
||||
).ExtendWithErrorHandler(
|
||||
android.FixtureExpectsAtLeastOneErrorMatchingPattern("TestSuite some-compat exists in the base")).
|
||||
RunTestWithBp(t, badBp)
|
||||
}
|
||||
|
||||
func TestTestOnlyProvider(t *testing.T) {
|
||||
t.Parallel()
|
||||
ctx := android.GroupFixturePreparers(
|
||||
|
|
Loading…
Reference in a new issue