@@ -11,56 +11,88 @@ import (
1111)
1212
1313func 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
78109func 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