Merge pull request #5248 from unclejack/more_info_testtop

provide more information when TestTop tests fail
This commit is contained in:
Michael Crosby 2014-04-16 18:54:04 -07:00
commit 8e67197267
1 changed files with 20 additions and 4 deletions

View File

@ -18,14 +18,22 @@ func TestTopNonPrivileged(t *testing.T) {
out, _, err = runCommandWithOutput(topCmd)
errorOut(err, t, fmt.Sprintf("failed to run top: %v %v", out, err))
topCmd = exec.Command(dockerBinary, "top", cleanedContainerID)
out2, _, err2 := runCommandWithOutput(topCmd)
errorOut(err, t, fmt.Sprintf("failed to run top: %v %v", out2, err2))
killCmd := exec.Command(dockerBinary, "kill", cleanedContainerID)
_, err = runCommand(killCmd)
errorOut(err, t, fmt.Sprintf("failed to kill container: %v", err))
deleteContainer(cleanedContainerID)
if !strings.Contains(out, "sleep 20") {
t.Fatal("top should've listed sleep 20 in the process list")
if !strings.Contains(out, "sleep 20") && !strings.Contains(out2, "sleep 20") {
t.Fatal("top should've listed `sleep 20` in the process list, but failed twice")
} else if !strings.Contains(out, "sleep 20") {
t.Fatal("top should've listed `sleep 20` in the process list, but failed the first time")
} else if !strings.Contains(out2, "sleep 20") {
t.Fatal("top should've listed `sleep 20` in the process list, but failed the second itime")
}
logDone("top - sleep process should be listed in non privileged mode")
@ -42,14 +50,22 @@ func TestTopPrivileged(t *testing.T) {
out, _, err = runCommandWithOutput(topCmd)
errorOut(err, t, fmt.Sprintf("failed to run top: %v %v", out, err))
topCmd = exec.Command(dockerBinary, "top", cleanedContainerID)
out2, _, err2 := runCommandWithOutput(topCmd)
errorOut(err, t, fmt.Sprintf("failed to run top: %v %v", out2, err2))
killCmd := exec.Command(dockerBinary, "kill", cleanedContainerID)
_, err = runCommand(killCmd)
errorOut(err, t, fmt.Sprintf("failed to kill container: %v", err))
deleteContainer(cleanedContainerID)
if !strings.Contains(out, "sleep 20") {
t.Fatal("top should've listed sleep 20 in the process list")
if !strings.Contains(out, "sleep 20") && !strings.Contains(out2, "sleep 20") {
t.Fatal("top should've listed `sleep 20` in the process list, but failed twice")
} else if !strings.Contains(out, "sleep 20") {
t.Fatal("top should've listed `sleep 20` in the process list, but failed the first time")
} else if !strings.Contains(out2, "sleep 20") {
t.Fatal("top should've listed `sleep 20` in the process list, but failed the second itime")
}
logDone("top - sleep process should be listed in privileged mode")