diff options
author | Nan Zhang <nanzhang@google.com> | 2017-05-10 13:37:54 -0700 |
---|---|---|
committer | Nan Zhang <nanzhang@google.com> | 2017-05-17 11:26:00 -0700 |
commit | 5323f8e32f9e08def4a68608510062c464ed4c1e (patch) | |
tree | 5c44e3cc7343a74e054171ee72c94856ce6257d1 /python/test.go | |
parent | 2c13abc95e3e2c6c12fff6aa42262ef3296c2a1b (diff) | |
download | build_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.go | 54 |
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) +} |