Initial cloud-services repo - gateway service + pkg modules
This commit is contained in:
101
pkg/tmobtokengen/ehts_test.go
Normal file
101
pkg/tmobtokengen/ehts_test.go
Normal file
@@ -0,0 +1,101 @@
|
||||
package tmobtokengen
|
||||
|
||||
import (
|
||||
"reflect"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestEHTSMap_SettersNonEmpty(t *testing.T) {
|
||||
m := EHTSMap{}
|
||||
setters := []struct {
|
||||
key EhtsKey
|
||||
setter func(string) EHTSMap
|
||||
}{
|
||||
{key: ContentType, setter: m.SetContentType},
|
||||
{key: Authorization, setter: m.SetAuthorization},
|
||||
{key: B2BClient, setter: m.SetB2BClient},
|
||||
{key: Body, setter: m.SetBody},
|
||||
{key: HTTPMethod, setter: m.SetHTTPMethod},
|
||||
{key: URI, setter: m.SetURI},
|
||||
}
|
||||
|
||||
for _, s := range setters {
|
||||
rs := GenerateUUID()
|
||||
m = s.setter(rs)
|
||||
if m[s.key] != rs {
|
||||
t.Errorf("set%s() = %v, want %v", s.key, m[s.key], rs)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func TestEHTSMap_SettersEmpty(t *testing.T) {
|
||||
m := EHTSMap{}
|
||||
setters := []struct {
|
||||
key EhtsKey
|
||||
setter func(string) EHTSMap
|
||||
}{
|
||||
{key: ContentType, setter: m.SetContentType},
|
||||
{key: Authorization, setter: m.SetAuthorization},
|
||||
{key: B2BClient, setter: m.SetB2BClient},
|
||||
{key: Body, setter: m.SetBody},
|
||||
{key: HTTPMethod, setter: m.SetHTTPMethod},
|
||||
{key: URI, setter: m.SetURI},
|
||||
}
|
||||
|
||||
for _, s := range setters {
|
||||
m = s.setter("")
|
||||
if _, ok := m[s.key]; ok {
|
||||
t.Errorf("ehtsMap[%s] = %v, want no value set", s.key, m[s.key])
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func Test_ehtsToString(t *testing.T) {
|
||||
type args struct {
|
||||
ehts map[EhtsKey]string
|
||||
}
|
||||
tests := []struct {
|
||||
name string
|
||||
args args
|
||||
wantks string
|
||||
wantvs string
|
||||
}{{
|
||||
name: "empty",
|
||||
args: args{ehts: map[EhtsKey]string{}},
|
||||
wantks: "",
|
||||
wantvs: "",
|
||||
}, {
|
||||
name: "one",
|
||||
args: args{ehts: map[EhtsKey]string{ContentType: "value1"}},
|
||||
wantks: string(ContentType),
|
||||
wantvs: "value1",
|
||||
}, {
|
||||
name: "two",
|
||||
args: args{ehts: map[EhtsKey]string{Authorization: "value1", ContentType: "value2"}},
|
||||
wantks: string(Authorization) + ";" + string(ContentType),
|
||||
wantvs: "value1value2"},
|
||||
}
|
||||
for _, tt := range tests {
|
||||
t.Run(tt.name, func(t *testing.T) {
|
||||
if gotks, gotvs := ehtsToString(tt.args.ehts); gotks != tt.wantks {
|
||||
t.Errorf("ehtsToString() = %v, want %v", gotks, tt.wantks)
|
||||
} else if gotvs != tt.wantvs {
|
||||
t.Errorf("ehtsToString() = %v, want %v", gotvs, tt.wantvs)
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func Test_encodedEhts(t *testing.T) {
|
||||
wantEncoded := []byte("47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU")
|
||||
gotEncoded := b64EncodeEHTS(nil)
|
||||
if !reflect.DeepEqual(gotEncoded, wantEncoded) {
|
||||
t.Errorf("empty-case: b64EncodeEHTS() = %v, want %v", string(gotEncoded), string(wantEncoded))
|
||||
}
|
||||
|
||||
wantEncoded = []byte("ungWv48Bz-pBQUDeXa4iI7ADYaOWF3qctBD_YfIAFa0")
|
||||
gotEncoded = b64EncodeEHTS([]byte("abc"))
|
||||
if !reflect.DeepEqual(gotEncoded, wantEncoded) {
|
||||
t.Errorf("non-empty-case: b64EncodeEHTS() = %v, want %v", string(gotEncoded), string(wantEncoded))
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user