aboutsummaryrefslogtreecommitdiff
path: root/bpf/libbpf/libbpf_prog_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'bpf/libbpf/libbpf_prog_test.go')
-rw-r--r--bpf/libbpf/libbpf_prog_test.go25
1 files changed, 25 insertions, 0 deletions
diff --git a/bpf/libbpf/libbpf_prog_test.go b/bpf/libbpf/libbpf_prog_test.go
index 2b3b37841..bfe2d62b5 100644
--- a/bpf/libbpf/libbpf_prog_test.go
+++ b/bpf/libbpf/libbpf_prog_test.go
@@ -16,6 +16,7 @@ package libbpf_prog
import (
"os"
+ "strings"
"testing"
"android/soong/android"
@@ -68,3 +69,27 @@ func TestLibbpfProgSourceName(t *testing.T) {
`invalid character '_' in source name`)).
RunTestWithBp(t, bp)
}
+
+func TestLibbpfProgVendor(t *testing.T) {
+ bp := `
+ libbpf_prog {
+ name: "bpf.bpf",
+ srcs: ["bpf.c"],
+ vendor: true,
+ relative_install_path: "prefix",
+ }
+ `
+
+ result := prepareForLibbpfProgTest.RunTestWithBp(t, bp)
+ module := result.ModuleForTests(t, "bpf.bpf", "android_vendor_arm64_armv8-a").Module().(*libbpfProg)
+ data := android.AndroidMkDataForTest(t, result.TestContext, module)
+ name := module.BaseModuleName()
+ var builder strings.Builder
+ data.Custom(&builder, name, "", "", data)
+ androidMk := android.StringRelativeToTop(result.Config, builder.String())
+
+ expected := "LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_ETC)/bpf/prefix"
+ if !strings.Contains(androidMk, expected) {
+ t.Errorf("%q is not found in %q", expected, androidMk)
+ }
+}