TestMaskSecretKeys: use subtests

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 32d70c7e21631224674cd60021d3ec908c2d888c)
Signed-off-by: Tibor Vass <tibor@docker.com>
This commit is contained in:
Sebastiaan van Stijn 2019-07-02 13:29:24 +02:00 committed by Tibor Vass
parent 18dac2cf32
commit ebb542b3f8
1 changed files with 10 additions and 2 deletions

View File

@ -9,26 +9,31 @@ import (
func TestMaskSecretKeys(t *testing.T) {
tests := []struct {
doc string
path string
input map[string]interface{}
expected map[string]interface{}
}{
{
doc: "secret create with API version",
path: "/v1.30/secrets/create",
input: map[string]interface{}{"Data": "foo", "Name": "name", "Labels": map[string]interface{}{}},
expected: map[string]interface{}{"Data": "*****", "Name": "name", "Labels": map[string]interface{}{}},
},
{
doc: "secret create with API version and trailing slashes",
path: "/v1.30/secrets/create//",
input: map[string]interface{}{"Data": "foo", "Name": "name", "Labels": map[string]interface{}{}},
expected: map[string]interface{}{"Data": "*****", "Name": "name", "Labels": map[string]interface{}{}},
},
{
doc: "secret create with query param",
path: "/secrets/create?key=val",
input: map[string]interface{}{"Data": "foo", "Name": "name", "Labels": map[string]interface{}{}},
expected: map[string]interface{}{"Data": "*****", "Name": "name", "Labels": map[string]interface{}{}},
},
{
doc: "other paths with API version",
path: "/v1.30/some/other/path",
input: map[string]interface{}{
"password": "pass",
@ -60,6 +65,7 @@ func TestMaskSecretKeys(t *testing.T) {
},
},
{
doc: "other paths with API version case insensitive",
path: "/v1.30/some/other/path",
input: map[string]interface{}{
"PASSWORD": "pass",
@ -77,7 +83,9 @@ func TestMaskSecretKeys(t *testing.T) {
}
for _, testcase := range tests {
maskSecretKeys(testcase.input, testcase.path)
assert.Check(t, is.DeepEqual(testcase.expected, testcase.input))
t.Run(testcase.doc, func(t *testing.T) {
maskSecretKeys(testcase.input, testcase.path)
assert.Check(t, is.DeepEqual(testcase.expected, testcase.input))
})
}
}