summaryrefslogtreecommitdiff
path: root/bpf/bpf_test.go
diff options
context:
space:
mode:
author Colin Cross <ccross@android.com> 2019-05-14 16:05:20 -0700
committer Colin Cross <ccross@android.com> 2019-05-17 08:43:36 -0700
commit815daf95b2a019cc997484841d318ee86e3f8c08 (patch)
treed1d141e594991c6349cbd724d4f94a71273edcdc /bpf/bpf_test.go
parent0d99f7cd8419a16132dc0aa3a6f37697dc473aad (diff)
Add bpf_test.go to build and fix tests
bpf_test.go was not listed in testSrcs, which meant it was not run during the build, but ran and failed with go test android/soong/... Don't redeclare the cc module types and mutators, use exported functions from cc/testing.go instead, which contain a new dependency needed by cc modules. This reapplies I4542640e8ff08e71565ed50617dbe67d86b29b69 after fixes for mac tests. Test: m Test: go test android/soong/... Change-Id: I3dc3fdedbd7063df4a2e0cadf2a4e0711b1823ad
Diffstat (limited to 'bpf/bpf_test.go')
-rw-r--r--bpf/bpf_test.go110
1 files changed, 5 insertions, 105 deletions
diff --git a/bpf/bpf_test.go b/bpf/bpf_test.go
index 1d53e4138..cbb251fad 100644
--- a/bpf/bpf_test.go
+++ b/bpf/bpf_test.go
@@ -20,7 +20,7 @@ import (
"testing"
"android/soong/android"
- cc2 "android/soong/cc"
+ "android/soong/cc"
)
var buildDir string
@@ -49,115 +49,14 @@ func TestMain(m *testing.M) {
}
func testContext(bp string) *android.TestContext {
- ctx := android.NewTestArchContext()
- ctx.RegisterModuleType("bpf", android.ModuleFactoryAdaptor(bpfFactory))
- ctx.RegisterModuleType("cc_test", android.ModuleFactoryAdaptor(cc2.TestFactory))
- ctx.RegisterModuleType("cc_library", android.ModuleFactoryAdaptor(cc2.LibraryFactory))
- ctx.RegisterModuleType("cc_library_static", android.ModuleFactoryAdaptor(cc2.LibraryStaticFactory))
- ctx.RegisterModuleType("cc_object", android.ModuleFactoryAdaptor(cc2.ObjectFactory))
- ctx.RegisterModuleType("toolchain_library", android.ModuleFactoryAdaptor(cc2.ToolchainLibraryFactory))
- ctx.PreDepsMutators(func(ctx android.RegisterMutatorsContext) {
- ctx.BottomUp("link", cc2.LinkageMutator).Parallel()
- })
- ctx.Register()
-
- // Add some modules that are required by the compiler and/or linker
- bp = bp + `
- toolchain_library {
- name: "libatomic",
- vendor_available: true,
- recovery_available: true,
- src: "",
- }
-
- toolchain_library {
- name: "libclang_rt.builtins-arm-android",
- vendor_available: true,
- recovery_available: true,
- src: "",
- }
-
- toolchain_library {
- name: "libclang_rt.builtins-aarch64-android",
- vendor_available: true,
- recovery_available: true,
- src: "",
- }
-
- toolchain_library {
- name: "libgcc",
- vendor_available: true,
- recovery_available: true,
- src: "",
- }
-
- cc_library {
- name: "libc",
- no_libgcc: true,
- nocrt: true,
- system_shared_libs: [],
- recovery_available: true,
- }
-
- cc_library {
- name: "libm",
- no_libgcc: true,
- nocrt: true,
- system_shared_libs: [],
- recovery_available: true,
- }
-
- cc_library {
- name: "libdl",
- no_libgcc: true,
- nocrt: true,
- system_shared_libs: [],
- recovery_available: true,
- }
-
- cc_library {
- name: "libgtest",
- host_supported: true,
- vendor_available: true,
- }
-
- cc_library {
- name: "libgtest_main",
- host_supported: true,
- vendor_available: true,
- }
-
- cc_object {
- name: "crtbegin_dynamic",
- recovery_available: true,
- vendor_available: true,
- }
-
- cc_object {
- name: "crtend_android",
- recovery_available: true,
- vendor_available: true,
- }
-
- cc_object {
- name: "crtbegin_so",
- recovery_available: true,
- vendor_available: true,
- }
-
- cc_object {
- name: "crtend_so",
- recovery_available: true,
- vendor_available: true,
- }
- `
mockFS := map[string][]byte{
- "Android.bp": []byte(bp),
"bpf.c": nil,
"BpfTest.cpp": nil,
}
- ctx.MockFileSystem(mockFS)
+ ctx := cc.CreateTestContext(bp, mockFS, android.Android)
+ ctx.RegisterModuleType("bpf", android.ModuleFactoryAdaptor(bpfFactory))
+ ctx.Register()
return ctx
}
@@ -174,6 +73,7 @@ func TestBpfDataDependency(t *testing.T) {
name: "vts_test_binary_bpf_module",
srcs: ["BpfTest.cpp"],
data: [":bpf.o"],
+ gtest: false,
}
`