-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathredact_test.go
More file actions
116 lines (108 loc) · 3.01 KB
/
redact_test.go
File metadata and controls
116 lines (108 loc) · 3.01 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
package redact
import (
"testing"
"github.com/stretchr/testify/require"
)
func TestHTTPData(t *testing.T) {
t.Parallel()
data := `
GET /v1/version HTTP/1.1
Host: test.redact.invalid
User-Agent: Go-http-client/1.1
Authorization: Basic SECRET_ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789=
authorization : ApiKey=SECRET OtherData=SECRET
X-Nexmo-Trace-Id: abcdef0123456789
Accept-Encoding: gzip
password=SECRET
test_password=SECRET
PASSWORD=SECRET
TEST_PASSWORD=SECRET
key=SECRET
test_key=SECRET
KEY=SECRET
TEST_KEY=SECRET
password=SECRET&key=SECRET
ApiKey=SECRET&alpha=beta&password=SECRET&key=SECRET&gamma=delta
{
"password":"SECRET",
"Password": "SECRET",
"password" : "SECRET","password" :"SECRET",
"test_password":"SECRET",
"test_password_test": "SECRET",
"test_password" : "SECRET","test_password" :"SECRET",
"PASSWORD":"SECRET",
"PASSWORD": "SECRET",
"PASSWORD" : "SECRET","PASSWORD" :"SECRET",
"TEST_PASSWORD":"SECRET",
"TEST_PASSWORD": "SECRET",
"TEST_PASSWORD" : "SECRET","TEST_PASSWORD" :"SECRET",
"key":"SECRET",
"Key": "SECRET",
"key" : "SECRET","key" :"SECRET",
"test_key":"SECRET",
"test_key": "SECRET",
"test_key" : "SECRET","test_key" :"SECRET",
"KEY":"SECRET",
"KEY": "SECRET",
"KEY" : "SECRET","KEY" :"SECRET",
"TEST_KEY":"SECRET",
"TEST_KEY": "SECRET",
"TEST_KEY" : "SECRET","TEST_KEY" :"SECRET",
"ApiKey":"SECRET",
"ApiKey": "SECRET",
"ApiKey" : "SECRET","ApiKey" :"SECRET",
"OtherField" : "OtherValue"
}
`
expected := `
GET /v1/version HTTP/1.1
Host: test.redact.invalid
User-Agent: Go-http-client/1.1
Authorization: @~REDACTED~@
authorization : @~REDACTED~@
X-Nexmo-Trace-Id: abcdef0123456789
Accept-Encoding: gzip
password=@~REDACTED~@
test_password=@~REDACTED~@
PASSWORD=@~REDACTED~@
TEST_PASSWORD=@~REDACTED~@
key=@~REDACTED~@
test_key=@~REDACTED~@
KEY=@~REDACTED~@
TEST_KEY=@~REDACTED~@
password=@~REDACTED~@&key=@~REDACTED~@
ApiKey=@~REDACTED~@&alpha=beta&password=@~REDACTED~@&key=@~REDACTED~@&gamma=delta
{
"password":"@~REDACTED~@",
"Password": "@~REDACTED~@",
"password" : "@~REDACTED~@","password" :"@~REDACTED~@",
"test_password":"@~REDACTED~@",
"test_password_test": "@~REDACTED~@",
"test_password" : "@~REDACTED~@","test_password" :"@~REDACTED~@",
"PASSWORD":"@~REDACTED~@",
"PASSWORD": "@~REDACTED~@",
"PASSWORD" : "@~REDACTED~@","PASSWORD" :"@~REDACTED~@",
"TEST_PASSWORD":"@~REDACTED~@",
"TEST_PASSWORD": "@~REDACTED~@",
"TEST_PASSWORD" : "@~REDACTED~@","TEST_PASSWORD" :"@~REDACTED~@",
"key":"@~REDACTED~@",
"Key": "@~REDACTED~@",
"key" : "@~REDACTED~@","key" :"@~REDACTED~@",
"test_key":"@~REDACTED~@",
"test_key": "@~REDACTED~@",
"test_key" : "@~REDACTED~@","test_key" :"@~REDACTED~@",
"KEY":"@~REDACTED~@",
"KEY": "@~REDACTED~@",
"KEY" : "@~REDACTED~@","KEY" :"@~REDACTED~@",
"TEST_KEY":"@~REDACTED~@",
"TEST_KEY": "@~REDACTED~@",
"TEST_KEY" : "@~REDACTED~@","TEST_KEY" :"@~REDACTED~@",
"ApiKey":"@~REDACTED~@",
"ApiKey": "@~REDACTED~@",
"ApiKey" : "@~REDACTED~@","ApiKey" :"@~REDACTED~@",
"OtherField" : "OtherValue"
}
`
got := HTTPData(data)
require.Equal(t, expected, got)
}