@@ -42,4 +42,24 @@ func TestSecure(t *testing.T) {
42
42
assert .Equal (t , "" , rec .Header ().Get (echo .HeaderXFrameOptions ))
43
43
assert .Equal (t , "max-age=3600; includeSubdomains" , rec .Header ().Get (echo .HeaderStrictTransportSecurity ))
44
44
assert .Equal (t , "default-src 'self'" , rec .Header ().Get (echo .HeaderContentSecurityPolicy ))
45
+ assert .Equal (t , "" , rec .Header ().Get (echo .HeaderContentSecurityPolicyReportOnly ))
46
+
47
+ // Custom with CSPReportOnly flag
48
+ req .Header .Set (echo .HeaderXForwardedProto , "https" )
49
+ rec = httptest .NewRecorder ()
50
+ c = e .NewContext (req , rec )
51
+ SecureWithConfig (SecureConfig {
52
+ XSSProtection : "" ,
53
+ ContentTypeNosniff : "" ,
54
+ XFrameOptions : "" ,
55
+ HSTSMaxAge : 3600 ,
56
+ ContentSecurityPolicy : "default-src 'self'" ,
57
+ CSPReportOnly : true ,
58
+ })(h )(c )
59
+ assert .Equal (t , "" , rec .Header ().Get (echo .HeaderXXSSProtection ))
60
+ assert .Equal (t , "" , rec .Header ().Get (echo .HeaderXContentTypeOptions ))
61
+ assert .Equal (t , "" , rec .Header ().Get (echo .HeaderXFrameOptions ))
62
+ assert .Equal (t , "max-age=3600; includeSubdomains" , rec .Header ().Get (echo .HeaderStrictTransportSecurity ))
63
+ assert .Equal (t , "default-src 'self'" , rec .Header ().Get (echo .HeaderContentSecurityPolicyReportOnly ))
64
+ assert .Equal (t , "" , rec .Header ().Get (echo .HeaderContentSecurityPolicy ))
45
65
}
0 commit comments