diff --git a/builder/docker/exec_test.go b/builder/docker/exec_test.go new file mode 100644 index 000000000..c035c9eaf --- /dev/null +++ b/builder/docker/exec_test.go @@ -0,0 +1,24 @@ +package docker + +import ( + "testing" +) + +func TestCleanLine(t *testing.T) { + cases := []struct { + input string + output string + }{ + { + "\x1b[0A\x1b[2K\r8dbd9e392a96: Pulling image (precise) from ubuntu\r\x1b[0B\x1b[1A\x1b[2K\r8dbd9e392a96: Pulling image (precise) from ubuntu, endpoint: https://cdn-registry-1.docker.io/v1/\r\x1b[1B", + "8dbd9e392a96: Pulling image (precise) from ubuntu, endpoint: https://cdn-registry-1.docker.io/v1/", + }, + } + + for _, tc := range cases { + actual := cleanOutputLine(tc.input) + if actual != tc.output { + t.Fatalf("bad: %#v %#v", tc.input, actual) + } + } +}