summaryrefslogtreecommitdiff
path: root/pkg/s3signer/utils_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'pkg/s3signer/utils_test.go')
-rw-r--r--pkg/s3signer/utils_test.go33
1 files changed, 31 insertions, 2 deletions
diff --git a/pkg/s3signer/utils_test.go b/pkg/s3signer/utils_test.go
index e7fc7b3..5ec0307 100644
--- a/pkg/s3signer/utils_test.go
+++ b/pkg/s3signer/utils_test.go
@@ -1,6 +1,6 @@
/*
- * Minio Go Library for Amazon S3 Compatible Cloud Storage
- * Copyright 2015-2017 Minio, Inc.
+ * MinIO Go Library for Amazon S3 Compatible Cloud Storage
+ * Copyright 2015-2017 MinIO, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -84,3 +84,32 @@ func TestEncodeURL2Path(t *testing.T) {
}
}
+
+// TestSignV4TrimAll - tests the logic of TrimAll() function
+func TestSignV4TrimAll(t *testing.T) {
+ testCases := []struct {
+ // Input.
+ inputStr string
+ // Expected result.
+ result string
+ }{
+ {"本語", "本語"},
+ {" abc ", "abc"},
+ {" a b ", "a b"},
+ {"a b ", "a b"},
+ {"a b", "a b"},
+ {"a b", "a b"},
+ {" a b c ", "a b c"},
+ {"a \t b c ", "a b c"},
+ {"\"a \t b c ", "\"a b c"},
+ {" \t\n\u000b\r\fa \t\n\u000b\r\f b \t\n\u000b\r\f c \t\n\u000b\r\f", "a b c"},
+ }
+
+ // Tests generated values from url encoded name.
+ for i, testCase := range testCases {
+ result := signV4TrimAll(testCase.inputStr)
+ if testCase.result != result {
+ t.Errorf("Test %d: Expected signV4TrimAll result to be \"%s\", but found it to be \"%s\" instead", i+1, testCase.result, result)
+ }
+ }
+}