forked from togettoyou/hub-mirror
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcli_test.go
89 lines (73 loc) · 3.23 KB
/
cli_test.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
package pkg
import (
"testing"
"github.com/stretchr/testify/assert"
)
func TestSource2Target(t *testing.T) {
cli := &Cli{
username: "togettoyou",
repository: "",
}
output, err := cli.Source2Target("", "")
assert.Nil(t, output)
source := "registry.k8s.io/kube-apiserver"
output, err = cli.Source2Target(source, "")
assert.Nil(t, err)
assert.Equal(t, source, output.Source)
assert.Equal(t, "docker.io/togettoyou/registry.k8s.io.kube-apiserver", output.Target)
source = "registry.k8s.io/kube-apiserver:v1.27.4"
output, err = cli.Source2Target(source, "")
assert.Nil(t, err)
assert.Equal(t, source, output.Source)
assert.Equal(t, "docker.io/togettoyou/registry.k8s.io.kube-apiserver:v1.27.4", output.Target)
source = "registry.k8s.io/kube-apiserver$kube-apiserver"
output, err = cli.Source2Target(source, "")
assert.Nil(t, err)
assert.Equal(t, "registry.k8s.io/kube-apiserver", output.Source)
assert.Equal(t, "docker.io/togettoyou/kube-apiserver", output.Target)
source = "registry.k8s.io/kube-apiserver:v1.27.4$kube-apiserver"
output, err = cli.Source2Target(source, "")
assert.Nil(t, err)
assert.Equal(t, "registry.k8s.io/kube-apiserver:v1.27.4", output.Source)
assert.Equal(t, "docker.io/togettoyou/kube-apiserver:v1.27.4", output.Target)
source = "registry.k8s.io/kube-apiserver:v1.27.4$kube-apiserver:mytag"
output, err = cli.Source2Target(source, "")
assert.Nil(t, err)
assert.Equal(t, "registry.k8s.io/kube-apiserver:v1.27.4", output.Source)
assert.Equal(t, "docker.io/togettoyou/kube-apiserver:mytag", output.Target)
source = "nginx@sha256:123456$nginx"
output, err = cli.Source2Target(source, "")
assert.Nil(t, err)
assert.Equal(t, "nginx@sha256:123456", output.Source)
assert.Equal(t, "docker.io/togettoyou/nginx:123456", output.Target)
source = "nginx@sha256:123456$nginx:mytag"
output, err = cli.Source2Target(source, "")
assert.Nil(t, err)
assert.Equal(t, "nginx@sha256:123456", output.Source)
assert.Equal(t, "docker.io/togettoyou/nginx:mytag", output.Target)
source = "golang"
output, err = cli.Source2Target(source, "linux/arm64/v8")
assert.Nil(t, err)
assert.Equal(t, "golang", output.Source)
assert.Equal(t, "docker.io/togettoyou/golang-linux-arm64-v8", output.Target)
source = "golang:1.21.6"
output, err = cli.Source2Target(source, "linux/arm64/v8")
assert.Nil(t, err)
assert.Equal(t, "golang:1.21.6", output.Source)
assert.Equal(t, "docker.io/togettoyou/golang-linux-arm64-v8:1.21.6", output.Target)
source = "golang:1.21.6$mygolang"
output, err = cli.Source2Target(source, "linux/arm64/v8")
assert.Nil(t, err)
assert.Equal(t, "golang:1.21.6", output.Source)
assert.Equal(t, "docker.io/togettoyou/mygolang-linux-arm64-v8:1.21.6", output.Target)
source = "golang:1.21.6$mygolang:1.21.6arm64"
output, err = cli.Source2Target(source, "linux/arm64/v8")
assert.Nil(t, err)
assert.Equal(t, "golang:1.21.6", output.Source)
assert.Equal(t, "docker.io/togettoyou/mygolang-linux-arm64-v8:1.21.6arm64", output.Target)
source = "registry.k8s.io/kube-apiserver:v1.27.4"
output, err = cli.Source2Target(source, "arm64")
assert.Nil(t, err)
assert.Equal(t, "registry.k8s.io/kube-apiserver:v1.27.4", output.Source)
assert.Equal(t, "docker.io/togettoyou/registry.k8s.io.kube-apiserver-arm64:v1.27.4", output.Target)
}