Signed-off-by: xlgao-zju <xlgao@zju.edu.cn>
| ... | ... |
@@ -3,11 +3,11 @@ |
| 3 | 3 |
package main |
| 4 | 4 |
|
| 5 | 5 |
import ( |
| 6 |
- "bytes" |
|
| 7 | 6 |
"io/ioutil" |
| 8 | 7 |
"os" |
| 9 | 8 |
"os/exec" |
| 10 | 9 |
|
| 10 |
+ "github.com/docker/docker/pkg/integration/checker" |
|
| 11 | 11 |
"github.com/go-check/check" |
| 12 | 12 |
"github.com/kr/pty" |
| 13 | 13 |
) |
| ... | ... |
@@ -29,9 +29,8 @@ func (s *DockerSuite) TestSaveAndLoadRepoStdout(c *check.C) {
|
| 29 | 29 |
saveCmd := exec.Command(dockerBinary, "save", repoName) |
| 30 | 30 |
saveCmd.Stdout = tmpFile |
| 31 | 31 |
|
| 32 |
- if _, err = runCommand(saveCmd); err != nil {
|
|
| 33 |
- c.Fatalf("failed to save repo: %v", err)
|
|
| 34 |
- } |
|
| 32 |
+ _, err = runCommand(saveCmd) |
|
| 33 |
+ c.Assert(err, check.IsNil) |
|
| 35 | 34 |
|
| 36 | 35 |
tmpFile, err = os.Open(tmpFile.Name()) |
| 37 | 36 |
c.Assert(err, check.IsNil) |
| ... | ... |
@@ -41,41 +40,27 @@ func (s *DockerSuite) TestSaveAndLoadRepoStdout(c *check.C) {
|
| 41 | 41 |
loadCmd := exec.Command(dockerBinary, "load") |
| 42 | 42 |
loadCmd.Stdin = tmpFile |
| 43 | 43 |
|
| 44 |
- if out, _, err = runCommandWithOutput(loadCmd); err != nil {
|
|
| 45 |
- c.Fatalf("failed to load repo: %s, %v", out, err)
|
|
| 46 |
- } |
|
| 44 |
+ out, _, err = runCommandWithOutput(loadCmd) |
|
| 45 |
+ c.Assert(err, check.IsNil, check.Commentf(out)) |
|
| 47 | 46 |
|
| 48 | 47 |
after, _ := dockerCmd(c, "inspect", repoName) |
| 49 | 48 |
|
| 50 |
- if before != after {
|
|
| 51 |
- c.Fatalf("inspect is not the same after a save / load")
|
|
| 52 |
- } |
|
| 49 |
+ c.Assert(before, check.Equals, after) //inspect is not the same after a save / load |
|
| 53 | 50 |
|
| 54 | 51 |
deleteImages(repoName) |
| 55 | 52 |
|
| 56 | 53 |
pty, tty, err := pty.Open() |
| 57 |
- if err != nil {
|
|
| 58 |
- c.Fatalf("Could not open pty: %v", err)
|
|
| 59 |
- } |
|
| 54 |
+ c.Assert(err, check.IsNil) |
|
| 60 | 55 |
cmd := exec.Command(dockerBinary, "save", repoName) |
| 61 | 56 |
cmd.Stdin = tty |
| 62 | 57 |
cmd.Stdout = tty |
| 63 | 58 |
cmd.Stderr = tty |
| 64 |
- if err := cmd.Start(); err != nil {
|
|
| 65 |
- c.Fatalf("start err: %v", err)
|
|
| 66 |
- } |
|
| 67 |
- if err := cmd.Wait(); err == nil {
|
|
| 68 |
- c.Fatal("did not break writing to a TTY")
|
|
| 69 |
- } |
|
| 59 |
+ c.Assert(cmd.Start(), check.IsNil) |
|
| 60 |
+ c.Assert(cmd.Wait(), check.NotNil) //did not break writing to a TTY |
|
| 70 | 61 |
|
| 71 | 62 |
buf := make([]byte, 1024) |
| 72 | 63 |
|
| 73 | 64 |
n, err := pty.Read(buf) |
| 74 |
- if err != nil {
|
|
| 75 |
- c.Fatal("could not read tty output")
|
|
| 76 |
- } |
|
| 77 |
- |
|
| 78 |
- if !bytes.Contains(buf[:n], []byte("Cowardly refusing")) {
|
|
| 79 |
- c.Fatal("help output is not being yielded", out)
|
|
| 80 |
- } |
|
| 65 |
+ c.Assert(err, check.IsNil) //could not read tty output |
|
| 66 |
+ c.Assert(string(buf[:n]), checker.Contains, "Cowardly refusing", check.Commentf("help output is not being yielded", out))
|
|
| 81 | 67 |
} |