summaryrefslogtreecommitdiff
path: root/integration-cli/docker_cli_push_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'integration-cli/docker_cli_push_test.go')
-rw-r--r--integration-cli/docker_cli_push_test.go48
1 files changed, 48 insertions, 0 deletions
diff --git a/integration-cli/docker_cli_push_test.go b/integration-cli/docker_cli_push_test.go
new file mode 100644
index 0000000000..160bb9e286
--- /dev/null
+++ b/integration-cli/docker_cli_push_test.go
@@ -0,0 +1,48 @@
+package main
+
+import (
+ "fmt"
+ "os/exec"
+ "testing"
+)
+
+// these tests need a freshly started empty private docker registry
+
+// pulling an image from the central registry should work
+func TestPushBusyboxImage(t *testing.T) {
+ // skip this test until we're able to use a registry
+ t.Skip()
+ // tag the image to upload it tot he private registry
+ repoName := fmt.Sprintf("%v/busybox", privateRegistryURL)
+ tagCmd := exec.Command(dockerBinary, "tag", "busybox", repoName)
+ out, exitCode, err := runCommandWithOutput(tagCmd)
+ errorOut(err, t, fmt.Sprintf("%v %v", out, err))
+
+ if err != nil || exitCode != 0 {
+ t.Fatal("image tagging failed")
+ }
+
+ pushCmd := exec.Command(dockerBinary, "push", repoName)
+ out, exitCode, err = runCommandWithOutput(pushCmd)
+ errorOut(err, t, fmt.Sprintf("%v %v", out, err))
+
+ deleteImages(repoName)
+
+ if err != nil || exitCode != 0 {
+ t.Fatal("pushing the image to the private registry has failed")
+ }
+ logDone("push - push busybox to private registry")
+}
+
+// pushing an image without a prefix should throw an error
+func TestPushUnprefixedRepo(t *testing.T) {
+ // skip this test until we're able to use a registry
+ t.Skip()
+ pushCmd := exec.Command(dockerBinary, "push", "busybox")
+ _, exitCode, err := runCommandWithOutput(pushCmd)
+
+ if err == nil || exitCode == 0 {
+ t.Fatal("pushing an unprefixed repo didn't result in a non-zero exit status")
+ }
+ logDone("push - push unprefixed busybox repo --> must fail")
+}