github.com/Axway/agent-sdk@v1.1.101/pkg/apic/auth/apicauth_test.go (about) 1 package auth 2 3 import ( 4 "fmt" 5 "net/http" 6 "testing" 7 ) 8 9 func TestChannelTokenGetter(t *testing.T) { 10 token := "some_token" 11 tg := staticTokenGetter(token) 12 13 ctg := tokenGetterWithChannel(tg) 14 defer ctg.Close() 15 16 for i := 0; i < 10; i++ { 17 returnToken, err := ctg.GetToken() 18 19 if err != nil { 20 t.Error("Unexpected error ", err) 21 } 22 if token != returnToken { 23 t.Errorf("Expected %s, got %s", token, returnToken) 24 } 25 } 26 } 27 28 func TestChannelTokenGetterPropagatesError(t *testing.T) { 29 err := fmt.Errorf("some error") 30 tg := funcTokenGetter(func() (string, error) { return "", err }) 31 ctg := tokenGetterWithChannel(tg) 32 _, gotErr := ctg.GetToken() 33 if err != gotErr { 34 t.Errorf("Expected error %s, got %s", err, gotErr) 35 } 36 } 37 38 func TestChannelTokenGetterCloses(t *testing.T) { 39 tg := funcTokenGetter(func() (string, error) { return "", nil }) 40 ctg := tokenGetterWithChannel(tg) 41 ctg.Close() 42 43 if _, ok := <-ctg.responses; ok { 44 t.Error("Expected responses channels to be closed") 45 } 46 } 47 48 func TestNetAuthenticate(t *testing.T) { 49 aa := NewWithStatic("12345", "abcde") 50 if aa.tenantID != "12345" { 51 t.Fail() 52 } 53 54 token, err := aa.GetToken() 55 if err != nil { 56 t.Errorf("error getting token") 57 } 58 if token != "abcde" { 59 t.Fail() 60 } 61 err = aa.AuthenticateNet(&http.Request{ 62 Header: make(map[string][]string), 63 }) 64 if err != nil { 65 t.Errorf("error from AuthenticateNet") 66 } 67 }