diff options
| author | Paul Buetow <paul@buetow.org> | 2026-05-21 08:16:08 +0300 |
|---|---|---|
| committer | Paul Buetow <paul@buetow.org> | 2026-05-21 08:16:08 +0300 |
| commit | be8735fe701f7398c19c17c394f4827614eab875 (patch) | |
| tree | aba59890563edb6e03f2eb82fee5d89b49fa2c81 /internal/generate/tracepointsgo_test.go | |
| parent | 3a5706f21d30258577a5934efb93c400dad723db (diff) | |
p7 add attach-time trace dimension gating
Diffstat (limited to 'internal/generate/tracepointsgo_test.go')
| -rw-r--r-- | internal/generate/tracepointsgo_test.go | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/internal/generate/tracepointsgo_test.go b/internal/generate/tracepointsgo_test.go index 978633b..ebad63d 100644 --- a/internal/generate/tracepointsgo_test.go +++ b/internal/generate/tracepointsgo_test.go @@ -51,6 +51,8 @@ func TestExtractTracepoints(t *testing.T) { requireContains(t, output, `"sys_enter_close",`) requireContains(t, output, `"sys_exit_close",`) requireContains(t, output, "var List = []string{") + requireContains(t, output, "var syscallFamilies = map[string]string{") + requireContains(t, output, "var syscallKinds = map[string]string{") // Should NOT contain ignore comments or defines if strings.Contains(output, "kill") { @@ -78,6 +80,8 @@ func TestExtractTracepointsEmpty(t *testing.T) { t.Fatal(err) } requireContains(t, output, "var List = []string{") + requireContains(t, output, "var syscallFamilies = map[string]string{") + requireContains(t, output, "var syscallKinds = map[string]string{") requireContains(t, output, "}") } @@ -115,7 +119,25 @@ func TestExtractTracepointsNoSECLines(t *testing.T) { t.Fatalf("unexpected error: %v", err) } requireContains(t, output, "var List = []string{") + requireContains(t, output, "var syscallFamilies = map[string]string{") + requireContains(t, output, "var syscallKinds = map[string]string{") if strings.Contains(output, `"sys_`) { t.Error("input with no SEC lines should produce empty list") } } + +func TestExtractTracepointsWithKinds(t *testing.T) { + kindData := `sys_enter_read is a struct fd_event +sys_enter_open_by_handle_at is a struct open_by_handle_at_event +sys_enter_mq_open is a struct mq_open_event +sys_enter_epoll_ctl is a struct epoll_ctl_event +` + output, err := ExtractTracepointsWithKinds(strings.NewReader(sampleGeneratedC), strings.NewReader(kindData)) + if err != nil { + t.Fatalf("ExtractTracepointsWithKinds failed: %v", err) + } + requireContains(t, output, `"read": "fd",`) + requireContains(t, output, `"open_by_handle_at": "open-by-handle-at",`) + requireContains(t, output, `"mq_open": "mq-open",`) + requireContains(t, output, `"epoll_ctl": "epoll-ctl",`) +} |
