Add support for tests in APEX test modules.
Allow `tests` property in `apex_test` Soong modules. Test: m (`apex/apex_test.go` amended) Bug: 129534335 Change-Id: Ieeff7cf0980a7c394409632b6448102f59bceb3d
This commit is contained in:
@@ -57,6 +57,7 @@ func testApex(t *testing.T, bp string) *android.TestContext {
|
||||
ctx.RegisterModuleType("cc_library_headers", android.ModuleFactoryAdaptor(cc.LibraryHeaderFactory))
|
||||
ctx.RegisterModuleType("cc_binary", android.ModuleFactoryAdaptor(cc.BinaryFactory))
|
||||
ctx.RegisterModuleType("cc_object", android.ModuleFactoryAdaptor(cc.ObjectFactory))
|
||||
ctx.RegisterModuleType("cc_test", android.ModuleFactoryAdaptor(cc.TestFactory))
|
||||
ctx.RegisterModuleType("llndk_library", android.ModuleFactoryAdaptor(cc.LlndkLibraryFactory))
|
||||
ctx.RegisterModuleType("toolchain_library", android.ModuleFactoryAdaptor(cc.ToolchainLibraryFactory))
|
||||
ctx.RegisterModuleType("prebuilt_etc", android.ModuleFactoryAdaptor(android.PrebuiltEtcFactory))
|
||||
@@ -168,6 +169,7 @@ func testApex(t *testing.T, bp string) *android.TestContext {
|
||||
"system/sepolicy/apex/myapex_keytest-file_contexts": nil,
|
||||
"system/sepolicy/apex/otherapex-file_contexts": nil,
|
||||
"mylib.cpp": nil,
|
||||
"mytest.cpp": nil,
|
||||
"myprebuilt": nil,
|
||||
"my_include": nil,
|
||||
"vendor/foo/devkeys/test.x509.pem": nil,
|
||||
@@ -1285,6 +1287,40 @@ func TestPrebuiltFilenameOverride(t *testing.T) {
|
||||
}
|
||||
}
|
||||
|
||||
func TestApexWithTests(t *testing.T) {
|
||||
ctx := testApex(t, `
|
||||
apex_test {
|
||||
name: "myapex",
|
||||
key: "myapex.key",
|
||||
tests: [
|
||||
"mytest",
|
||||
],
|
||||
}
|
||||
|
||||
apex_key {
|
||||
name: "myapex.key",
|
||||
public_key: "testkey.avbpubkey",
|
||||
private_key: "testkey.pem",
|
||||
}
|
||||
|
||||
cc_test {
|
||||
name: "mytest",
|
||||
gtest: false,
|
||||
srcs: ["mytest.cpp"],
|
||||
relative_install_path: "test",
|
||||
system_shared_libs: [],
|
||||
static_executable: true,
|
||||
stl: "none",
|
||||
}
|
||||
`)
|
||||
|
||||
apexRule := ctx.ModuleForTests("myapex", "android_common_myapex").Rule("apexRule")
|
||||
copyCmds := apexRule.Args["copy_commands"]
|
||||
|
||||
// Ensure that test dep is copied into apex.
|
||||
ensureContains(t, copyCmds, "image.apex/bin/test/mytest")
|
||||
}
|
||||
|
||||
func TestMain(m *testing.M) {
|
||||
run := func() int {
|
||||
setUp()
|
||||
|
Reference in New Issue
Block a user