Skip to content

Commit fa6de12

Browse files
committed
pass: properly handle errors in tests
Signed-off-by: CrazyMax <[email protected]>
1 parent 8da5e10 commit fa6de12

File tree

1 file changed

+51
-22
lines changed

1 file changed

+51
-22
lines changed

pass/pass_test.go

Lines changed: 51 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -11,56 +11,88 @@ import (
1111
)
1212

1313
func TestPassHelper(t *testing.T) {
14-
helper := Pass{}
15-
1614
creds := &credentials.Credentials{
1715
ServerURL: "https://foobar.docker.io:2376/v1",
1816
Username: "nothing",
1917
Secret: "isthebestmeshuggahalbum",
2018
}
2119

20+
helper := Pass{}
2221
_ = helper.CheckInitialized()
2322

24-
helper.Add(creds)
23+
if err := helper.Add(creds); err != nil {
24+
t.Fatal(err)
25+
}
2526

26-
creds.ServerURL = "https://foobar.docker.io:9999/v2"
27-
helper.Add(creds)
27+
u, s, err := helper.Get(creds.ServerURL)
28+
if err != nil {
29+
t.Fatal(err)
30+
}
31+
if u != creds.Username {
32+
t.Fatalf("invalid username %s", u)
33+
}
34+
if s != creds.Secret {
35+
t.Fatalf("invalid secret: %s", s)
36+
}
37+
38+
if err = helper.Delete(creds.ServerURL); err != nil {
39+
t.Fatal(err)
40+
}
41+
if _, _, err = helper.Get(creds.ServerURL); !credentials.IsErrCredentialsNotFound(err) {
42+
t.Fatalf("expected credentials not found, actual: %v", err)
43+
}
44+
}
45+
46+
func TestPassHelperList(t *testing.T) {
47+
creds := []*credentials.Credentials{
48+
{
49+
ServerURL: "https://foobar.docker.io:2376/v1",
50+
Username: "foo",
51+
Secret: "isthebestmeshuggahalbum",
52+
},
53+
{
54+
ServerURL: "https://foobar.docker.io:2375/v1",
55+
Username: "bar",
56+
Secret: "isthebestmeshuggahalbum",
57+
},
58+
}
59+
60+
helper := Pass{}
61+
_ = helper.CheckInitialized()
62+
63+
for _, cred := range creds {
64+
if err := helper.Add(cred); err != nil {
65+
t.Fatal(err)
66+
}
67+
}
2868

2969
credsList, err := helper.List()
3070
if err != nil {
3171
t.Fatal(err)
3272
}
33-
3473
for server, username := range credsList {
35-
if !(strings.Contains(server, "2376") ||
36-
strings.Contains(server, "9999")) {
37-
t.Fatalf("invalid url: %s", creds.ServerURL)
74+
if !(strings.HasSuffix(server, "2376/v1") || strings.HasSuffix(server, "2375/v1")) {
75+
t.Fatalf("invalid url: %s", server)
3876
}
39-
40-
if username != "nothing" {
77+
if !(username == "foo" || username == "bar") {
4178
t.Fatalf("invalid username: %v", username)
4279
}
4380

4481
u, s, err := helper.Get(server)
4582
if err != nil {
4683
t.Fatal(err)
4784
}
48-
4985
if u != username {
5086
t.Fatalf("invalid username %s", u)
5187
}
52-
5388
if s != "isthebestmeshuggahalbum" {
5489
t.Fatalf("invalid secret: %s", s)
5590
}
5691

57-
err = helper.Delete(server)
58-
if err != nil {
92+
if err = helper.Delete(server); err != nil {
5993
t.Fatal(err)
6094
}
61-
62-
_, _, err = helper.Get(server)
63-
if !credentials.IsErrCredentialsNotFound(err) {
95+
if _, _, err = helper.Get(server); !credentials.IsErrCredentialsNotFound(err) {
6496
t.Fatalf("expected credentials not found, actual: %v", err)
6597
}
6698
}
@@ -69,17 +101,14 @@ func TestPassHelper(t *testing.T) {
69101
if err != nil {
70102
t.Fatal(err)
71103
}
72-
73104
if len(credsList) != 0 {
74105
t.Fatal("didn't delete all creds?")
75106
}
76107
}
77108

78109
func TestMissingCred(t *testing.T) {
79110
helper := Pass{}
80-
81-
_, _, err := helper.Get("garbage")
82-
if !credentials.IsErrCredentialsNotFound(err) {
111+
if _, _, err := helper.Get("garbage"); !credentials.IsErrCredentialsNotFound(err) {
83112
t.Fatalf("expected credentials not found, actual: %v", err)
84113
}
85114
}

0 commit comments

Comments
 (0)