-
Notifications
You must be signed in to change notification settings - Fork 652
Commit
) Adds suppressing logging sensitive API parameters marked with the `sensitive` trait. This prevents the API type's `String` method returning a string representation of the API type with sensitive fields printed such as keys and passwords. Related to aws/aws-sdk-go#2310 Fixes #251
- Loading branch information
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
package awsutil_test | ||
|
||
import ( | ||
"testing" | ||
|
||
"github.com/aws/aws-sdk-go-v2/aws" | ||
"github.com/aws/aws-sdk-go-v2/internal/awsutil" | ||
) | ||
|
||
type testStruct struct { | ||
Field1 string | ||
Field2 *string | ||
Field3 []byte `sensitive:"true"` | ||
Value []string | ||
} | ||
|
||
func TestStringValue(t *testing.T) { | ||
cases := map[string]struct { | ||
Value interface{} | ||
Expect string | ||
}{ | ||
"general": { | ||
Value: testStruct{ | ||
Field1: "abc123", | ||
Field2: aws.String("abc123"), | ||
Field3: []byte("don't show me"), | ||
Value: []string{ | ||
"first", | ||
"second", | ||
}, | ||
}, | ||
Expect: `{ | ||
Field1: "abc123", | ||
Field2: "abc123", | ||
Field3: <sensitive>, | ||
Value: ["first","second"], | ||
}`, | ||
}, | ||
} | ||
|
||
for d, c := range cases { | ||
t.Run(d, func(t *testing.T) { | ||
actual := awsutil.StringValue(c.Value) | ||
if e, a := c.Expect, actual; e != a { | ||
t.Errorf("expect:\n%v\nactual:\n%v\n", e, a) | ||
} | ||
}) | ||
} | ||
} |
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.