diff options
author | vitalyisaev <vitalyisaev@ydb.tech> | 2023-12-12 21:55:07 +0300 |
---|---|---|
committer | vitalyisaev <vitalyisaev@ydb.tech> | 2023-12-12 22:25:10 +0300 |
commit | 4967f99474a4040ba150eb04995de06342252718 (patch) | |
tree | c9c118836513a8fab6e9fcfb25be5d404338bca7 /vendor/github.com/aws/aws-sdk-go-v2/internal/auth/scheme_test.go | |
parent | 2ce9cccb9b0bdd4cd7a3491dc5cbf8687cda51de (diff) | |
download | ydb-4967f99474a4040ba150eb04995de06342252718.tar.gz |
YQ Connector: prepare code base for S3 integration
1. Кодовая база Коннектора переписана с помощью Go дженериков так, чтобы добавление нового источника данных (в частности S3 + csv) максимально переиспользовало имеющийся код (чтобы сохранялась логика нарезания на блоки данных, учёт трафика и пр.)
2. API Connector расширено для работы с S3, но ещё пока не протестировано.
Diffstat (limited to 'vendor/github.com/aws/aws-sdk-go-v2/internal/auth/scheme_test.go')
-rw-r--r-- | vendor/github.com/aws/aws-sdk-go-v2/internal/auth/scheme_test.go | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/vendor/github.com/aws/aws-sdk-go-v2/internal/auth/scheme_test.go b/vendor/github.com/aws/aws-sdk-go-v2/internal/auth/scheme_test.go new file mode 100644 index 0000000000..49fc3c94be --- /dev/null +++ b/vendor/github.com/aws/aws-sdk-go-v2/internal/auth/scheme_test.go @@ -0,0 +1,75 @@ +package auth + +import ( + "testing" + + smithy "github.com/aws/smithy-go" +) + +func TestV4(t *testing.T) { + + propsV4 := smithy.Properties{} + + propsV4.Set("authSchemes", interface{}([]interface{}{ + map[string]interface{}{ + "disableDoubleEncoding": true, + "name": "sigv4", + "signingName": "s3", + "signingRegion": "us-west-2", + }, + })) + + result, err := GetAuthenticationSchemes(&propsV4) + if err != nil { + t.Fatalf("Did not expect error, got %v", err) + } + + _, ok := result[0].(AuthenticationScheme) + if !ok { + t.Fatalf("Did not get expected AuthenticationScheme. %v", result[0]) + } + + v4Scheme, ok := result[0].(*AuthenticationSchemeV4) + if !ok { + t.Fatalf("Did not get expected AuthenticationSchemeV4. %v", result[0]) + } + + if v4Scheme.Name != "sigv4" { + t.Fatalf("Did not get expected AuthenticationSchemeV4 signer version name") + } + +} + +func TestV4A(t *testing.T) { + + propsV4A := smithy.Properties{} + + propsV4A.Set("authSchemes", []interface{}{ + map[string]interface{}{ + "disableDoubleEncoding": true, + "name": "sigv4a", + "signingName": "s3", + "signingRegionSet": []string{"*"}, + }, + }) + + result, err := GetAuthenticationSchemes(&propsV4A) + if err != nil { + t.Fatalf("Did not expect error, got %v", err) + } + + _, ok := result[0].(AuthenticationScheme) + if !ok { + t.Fatalf("Did not get expected AuthenticationScheme. %v", result[0]) + } + + v4AScheme, ok := result[0].(*AuthenticationSchemeV4A) + if !ok { + t.Fatalf("Did not get expected AuthenticationSchemeV4A. %v", result[0]) + } + + if v4AScheme.Name != "sigv4a" { + t.Fatalf("Did not get expected AuthenticationSchemeV4A signer version name") + } + +} |