diff options
Diffstat (limited to 'container/params_test.go')
| -rw-r--r-- | container/params_test.go | 72 |
1 files changed, 0 insertions, 72 deletions
diff --git a/container/params_test.go b/container/params_test.go index 11d08850..4d2f84f6 100644 --- a/container/params_test.go +++ b/container/params_test.go @@ -1,10 +1,8 @@ package container_test import ( - "encoding/gob" "errors" "os" - "slices" "strconv" "syscall" "testing" @@ -52,74 +50,4 @@ func TestSetupReceive(t *testing.T) { t.Errorf("Receive: error = %v, want %v", err, syscall.EDOM) } }) - - t.Run("setup receive", func(t *testing.T) { - check := func(t *testing.T, useNilFdp bool) { - const key = "TEST_SETUP_RECEIVE" - payload := []uint64{syscall.MS_MGC_VAL, syscall.MS_MGC_MSK, syscall.MS_ASYNC, syscall.MS_ACTIVE} - - encoderDone := make(chan error, 1) - extraFiles := make([]*os.File, 0, 1) - deadline, _ := t.Deadline() - if fd, f, err := container.Setup(&extraFiles); err != nil { - t.Fatalf("Setup: error = %v", err) - } else if fd != 3 { - t.Fatalf("Setup: fd = %d, want 3", fd) - } else { - if err = f.SetDeadline(deadline); err != nil { - t.Fatal(err.Error()) - } - go func() { encoderDone <- gob.NewEncoder(f).Encode(payload) }() - } - - if len(extraFiles) != 1 { - t.Fatalf("extraFiles: len = %v, want 1", len(extraFiles)) - } - - var dupFd int - if fd, err := syscall.Dup(int(extraFiles[0].Fd())); err != nil { - t.Fatalf("Dup: error = %v", err) - } else { - syscall.CloseOnExec(fd) - dupFd = fd - t.Setenv(key, strconv.Itoa(fd)) - } - - var ( - gotPayload []uint64 - fdp *uintptr - ) - if !useNilFdp { - fdp = new(uintptr) - } - var closeFile func() error - if f, err := container.Receive(key, &gotPayload, fdp); err != nil { - t.Fatalf("Receive: error = %v", err) - } else { - closeFile = f - - if !slices.Equal(payload, gotPayload) { - t.Errorf("Receive: %#v, want %#v", gotPayload, payload) - } - } - if !useNilFdp { - if int(*fdp) != dupFd { - t.Errorf("Fd: %d, want %d", *fdp, dupFd) - } - } - - if err := <-encoderDone; err != nil { - t.Errorf("Encode: error = %v", err) - } - - if closeFile != nil { - if err := closeFile(); err != nil { - t.Errorf("Close: error = %v", err) - } - } - } - - t.Run("fp", func(t *testing.T) { check(t, false) }) - t.Run("nil", func(t *testing.T) { check(t, true) }) - }) } |
