Skip to content

Commit 801ac2d

Browse files
committed
address nit comments and add unit tests
1 parent cb9322a commit 801ac2d

File tree

2 files changed

+70
-2
lines changed

2 files changed

+70
-2
lines changed

internal/mode/static/nginx/config/servers_test.go

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2078,3 +2078,71 @@ func TestConvertBackendTLSFromGroup(t *testing.T) {
20782078
})
20792079
}
20802080
}
2081+
2082+
func TestGenerateResponseHeaders(t *testing.T) {
2083+
tests := []struct {
2084+
filters *dataplane.HTTPFilters
2085+
msg string
2086+
expectedHeaders http.ResponseHeaders
2087+
}{
2088+
{
2089+
msg: "no filter set",
2090+
filters: &dataplane.HTTPFilters{
2091+
RequestHeaderModifiers: &dataplane.HTTPHeaderFilter{},
2092+
},
2093+
expectedHeaders: http.ResponseHeaders{},
2094+
},
2095+
{
2096+
msg: "set filters correctly",
2097+
filters: &dataplane.HTTPFilters{
2098+
ResponseHeaderModifiers: &dataplane.HTTPHeaderFilter{
2099+
Add: []dataplane.HTTPHeader{
2100+
{
2101+
Name: "Accept-Encoding",
2102+
Value: "gzip",
2103+
},
2104+
{
2105+
Name: "Authorization",
2106+
Value: "my-auth",
2107+
},
2108+
},
2109+
Set: []dataplane.HTTPHeader{
2110+
{
2111+
Name: "Accept-Encoding",
2112+
Value: "my-new-overwritten-value",
2113+
},
2114+
},
2115+
Remove: []string{"Authorization"},
2116+
},
2117+
},
2118+
expectedHeaders: http.ResponseHeaders{
2119+
Add: []http.Header{
2120+
{
2121+
Name: "Accept-Encoding",
2122+
Value: "gzip",
2123+
},
2124+
{
2125+
Name: "Authorization",
2126+
Value: "my-auth",
2127+
},
2128+
},
2129+
Set: []http.Header{
2130+
{
2131+
Name: "Accept-Encoding",
2132+
Value: "my-new-overwritten-value",
2133+
},
2134+
},
2135+
Remove: []string{"Authorization"},
2136+
},
2137+
},
2138+
}
2139+
2140+
for _, tc := range tests {
2141+
t.Run(tc.msg, func(t *testing.T) {
2142+
g := NewWithT(t)
2143+
2144+
headers := generateResponseHeaders(tc.filters)
2145+
g.Expect(headers).To(Equal(tc.expectedHeaders))
2146+
})
2147+
}
2148+
}

internal/mode/static/state/graph/httproute_test.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1470,7 +1470,7 @@ func TestValidateFilterResponseHeaderModifier(t *testing.T) {
14701470
},
14711471
},
14721472
expectErrCount: 3,
1473-
name: "invalid response header modifier filter",
1473+
name: "response header modifier filter with disallowed header name",
14741474
},
14751475
{
14761476
validator: createAllValidValidator(),
@@ -1487,7 +1487,7 @@ func TestValidateFilterResponseHeaderModifier(t *testing.T) {
14871487
},
14881488
},
14891489
expectErrCount: 3,
1490-
name: "invalid response header modifier filter",
1490+
name: "response header modifier filter with disallowed header name prefix",
14911491
},
14921492
}
14931493

0 commit comments

Comments
 (0)