github.com/versent/saml2aws@v2.17.0+incompatible/pkg/flags/flags_test.go (about) 1 package flags 2 3 import ( 4 "testing" 5 6 "github.com/stretchr/testify/assert" 7 "github.com/versent/saml2aws/pkg/cfg" 8 ) 9 10 func TestOverrideAllFlags(t *testing.T) { 11 12 commonFlags := &CommonFlags{ 13 IdpProvider: "ADFS", 14 MFA: "mymfa", 15 SkipVerify: true, 16 URL: "https://id.example.com", 17 Username: "myuser", 18 AmazonWebservicesURN: "urn:amazon:webservices", 19 SessionDuration: 3600, 20 Profile: "saml", 21 } 22 idpa := &cfg.IDPAccount{ 23 Provider: "Ping", 24 MFA: "none", 25 SkipVerify: false, 26 URL: "https://id.test.com", 27 Username: "test123", 28 AmazonWebservicesURN: "urn:govcloud:webservices", 29 } 30 31 expected := &cfg.IDPAccount{ 32 Provider: "ADFS", 33 MFA: "mymfa", 34 SkipVerify: true, 35 URL: "https://id.example.com", 36 Username: "myuser", 37 AmazonWebservicesURN: "urn:amazon:webservices", 38 SessionDuration: 3600, 39 Profile: "saml", 40 } 41 ApplyFlagOverrides(commonFlags, idpa) 42 43 assert.Equal(t, expected, idpa) 44 } 45 46 func TestNoOverrides(t *testing.T) { 47 48 commonFlags := &CommonFlags{ 49 IdpProvider: "", 50 MFA: "", 51 SkipVerify: false, 52 URL: "", 53 Username: "", 54 AmazonWebservicesURN: "", 55 } 56 idpa := &cfg.IDPAccount{ 57 Provider: "Ping", 58 MFA: "none", 59 SkipVerify: false, 60 URL: "https://id.test.com", 61 Username: "test123", 62 AmazonWebservicesURN: "urn:govcloud:webservices", 63 } 64 65 expected := &cfg.IDPAccount{ 66 Provider: "Ping", 67 MFA: "none", 68 SkipVerify: false, 69 URL: "https://id.test.com", 70 Username: "test123", 71 AmazonWebservicesURN: "urn:govcloud:webservices", 72 } 73 ApplyFlagOverrides(commonFlags, idpa) 74 75 assert.Equal(t, expected, idpa) 76 }