summaryrefslogtreecommitdiff
path: root/internal/eventloop_ipc_test.go
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2026-05-21 08:28:37 +0300
committerPaul Buetow <paul@buetow.org>2026-05-21 08:28:37 +0300
commita0d6f222864301c11afd9c1d3306e6bfe8446d5d (patch)
tree5c8c206146f5f41d930971284082cdc30e6b6a04 /internal/eventloop_ipc_test.go
parentbe8735fe701f7398c19c17c394f4827614eab875 (diff)
f7 wire eventfd kind for fd-from-air IPC syscalls
Diffstat (limited to 'internal/eventloop_ipc_test.go')
-rw-r--r--internal/eventloop_ipc_test.go24
1 files changed, 24 insertions, 0 deletions
diff --git a/internal/eventloop_ipc_test.go b/internal/eventloop_ipc_test.go
index eec819b..fc598a2 100644
--- a/internal/eventloop_ipc_test.go
+++ b/internal/eventloop_ipc_test.go
@@ -103,6 +103,30 @@ func TestHandleEventfdExitAppliesPairFilter(t *testing.T) {
}
}
+func TestEventfdDescriptorNameByTraceID(t *testing.T) {
+ tests := []struct {
+ name string
+ traceID types.TraceId
+ flags int32
+ want string
+ }{
+ {name: "eventfd", traceID: types.SYS_ENTER_EVENTFD2, flags: 1, want: "eventfd:1"},
+ {name: "memfd_create", traceID: types.SYS_ENTER_MEMFD_CREATE, flags: 2, want: "memfd:2"},
+ {name: "memfd_secret", traceID: types.SYS_ENTER_MEMFD_SECRET, flags: 3, want: "memfd-secret:3"},
+ {name: "userfaultfd", traceID: types.SYS_ENTER_USERFAULTFD, flags: 4, want: "userfaultfd:4"},
+ {name: "signalfd", traceID: types.SYS_ENTER_SIGNALFD4, flags: 5, want: "signalfd:5"},
+ {name: "timerfd_create", traceID: types.SYS_ENTER_TIMERFD_CREATE, flags: 6, want: "timerfd:6"},
+ }
+ for _, tt := range tests {
+ t.Run(tt.name, func(t *testing.T) {
+ got := eventfdDescriptorName(tt.traceID, tt.flags)
+ if got != tt.want {
+ t.Fatalf("eventfdDescriptorName(%s, %d) = %q, want %q", tt.traceID.String(), tt.flags, got, tt.want)
+ }
+ })
+ }
+}
+
func TestInitRawHandlersRegistersIPCEvents(t *testing.T) {
el := mustNewEventLoop(t, eventLoopConfig{})
if _, ok := el.rawHandlers[types.ENTER_PIPE_EVENT]; !ok {