1+ //go:build !windows
2+
13package pass
24
35import (
@@ -8,75 +10,115 @@ import (
810)
911
1012func TestPassHelper (t * testing.T ) {
11- helper := Pass {}
12-
1313 creds := & credentials.Credentials {
1414 ServerURL : "https://foobar.docker.io:2376/v1" ,
1515 Username : "nothing" ,
1616 Secret : "isthebestmeshuggahalbum" ,
1717 }
1818
19- _ = helper .CheckInitialized ()
19+ helper := Pass {}
20+ if err := helper .checkInitialized (); err != nil {
21+ t .Error (err )
22+ }
23+
24+ if err := helper .Add (creds ); err != nil {
25+ t .Error (err )
26+ }
27+
28+ u , s , err := helper .Get (creds .ServerURL )
29+ if err != nil {
30+ t .Error (err )
31+ }
32+ if u != creds .Username {
33+ t .Errorf ("invalid username %s" , u )
34+ }
35+ if s != creds .Secret {
36+ t .Errorf ("invalid secret: %s" , s )
37+ }
38+
39+ if err := helper .Delete (creds .ServerURL ); err != nil {
40+ t .Error (err )
41+ }
42+ if _ , _ , err := helper .Get (creds .ServerURL ); ! credentials .IsErrCredentialsNotFound (err ) {
43+ t .Errorf ("expected credentials not found, actual: %v" , err )
44+ }
45+ }
46+
47+ func TestPassHelperCheckInit (t * testing.T ) {
48+ helper := Pass {}
49+ if v := helper .CheckInitialized (); ! v {
50+ t .Errorf ("expected true, actual: %v" , v )
51+ }
52+ }
53+
54+ func TestPassHelperList (t * testing.T ) {
55+ creds := []* credentials.Credentials {
56+ {
57+ ServerURL : "https://foobar.docker.io:2376/v1" ,
58+ Username : "foo" ,
59+ Secret : "isthebestmeshuggahalbum" ,
60+ },
61+ {
62+ ServerURL : "https://foobar.docker.io:2375/v1" ,
63+ Username : "bar" ,
64+ Secret : "isthebestmeshuggahalbum" ,
65+ },
66+ }
2067
21- helper .Add (creds )
68+ helper := Pass {}
69+ if err := helper .checkInitialized (); err != nil {
70+ t .Error (err )
71+ }
2272
23- creds .ServerURL = "https://foobar.docker.io:9999/v2"
24- helper .Add (creds )
73+ for _ , cred := range creds {
74+ if err := helper .Add (cred ); err != nil {
75+ t .Error (err )
76+ }
77+ }
2578
2679 credsList , err := helper .List ()
2780 if err != nil {
28- t .Fatal (err )
81+ t .Error (err )
2982 }
30-
3183 for server , username := range credsList {
32- if ! (strings .Contains (server , "2376" ) ||
33- strings .Contains (server , "9999" )) {
34- t .Fatalf ("invalid url: %s" , creds .ServerURL )
84+ if ! (strings .HasSuffix (server , "2376/v1" ) || strings .HasSuffix (server , "2375/v1" )) {
85+ t .Errorf ("invalid url: %s" , server )
3586 }
36-
37- if username != "nothing" {
38- t .Fatalf ("invalid username: %v" , username )
87+ if ! (username == "foo" || username == "bar" ) {
88+ t .Errorf ("invalid username: %v" , username )
3989 }
4090
4191 u , s , err := helper .Get (server )
4292 if err != nil {
43- t .Fatal (err )
93+ t .Error (err )
4494 }
45-
4695 if u != username {
47- t .Fatalf ("invalid username %s" , u )
96+ t .Errorf ("invalid username %s" , u )
4897 }
49-
5098 if s != "isthebestmeshuggahalbum" {
51- t .Fatalf ("invalid secret: %s" , s )
99+ t .Errorf ("invalid secret: %s" , s )
52100 }
53101
54- err = helper .Delete (server )
55- if err != nil {
56- t .Fatal (err )
102+ if err := helper .Delete (server ); err != nil {
103+ t .Error (err )
57104 }
58-
59- _ , _ , err = helper .Get (server )
60- if ! credentials .IsErrCredentialsNotFound (err ) {
61- t .Fatalf ("expected credentials not found, actual: %v" , err )
105+ if _ , _ , err := helper .Get (server ); ! credentials .IsErrCredentialsNotFound (err ) {
106+ t .Errorf ("expected credentials not found, actual: %v" , err )
62107 }
63108 }
64109
65110 credsList , err = helper .List ()
66111 if err != nil {
67- t .Fatal (err )
112+ t .Error (err )
68113 }
69-
70114 if len (credsList ) != 0 {
71- t .Fatal ("didn't delete all creds?" )
115+ t .Error ("didn't delete all creds?" )
72116 }
73117}
74118
75119func TestMissingCred (t * testing.T ) {
76120 helper := Pass {}
77-
78- _ , _ , err := helper .Get ("garbage" )
79- if ! credentials .IsErrCredentialsNotFound (err ) {
80- t .Fatalf ("expected credentials not found, actual: %v" , err )
121+ if _ , _ , err := helper .Get ("garbage" ); ! credentials .IsErrCredentialsNotFound (err ) {
122+ t .Errorf ("expected credentials not found, actual: %v" , err )
81123 }
82124}
0 commit comments