zitadel/internal/api/authz/access_token_test.go

67 lines
1.3 KiB
Go
Raw Normal View History

package authz
2020-03-23 07:01:59 +01:00
import (
"context"
"testing"
"github.com/zitadel/zitadel/internal/zerrors"
2020-03-23 07:01:59 +01:00
)
func Test_extractBearerToken(t *testing.T) {
2020-03-23 07:01:59 +01:00
type args struct {
ctx context.Context
token string
verifier AccessTokenVerifier
2020-03-23 07:01:59 +01:00
}
tests := []struct {
name string
args args
wantErr bool
}{
{
name: "no auth header set",
args: args{
ctx: context.Background(),
token: "",
},
wantErr: true,
},
{
name: "wrong auth header set",
args: args{
ctx: context.Background(),
token: "Basic sds",
},
wantErr: true,
},
{
name: "auth header set",
args: args{
ctx: context.Background(),
token: "Bearer AUTH",
verifier: AccessTokenVerifierFunc(func(context.Context, string) (string, string, string, string, string, error) {
return "", "", "", "", "", nil
}),
2020-03-23 07:01:59 +01:00
},
wantErr: false,
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
_, err := extractBearerToken(tt.args.token)
2020-03-23 07:01:59 +01:00
if tt.wantErr && err == nil {
t.Errorf("got wrong result, should get err: actual: %v ", err)
}
if !tt.wantErr && err != nil {
t.Errorf("got wrong result, should not get err: actual: %v ", err)
}
if tt.wantErr && !zerrors.IsUnauthenticated(err) {
2020-03-23 07:01:59 +01:00
t.Errorf("got wrong err: %v ", err)
}
})
}
}