diff options
| author | 2019-07-09 18:04:49 +0000 | |
|---|---|---|
| committer | 2019-07-09 18:04:49 +0000 | |
| commit | 94e90c696e2cc7d50f2665a21f3fa41c37ef3414 (patch) | |
| tree | dd65ca4ea7a80149163f409dbc7147a185f2bde9 | |
| parent | bc53fefd6ab4ab36e7fc9d996092e020e3843575 (diff) | |
| parent | 61a83681c4caf0381a70915d6c28425299007e29 (diff) | |
Merge "Add sh_test_host."
| -rw-r--r-- | android/sh_binary.go | 12 | ||||
| -rw-r--r-- | android/sh_binary_test.go | 21 |
2 files changed, 33 insertions, 0 deletions
diff --git a/android/sh_binary.go b/android/sh_binary.go index fb7446dcc..2855aa040 100644 --- a/android/sh_binary.go +++ b/android/sh_binary.go @@ -29,6 +29,7 @@ func init() { RegisterModuleType("sh_binary", ShBinaryFactory) RegisterModuleType("sh_binary_host", ShBinaryHostFactory) RegisterModuleType("sh_test", ShTestFactory) + RegisterModuleType("sh_test_host", ShTestHostFactory) } type shBinaryProperties struct { @@ -195,6 +196,7 @@ func ShBinaryHostFactory() Module { return module } +// sh_test defines a shell script based test module. func ShTestFactory() Module { module := &ShTest{} InitShBinaryModule(&module.ShBinary) @@ -203,3 +205,13 @@ func ShTestFactory() Module { InitAndroidArchModule(module, HostAndDeviceSupported, MultilibFirst) return module } + +// sh_test_host defines a shell script based test module that runs on a host. +func ShTestHostFactory() Module { + module := &ShTest{} + InitShBinaryModule(&module.ShBinary) + module.AddProperties(&module.testProperties) + + InitAndroidArchModule(module, HostSupported, MultilibFirst) + return module +} diff --git a/android/sh_binary_test.go b/android/sh_binary_test.go index c99e18c3e..9df769ca2 100644 --- a/android/sh_binary_test.go +++ b/android/sh_binary_test.go @@ -10,6 +10,7 @@ func testShBinary(t *testing.T, bp string) (*TestContext, Config) { ctx := NewTestArchContext() ctx.RegisterModuleType("sh_test", ModuleFactoryAdaptor(ShTestFactory)) + ctx.RegisterModuleType("sh_test_host", ModuleFactoryAdaptor(ShTestHostFactory)) ctx.Register() mockFiles := map[string][]byte{ "Android.bp": []byte(bp), @@ -48,3 +49,23 @@ func TestShTestTestData(t *testing.T) { t.Errorf("Unexpected test data expected: %q, actual: %q", expected, actual) } } + +func TestShTestHost(t *testing.T) { + ctx, _ := testShBinary(t, ` + sh_test_host { + name: "foo", + src: "test.sh", + filename: "test.sh", + data: [ + "testdata/data1", + "testdata/sub/data2", + ], + } + `) + + buildOS := BuildOs.String() + mod := ctx.ModuleForTests("foo", buildOS+"_x86_64").Module().(*ShTest) + if !mod.Host() { + t.Errorf("host bit is not set for a sh_test_host module.") + } +} |