aboutsummaryrefslogtreecommitdiffstats
path: root/python/test.go
diff options
context:
space:
mode:
authorNan Zhang <nanzhang@google.com>2017-05-10 13:37:54 -0700
committerNan Zhang <nanzhang@google.com>2017-05-17 11:26:00 -0700
commit5323f8e32f9e08def4a68608510062c464ed4c1e (patch)
tree5c44e3cc7343a74e054171ee72c94856ce6257d1 /python/test.go
parent2c13abc95e3e2c6c12fff6aa42262ef3296c2a1b (diff)
downloadbuild_soong-5323f8e32f9e08def4a68608510062c464ed4c1e.tar.gz
build_soong-5323f8e32f9e08def4a68608510062c464ed4c1e.tar.bz2
build_soong-5323f8e32f9e08def4a68608510062c464ed4c1e.zip
Add python_test_host module.
bug: 31676493 Test: created py_test modules in real folder. and ran 'mma'. Change-Id: I22aa2fad74b11e4a31ea7a4c4a4f0ea64cd3fc94
Diffstat (limited to 'python/test.go')
-rw-r--r--python/test.go54
1 files changed, 54 insertions, 0 deletions
diff --git a/python/test.go b/python/test.go
new file mode 100644
index 00000000..83184383
--- /dev/null
+++ b/python/test.go
@@ -0,0 +1,54 @@
+// Copyright 2017 Google Inc. All rights reserved.
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+package python
+
+import (
+ "android/soong/android"
+ "path/filepath"
+
+ "github.com/google/blueprint"
+)
+
+// This file contains the module types for building Python test.
+
+func init() {
+ android.RegisterModuleType("python_test_host", PythonTestHostFactory)
+}
+
+type PythonTestHost struct {
+ pythonBinaryBase
+}
+
+var _ PythonSubModule = (*PythonTestHost)(nil)
+
+type pythonTestHostDecorator struct {
+ pythonDecorator
+}
+
+func (p *pythonTestHostDecorator) install(ctx android.ModuleContext, file android.Path) {
+ p.pythonDecorator.baseInstaller.dir = filepath.Join("nativetest", ctx.ModuleName())
+ p.pythonDecorator.baseInstaller.install(ctx, file)
+}
+
+func PythonTestHostFactory() (blueprint.Module, []interface{}) {
+ decorator := &pythonTestHostDecorator{
+ pythonDecorator: pythonDecorator{baseInstaller: NewPythonInstaller("nativetest")}}
+
+ module := &PythonBinaryHost{}
+ module.pythonBaseModule.installer = decorator
+
+ return InitPythonBaseModule(&module.pythonBinaryBase.pythonBaseModule,
+ &module.pythonBinaryBase, android.HostSupportedNoCross, &module.binaryProperties)
+}