sigv4: Trim and shrink spaces in headers values (#3162)

This commit is contained in:
Anis Elleuch
2016-11-04 00:41:25 +01:00
committed by Harshavardhana
parent 4503491a0a
commit d9bab6b3bd
3 changed files with 45 additions and 1 deletions

View File

@@ -211,3 +211,31 @@ func TestFindHost(t *testing.T) {
t.Fatalf("Expected the APIErrorCode to be %d, but got %d", ErrNone, errCode)
}
}
// TestSigV4TrimAll - tests the logic of TrimAll() function
func TestSigV4TrimAll(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"},
}
// 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 sigV4TrimAll result to be \"%s\", but found it to be \"%s\" instead", i+1, testCase.result, result)
}
}
}