From 6faed0e486ce6118cbc281d3dc506277c038ad2a Mon Sep 17 00:00:00 2001 From: Kir Kolyshkin Date: Thu, 15 Apr 2021 13:03:17 -0700 Subject: [PATCH] libct/int: use ok(t, err) ... in all the places it makes sense to use it. Signed-off-by: Kir Kolyshkin --- libcontainer/integration/checkpoint_test.go | 81 +++++---------------- libcontainer/integration/exec_test.go | 77 +++++--------------- libcontainer/integration/execin_test.go | 41 +++-------- libcontainer/integration/seccomp_test.go | 64 ++++------------ 4 files changed, 67 insertions(+), 196 deletions(-) diff --git a/libcontainer/integration/checkpoint_test.go b/libcontainer/integration/checkpoint_test.go index 96332e1fc..06e130608 100644 --- a/libcontainer/integration/checkpoint_test.go +++ b/libcontainer/integration/checkpoint_test.go @@ -62,15 +62,11 @@ func testCheckpoint(t *testing.T, userns bool) { } root, err := newTestRoot() - if err != nil { - t.Fatal(err) - } + ok(t, err) defer os.RemoveAll(root) rootfs, err := newRootfs() - if err != nil { - t.Fatal(err) - } + ok(t, err) defer remove(rootfs) config := newTemplateConfig(t, &tParam{ @@ -78,21 +74,14 @@ func testCheckpoint(t *testing.T, userns bool) { userns: userns, }) factory, err := libcontainer.New(root, libcontainer.Cgroupfs) - - if err != nil { - t.Fatal(err) - } + ok(t, err) container, err := factory.Create("test", config) - if err != nil { - t.Fatal(err) - } + ok(t, err) defer container.Destroy() stdinR, stdinW, err := os.Pipe() - if err != nil { - t.Fatal(err) - } + ok(t, err) var stdout bytes.Buffer @@ -108,24 +97,16 @@ func testCheckpoint(t *testing.T, userns bool) { err = container.Run(&pconfig) stdinR.Close() defer stdinW.Close() - if err != nil { - t.Fatal(err) - } + ok(t, err) pid, err := pconfig.Pid() - if err != nil { - t.Fatal(err) - } + ok(t, err) process, err := os.FindProcess(pid) - if err != nil { - t.Fatal(err) - } + ok(t, err) parentDir, err := ioutil.TempDir("", "criu-parent") - if err != nil { - t.Fatal(err) - } + ok(t, err) defer os.RemoveAll(parentDir) preDumpOpts := &libcontainer.CriuOpts{ @@ -141,18 +122,14 @@ func testCheckpoint(t *testing.T, userns bool) { } state, err := container.Status() - if err != nil { - t.Fatal(err) - } + ok(t, err) if state != libcontainer.Running { t.Fatal("Unexpected preDump state: ", state) } imagesDir, err := ioutil.TempDir("", "criu") - if err != nil { - t.Fatal(err) - } + ok(t, err) defer os.RemoveAll(imagesDir) checkpointOpts := &libcontainer.CriuOpts{ @@ -169,9 +146,7 @@ func testCheckpoint(t *testing.T, userns bool) { } state, err = container.Status() - if err != nil { - t.Fatal(err) - } + ok(t, err) if state != libcontainer.Stopped { t.Fatal("Unexpected state checkpoint: ", state) @@ -179,20 +154,14 @@ func testCheckpoint(t *testing.T, userns bool) { stdinW.Close() _, err = process.Wait() - if err != nil { - t.Fatal(err) - } + ok(t, err) // reload the container container, err = factory.Load("test") - if err != nil { - t.Fatal(err) - } + ok(t, err) restoreStdinR, restoreStdinW, err := os.Pipe() - if err != nil { - t.Fatal(err) - } + ok(t, err) var restoreStdout bytes.Buffer restoreProcessConfig := &libcontainer.Process{ @@ -211,33 +180,23 @@ func testCheckpoint(t *testing.T, userns bool) { } state, err = container.Status() - if err != nil { - t.Fatal(err) - } + ok(t, err) if state != libcontainer.Running { t.Fatal("Unexpected restore state: ", state) } pid, err = restoreProcessConfig.Pid() - if err != nil { - t.Fatal(err) - } + ok(t, err) _, err = os.FindProcess(pid) - if err != nil { - t.Fatal(err) - } + ok(t, err) _, err = restoreStdinW.WriteString("Hello!") - if err != nil { - t.Fatal(err) - } + ok(t, err) restoreStdinW.Close() s, err := restoreProcessConfig.Wait() - if err != nil { - t.Fatal(err) - } + ok(t, err) if !s.Success() { t.Fatal(s.String(), pid) diff --git a/libcontainer/integration/exec_test.go b/libcontainer/integration/exec_test.go index 8fef3d347..499a5b813 100644 --- a/libcontainer/integration/exec_test.go +++ b/libcontainer/integration/exec_test.go @@ -808,15 +808,11 @@ func TestContainerState(t *testing.T) { } rootfs, err := newRootfs() - if err != nil { - t.Fatal(err) - } + ok(t, err) defer remove(rootfs) l, err := os.Readlink("/proc/1/ns/ipc") - if err != nil { - t.Fatal(err) - } + ok(t, err) config := newTemplateConfig(t, &tParam{rootfs: rootfs}) config.Namespaces = configs.Namespaces([]configs.Namespace{ @@ -829,15 +825,12 @@ func TestContainerState(t *testing.T) { }) container, err := newContainer(t, config) - if err != nil { - t.Fatal(err) - } + ok(t, err) defer container.Destroy() stdinR, stdinW, err := os.Pipe() - if err != nil { - t.Fatal(err) - } + ok(t, err) + p := &libcontainer.Process{ Cwd: "/", Args: []string{"cat"}, @@ -846,21 +839,15 @@ func TestContainerState(t *testing.T) { Init: true, } err = container.Run(p) - if err != nil { - t.Fatal(err) - } + ok(t, err) stdinR.Close() defer stdinW.Close() st, err := container.State() - if err != nil { - t.Fatal(err) - } + ok(t, err) l1, err := os.Readlink(st.NamespacePaths[configs.NEWIPC]) - if err != nil { - t.Fatal(err) - } + ok(t, err) if l1 != l { t.Fatal("Container using non-host ipc namespace") } @@ -874,28 +861,20 @@ func TestPassExtraFiles(t *testing.T) { } rootfs, err := newRootfs() - if err != nil { - t.Fatal(err) - } + ok(t, err) defer remove(rootfs) config := newTemplateConfig(t, &tParam{rootfs: rootfs}) container, err := newContainer(t, config) - if err != nil { - t.Fatal(err) - } + ok(t, err) defer container.Destroy() var stdout bytes.Buffer pipeout1, pipein1, err := os.Pipe() - if err != nil { - t.Fatal(err) - } + ok(t, err) pipeout2, pipein2, err := os.Pipe() - if err != nil { - t.Fatal(err) - } + ok(t, err) process := libcontainer.Process{ Cwd: "/", Args: []string{"sh", "-c", "cd /proc/$$/fd; echo -n *; echo -n 1 >3; echo -n 2 >4"}, @@ -906,9 +885,7 @@ func TestPassExtraFiles(t *testing.T) { Init: true, } err = container.Run(&process) - if err != nil { - t.Fatal(err) - } + ok(t, err) waitProcess(&process, t) @@ -919,18 +896,14 @@ func TestPassExtraFiles(t *testing.T) { } var buf = []byte{0} _, err = pipeout1.Read(buf) - if err != nil { - t.Fatal(err) - } + ok(t, err) out1 := string(buf) if out1 != "1" { t.Fatalf("expected first pipe to receive '1', got '%s'", out1) } _, err = pipeout2.Read(buf) - if err != nil { - t.Fatal(err) - } + ok(t, err) out2 := string(buf) if out2 != "2" { t.Fatalf("expected second pipe to receive '2', got '%s'", out2) @@ -943,15 +916,11 @@ func TestMountCmds(t *testing.T) { } rootfs, err := newRootfs() - if err != nil { - t.Fatal(err) - } + ok(t, err) defer remove(rootfs) tmpDir, err := ioutil.TempDir("", "tmpdir") - if err != nil { - t.Fatal(err) - } + ok(t, err) defer os.RemoveAll(tmpDir) config := newTemplateConfig(t, &tParam{rootfs: rootfs}) @@ -971,9 +940,7 @@ func TestMountCmds(t *testing.T) { }) container, err := newContainer(t, config) - if err != nil { - t.Fatal(err) - } + ok(t, err) defer container.Destroy() pconfig := libcontainer.Process{ @@ -983,17 +950,13 @@ func TestMountCmds(t *testing.T) { Init: true, } err = container.Run(&pconfig) - if err != nil { - t.Fatal(err) - } + ok(t, err) // Wait for process waitProcess(&pconfig, t) entries, err := ioutil.ReadDir(tmpDir) - if err != nil { - t.Fatal(err) - } + ok(t, err) expected := []string{"hello", "hello-backup", "world", "world-backup"} for i, e := range entries { if e.Name() != expected[i] { diff --git a/libcontainer/integration/execin_test.go b/libcontainer/integration/execin_test.go index aaddf8de0..894e54f36 100644 --- a/libcontainer/integration/execin_test.go +++ b/libcontainer/integration/execin_test.go @@ -298,9 +298,7 @@ func TestExecInTTY(t *testing.T) { var stdout bytes.Buffer parent, child, err := utils.NewSockPair("console") - if err != nil { - ok(t, err) - } + ok(t, err) ps.ConsoleSocket = child done := make(chan (error)) @@ -415,22 +413,17 @@ func TestExecinPassExtraFiles(t *testing.T) { return } rootfs, err := newRootfs() - if err != nil { - t.Fatal(err) - } + ok(t, err) defer remove(rootfs) + config := newTemplateConfig(t, &tParam{rootfs: rootfs}) container, err := newContainer(t, config) - if err != nil { - t.Fatal(err) - } + ok(t, err) defer container.Destroy() // Execute a first process in the container stdinR, stdinW, err := os.Pipe() - if err != nil { - t.Fatal(err) - } + ok(t, err) process := &libcontainer.Process{ Cwd: "/", Args: []string{"cat"}, @@ -441,19 +434,13 @@ func TestExecinPassExtraFiles(t *testing.T) { err = container.Run(process) stdinR.Close() defer stdinW.Close() - if err != nil { - t.Fatal(err) - } + ok(t, err) var stdout bytes.Buffer pipeout1, pipein1, err := os.Pipe() - if err != nil { - t.Fatal(err) - } + ok(t, err) pipeout2, pipein2, err := os.Pipe() - if err != nil { - t.Fatal(err) - } + ok(t, err) inprocess := &libcontainer.Process{ Cwd: "/", Args: []string{"sh", "-c", "cd /proc/$$/fd; echo -n *; echo -n 1 >3; echo -n 2 >4"}, @@ -463,9 +450,7 @@ func TestExecinPassExtraFiles(t *testing.T) { Stdout: &stdout, } err = container.Run(inprocess) - if err != nil { - t.Fatal(err) - } + ok(t, err) waitProcess(inprocess, t) stdinW.Close() @@ -478,18 +463,14 @@ func TestExecinPassExtraFiles(t *testing.T) { } var buf = []byte{0} _, err = pipeout1.Read(buf) - if err != nil { - t.Fatal(err) - } + ok(t, err) out1 := string(buf) if out1 != "1" { t.Fatalf("expected first pipe to receive '1', got '%s'", out1) } _, err = pipeout2.Read(buf) - if err != nil { - t.Fatal(err) - } + ok(t, err) out2 := string(buf) if out2 != "2" { t.Fatalf("expected second pipe to receive '2', got '%s'", out2) diff --git a/libcontainer/integration/seccomp_test.go b/libcontainer/integration/seccomp_test.go index 2c9994bb9..288dc893c 100644 --- a/libcontainer/integration/seccomp_test.go +++ b/libcontainer/integration/seccomp_test.go @@ -18,9 +18,7 @@ func TestSeccompDenyGetcwdWithErrno(t *testing.T) { } rootfs, err := newRootfs() - if err != nil { - t.Fatal(err) - } + ok(t, err) defer remove(rootfs) errnoRet := uint(syscall.ESRCH) @@ -38,9 +36,7 @@ func TestSeccompDenyGetcwdWithErrno(t *testing.T) { } container, err := newContainer(t, config) - if err != nil { - t.Fatal(err) - } + ok(t, err) defer container.Destroy() buffers := newStdBuffers() @@ -55,9 +51,7 @@ func TestSeccompDenyGetcwdWithErrno(t *testing.T) { } err = container.Run(pwd) - if err != nil { - t.Fatal(err) - } + ok(t, err) ps, err := pwd.Wait() if err == nil { t.Fatal("Expecting error (negative return code); instead exited cleanly!") @@ -90,9 +84,7 @@ func TestSeccompDenyGetcwd(t *testing.T) { } rootfs, err := newRootfs() - if err != nil { - t.Fatal(err) - } + ok(t, err) defer remove(rootfs) config := newTemplateConfig(t, &tParam{rootfs: rootfs}) @@ -107,9 +99,7 @@ func TestSeccompDenyGetcwd(t *testing.T) { } container, err := newContainer(t, config) - if err != nil { - t.Fatal(err) - } + ok(t, err) defer container.Destroy() buffers := newStdBuffers() @@ -124,9 +114,7 @@ func TestSeccompDenyGetcwd(t *testing.T) { } err = container.Run(pwd) - if err != nil { - t.Fatal(err) - } + ok(t, err) ps, err := pwd.Wait() if err == nil { t.Fatal("Expecting error (negative return code); instead exited cleanly!") @@ -159,9 +147,7 @@ func TestSeccompPermitWriteConditional(t *testing.T) { } rootfs, err := newRootfs() - if err != nil { - t.Fatal(err) - } + ok(t, err) defer remove(rootfs) config := newTemplateConfig(t, &tParam{rootfs: rootfs}) @@ -183,9 +169,7 @@ func TestSeccompPermitWriteConditional(t *testing.T) { } container, err := newContainer(t, config) - if err != nil { - t.Fatal(err) - } + ok(t, err) defer container.Destroy() buffers := newStdBuffers() @@ -200,9 +184,7 @@ func TestSeccompPermitWriteConditional(t *testing.T) { } err = container.Run(dmesg) - if err != nil { - t.Fatal(err) - } + ok(t, err) if _, err := dmesg.Wait(); err != nil { t.Fatalf("%s: %s", err, buffers.Stderr) } @@ -221,9 +203,7 @@ func TestSeccompDenyWriteConditional(t *testing.T) { } rootfs, err := newRootfs() - if err != nil { - t.Fatal(err) - } + ok(t, err) defer remove(rootfs) config := newTemplateConfig(t, &tParam{rootfs: rootfs}) @@ -245,9 +225,7 @@ func TestSeccompDenyWriteConditional(t *testing.T) { } container, err := newContainer(t, config) - if err != nil { - t.Fatal(err) - } + ok(t, err) defer container.Destroy() buffers := newStdBuffers() @@ -262,9 +240,7 @@ func TestSeccompDenyWriteConditional(t *testing.T) { } err = container.Run(dmesg) - if err != nil { - t.Fatal(err) - } + ok(t, err) ps, err := dmesg.Wait() if err == nil { @@ -299,9 +275,7 @@ func TestSeccompPermitWriteMultipleConditions(t *testing.T) { } rootfs, err := newRootfs() - if err != nil { - t.Fatal(err) - } + ok(t, err) defer remove(rootfs) config := newTemplateConfig(t, &tParam{rootfs: rootfs}) @@ -354,9 +328,7 @@ func TestSeccompDenyWriteMultipleConditions(t *testing.T) { } rootfs, err := newRootfs() - if err != nil { - t.Fatal(err) - } + ok(t, err) defer remove(rootfs) config := newTemplateConfig(t, &tParam{rootfs: rootfs}) @@ -403,9 +375,7 @@ func TestSeccompMultipleConditionSameArgDeniesStdout(t *testing.T) { } rootfs, err := newRootfs() - if err != nil { - t.Fatal(err) - } + ok(t, err) defer remove(rootfs) // Prevent writing to both stdout and stderr @@ -451,9 +421,7 @@ func TestSeccompMultipleConditionSameArgDeniesStderr(t *testing.T) { } rootfs, err := newRootfs() - if err != nil { - t.Fatal(err) - } + ok(t, err) defer remove(rootfs) // Prevent writing to both stdout and stderr