diff options
author | Treehugger Robot <treehugger-gerrit@google.com> | 2020-09-29 21:56:19 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2020-09-29 21:56:19 +0000 |
commit | 025ae97b0e6fdd59a8c3aa2f9f55bd1f6763b805 (patch) | |
tree | f5ac4c578f5367ca8dfd579b9bd009cde77eae6f /python | |
parent | 6c76f18aae0bb56ac25f8cb496282bf32bfb31a3 (diff) | |
parent | 31949121500fb6b22482e4e6d6aa1c21aa8a0ad8 (diff) |
Merge "Add support of test data to python_host_test"
Diffstat (limited to 'python')
-rw-r--r-- | python/androidmk.go | 8 | ||||
-rw-r--r-- | python/test.go | 12 |
2 files changed, 19 insertions, 1 deletions
diff --git a/python/androidmk.go b/python/androidmk.go index 247b80dc0..8ad5889b5 100644 --- a/python/androidmk.go +++ b/python/androidmk.go @@ -15,11 +15,12 @@ package python import ( - "android/soong/android" "fmt" "io" "path/filepath" "strings" + + "android/soong/android" ) type subAndroidMkProvider interface { @@ -74,6 +75,11 @@ func (p *testDecorator) AndroidMk(base *Module, ret *android.AndroidMkData) { if !BoolDefault(p.binaryProperties.Auto_gen_config, true) { fmt.Fprintln(w, "LOCAL_DISABLE_AUTO_GENERATE_TEST_CONFIG := true") } + + if len(p.data) > 0 { + fmt.Fprintln(w, "LOCAL_TEST_DATA :=", + strings.Join(android.AndroidMkDataPaths(p.data), " ")) + } }) base.subAndroidMk(ret, p.binaryDecorator.pythonInstaller) } diff --git a/python/test.go b/python/test.go index a669c73a6..434e71abf 100644 --- a/python/test.go +++ b/python/test.go @@ -34,6 +34,10 @@ type TestProperties struct { // the name of the test configuration template (for example "AndroidTestTemplate.xml") that // should be installed with the module. Test_config_template *string `android:"path,arch_variant"` + + // list of files or filegroup modules that provide data that should be installed alongside + // the test + Data []string `android:"path,arch_variant"` } type testDecorator struct { @@ -42,6 +46,8 @@ type testDecorator struct { testProperties TestProperties testConfig android.Path + + data []android.DataPath } func (test *testDecorator) bootstrapperProps() []interface{} { @@ -59,6 +65,12 @@ func (test *testDecorator) install(ctx android.ModuleContext, file android.Path) test.binaryDecorator.pythonInstaller.relative = ctx.ModuleName() test.binaryDecorator.pythonInstaller.install(ctx, file) + + dataSrcPaths := android.PathsForModuleSrc(ctx, test.testProperties.Data) + + for _, dataSrcPath := range dataSrcPaths { + test.data = append(test.data, android.DataPath{SrcPath: dataSrcPath}) + } } func NewTest(hod android.HostOrDeviceSupported) *Module { |