diff options
author | Dan Shi <dshi@google.com> | 2020-11-18 04:40:37 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2020-11-18 04:40:37 +0000 |
commit | ebb51503a404a017050cf7ab74c2302e31b25116 (patch) | |
tree | 04ea6675e250c07f0c99df4818d3a13c1e80b8bd | |
parent | 6d41e995f31efe8d9ca2b39c56fafe25e0d79477 (diff) | |
parent | d79572f73e650d644099fbc60bbff156db0281d5 (diff) |
Merge "Add unit_test test option in test configs"
-rw-r--r-- | androidmk/androidmk/android.go | 2 | ||||
-rw-r--r-- | cc/androidmk.go | 3 | ||||
-rw-r--r-- | cc/test.go | 3 | ||||
-rw-r--r-- | java/androidmk.go | 3 | ||||
-rw-r--r-- | java/java.go | 3 | ||||
-rw-r--r-- | python/androidmk.go | 4 | ||||
-rw-r--r-- | python/test.go | 9 | ||||
-rw-r--r-- | rust/androidmk.go | 3 | ||||
-rw-r--r-- | rust/test.go | 9 |
9 files changed, 39 insertions, 0 deletions
diff --git a/androidmk/androidmk/android.go b/androidmk/androidmk/android.go index 739a9658f..4540a1f3d 100644 --- a/androidmk/androidmk/android.go +++ b/androidmk/androidmk/android.go @@ -214,6 +214,8 @@ func init() { "LOCAL_PRIVATE_PLATFORM_APIS": "platform_apis", "LOCAL_JETIFIER_ENABLED": "jetifier", + + "LOCAL_IS_UNIT_TEST": "unit_test", }) } diff --git a/cc/androidmk.go b/cc/androidmk.go index 2ade4e8f3..d32e4de8f 100644 --- a/cc/androidmk.go +++ b/cc/androidmk.go @@ -370,6 +370,9 @@ func (test *testBinary) AndroidMkEntries(ctx AndroidMkContext, entries *android. entries.SetBool("LOCAL_DISABLE_AUTO_GENERATE_TEST_CONFIG", true) } entries.AddStrings("LOCAL_TEST_MAINLINE_MODULES", test.Properties.Test_mainline_modules...) + if Bool(test.Properties.Test_options.Unit_test) { + entries.SetBool("LOCAL_IS_UNIT_TEST", true) + } }) androidMkWriteTestData(test.data, ctx, entries) diff --git a/cc/test.go b/cc/test.go index 619dc4d00..37726914b 100644 --- a/cc/test.go +++ b/cc/test.go @@ -46,6 +46,9 @@ type TestOptions struct { // a list of extra test configuration files that should be installed with the module. Extra_test_configs []string `android:"path,arch_variant"` + + // If the test is a hostside(no device required) unittest that shall be run during presubmit check. + Unit_test *bool } type TestBinaryProperties struct { diff --git a/java/androidmk.go b/java/androidmk.go index f263cb8e6..386a97f64 100644 --- a/java/androidmk.go +++ b/java/androidmk.go @@ -160,6 +160,9 @@ func (j *Test) AndroidMkEntries() []android.AndroidMkEntries { entries.SetString("LOCAL_DISABLE_AUTO_GENERATE_TEST_CONFIG", "true") } entries.AddStrings("LOCAL_TEST_MAINLINE_MODULES", j.testProperties.Test_mainline_modules...) + if Bool(j.testProperties.Test_options.Unit_test) { + entries.SetBool("LOCAL_IS_UNIT_TEST", true) + } }) return entriesList diff --git a/java/java.go b/java/java.go index 5ded041d4..a23c649c1 100644 --- a/java/java.go +++ b/java/java.go @@ -2226,6 +2226,9 @@ func LibraryHostFactory() android.Module { type TestOptions struct { // a list of extra test configuration files that should be installed with the module. Extra_test_configs []string `android:"path,arch_variant"` + + // If the test is a hostside(no device required) unittest that shall be run during presubmit check. + Unit_test *bool } type testProperties struct { diff --git a/python/androidmk.go b/python/androidmk.go index 8ad5889b5..040b6bef8 100644 --- a/python/androidmk.go +++ b/python/androidmk.go @@ -80,6 +80,10 @@ func (p *testDecorator) AndroidMk(base *Module, ret *android.AndroidMkData) { fmt.Fprintln(w, "LOCAL_TEST_DATA :=", strings.Join(android.AndroidMkDataPaths(p.data), " ")) } + + if Bool(p.testProperties.Test_options.Unit_test) { + fmt.Fprintln(w, "LOCAL_IS_UNIT_TEST := true") + } }) base.subAndroidMk(ret, p.binaryDecorator.pythonInstaller) } diff --git a/python/test.go b/python/test.go index 434e71abf..f9baa465c 100644 --- a/python/test.go +++ b/python/test.go @@ -26,6 +26,12 @@ func init() { android.RegisterModuleType("python_test", PythonTestFactory) } +// Test option struct. +type TestOptions struct { + // If the test is a hostside(no device required) unittest that shall be run during presubmit check. + Unit_test *bool +} + type TestProperties struct { // the name of the test configuration (for example "AndroidTest.xml") that should be // installed with the module. @@ -38,6 +44,9 @@ type TestProperties struct { // list of files or filegroup modules that provide data that should be installed alongside // the test Data []string `android:"path,arch_variant"` + + // Test options. + Test_options TestOptions } type testDecorator struct { diff --git a/rust/androidmk.go b/rust/androidmk.go index 29e4bd75b..f98360a32 100644 --- a/rust/androidmk.go +++ b/rust/androidmk.go @@ -116,6 +116,9 @@ func (test *testDecorator) AndroidMk(ctx AndroidMkContext, ret *android.AndroidM if !BoolDefault(test.Properties.Auto_gen_config, true) { fmt.Fprintln(w, "LOCAL_DISABLE_AUTO_GENERATE_TEST_CONFIG := true") } + if Bool(test.Properties.Test_options.Unit_test) { + fmt.Fprintln(w, "LOCAL_IS_UNIT_TEST := true") + } }) // TODO(chh): add test data with androidMkWriteTestData(test.data, ctx, ret) } diff --git a/rust/test.go b/rust/test.go index bc7f53c7c..408e03a6d 100644 --- a/rust/test.go +++ b/rust/test.go @@ -19,6 +19,12 @@ import ( "android/soong/tradefed" ) +// Test option struct. +type TestOptions struct { + // If the test is a hostside(no device required) unittest that shall be run during presubmit check. + Unit_test *bool +} + type TestProperties struct { // Disables the creation of a test-specific directory when used with // relative_install_path. Useful if several tests need to be in the same @@ -44,6 +50,9 @@ type TestProperties struct { // if set, build with the standard Rust test harness. Defaults to true. Test_harness *bool + + // Test options. + Test_options TestOptions } // A test module is a binary module with extra --test compiler flag |