зеркало из https://github.com/Azure/draft-classic.git
34 строки
1.4 KiB
Go
34 строки
1.4 KiB
Go
package builder
|
|
|
|
import (
|
|
"reflect"
|
|
"testing"
|
|
)
|
|
|
|
func TestFromAuthConfigToken(t *testing.T) {
|
|
var authConfigTests = []struct {
|
|
input string
|
|
fail bool
|
|
expected *DockerConfigEntryWithAuth
|
|
}{
|
|
{"", true, nil},
|
|
{"badbase64input", true, nil},
|
|
{"e30K", false, &DockerConfigEntryWithAuth{}},
|
|
{"eyJ1c2VybmFtZSI6InVzZXJuYW1lIiwicGFzc3dvcmQiOiJwYXNzd29yZCJ9Cg==", false, &DockerConfigEntryWithAuth{Username: "username", Password: "password"}},
|
|
{"eyJ1c2VybmFtZSI6InVzZXJuYW1lIiwicGFzc3dvcmQiOiJwYXNzd29yZCIsImVtYWlsIjoiZW1haWwiLCJhdXRoIjoiYXV0aCJ9Cg==", false, &DockerConfigEntryWithAuth{Username: "username", Password: "password", Email: "email", Auth: "auth"}},
|
|
{"eyJ1c2VybmFtZSI6InVzZXJuYW1lIiwicGFzc3dvcmQiOiJwYXNzd29yZCIsImVtYWlsIjoiZW1haWwiLCJhdXRoIjoiYXV0aCIsInNlcnZlcmFkZHJlc3MiOiJodHRwOi8vc2VydmVyYWRkcmVzcy5jb20ifQo=", false, &DockerConfigEntryWithAuth{Username: "username", Password: "password", Email: "email", Auth: "auth"}},
|
|
}
|
|
|
|
for _, tt := range authConfigTests {
|
|
actual, err := FromAuthConfigToken(tt.input)
|
|
if tt.fail && err == nil {
|
|
t.Errorf("FromAuthConfigToken(%s) was expected to fail", tt.input)
|
|
} else if !tt.fail && err != nil {
|
|
t.Errorf("FromAuthConfigToken(%s) was not expected to fail", tt.input)
|
|
}
|
|
if !reflect.DeepEqual(actual, tt.expected) {
|
|
t.Errorf("FromAuthConfigToken(%s): expected output differs from actual", tt.input)
|
|
}
|
|
}
|
|
}
|