aboutsummaryrefslogtreecommitdiffhomepage
path: root/container/params_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'container/params_test.go')
-rw-r--r--container/params_test.go72
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) })
- })
}