summaryrefslogtreecommitdiff
path: root/rust/test.go
diff options
context:
space:
mode:
author Chih-Hung Hsieh <chh@google.com> 2019-11-22 20:22:35 -0800
committer Chih-hung Hsieh <chh@google.com> 2019-12-02 17:44:53 +0000
commitede57ae8122992e788be7977803926e76e35b466 (patch)
tree69072fa345ac192c934e30db151ff9fcffb406c3 /rust/test.go
parent01178ed7d15f995e19d441964deee6ba6e1eac7e (diff)
Generate tradefed config for rust device tests.
* The RustBinaryTest runner and device test config template are derived from GTest. Device tests are pushed to /data/local/tmp. Bug: 140938178 Test: make unicode-xid projects; run atest Change-Id: Idb4cab7872b48c6e25bc59b85aa6d9dece4383ec
Diffstat (limited to 'rust/test.go')
-rw-r--r--rust/test.go25
1 files changed, 19 insertions, 6 deletions
diff --git a/rust/test.go b/rust/test.go
index cb64e8f83..b3911036a 100644
--- a/rust/test.go
+++ b/rust/test.go
@@ -69,15 +69,28 @@ func (test *testDecorator) compilerProps() []interface{} {
return append(test.binaryDecorator.compilerProps(), &test.Properties)
}
+func (test *testDecorator) getMutatedModuleSubName(moduleName string) string {
+ stem := String(test.baseCompiler.Properties.Stem)
+ if stem != "" && !strings.HasSuffix(moduleName, "_"+stem) {
+ // Avoid repeated suffix in the module name.
+ return "_" + stem
+ }
+ return ""
+}
+
func (test *testDecorator) install(ctx ModuleContext, file android.Path) {
name := ctx.ModuleName() // default executable name
- if stem := String(test.baseCompiler.Properties.Stem); stem != "" {
- name = stem
- }
- if path := test.baseCompiler.relativeInstallPath(); path != "" {
- name = path + "/" + name
+ if ctx.Device() { // on device, use mutated module name
+ name = name + test.getMutatedModuleSubName(name)
+ } else { // on host, use stem name in relative_install_path
+ if stem := String(test.baseCompiler.Properties.Stem); stem != "" {
+ name = stem
+ }
+ if path := test.baseCompiler.relativeInstallPath(); path != "" {
+ name = path + "/" + name
+ }
}
- test.testConfig = tradefed.AutoGenRustHostTestConfig(ctx, name,
+ test.testConfig = tradefed.AutoGenRustTestConfig(ctx, name,
test.Properties.Test_config,
test.Properties.Test_config_template,
test.Properties.Test_suites,