@@ -49,7 +49,7 @@ func TestClearCookieHeader(t *testing.T) {
4949 require .NoError (t , err )
5050 req .AddCookie (& http.Cookie {Name : "cookie" })
5151
52- ClearCookieHeader (req , nil )
52+ ClearCookieHeader (req , nil , nil )
5353 require .NotContains (t , req .Header , "Cookie" )
5454 })
5555
@@ -60,8 +60,20 @@ func TestClearCookieHeader(t *testing.T) {
6060 req .AddCookie (& http.Cookie {Name : "cookie2" })
6161 req .AddCookie (& http.Cookie {Name : "cookie3" })
6262
63- ClearCookieHeader (req , []string {"cookie1" , "cookie3" })
63+ ClearCookieHeader (req , []string {"cookie1" , "cookie3" }, nil )
6464 require .Contains (t , req .Header , "Cookie" )
6565 require .Equal (t , "cookie1=; cookie3=" , req .Header .Get ("Cookie" ))
6666 })
67+
68+ t .Run ("Clear cookie header with cookies to keep and skip should clear Cookie header and keep cookies" , func (t * testing.T ) {
69+ req , err := http .NewRequest (http .MethodGet , "/" , nil )
70+ require .NoError (t , err )
71+ req .AddCookie (& http.Cookie {Name : "cookie1" })
72+ req .AddCookie (& http.Cookie {Name : "cookie2" })
73+ req .AddCookie (& http.Cookie {Name : "cookie3" })
74+
75+ ClearCookieHeader (req , []string {"cookie1" , "cookie3" }, []string {"cookie3" })
76+ require .Contains (t , req .Header , "Cookie" )
77+ require .Equal (t , "cookie1=" , req .Header .Get ("Cookie" ))
78+ })
6779}
0 commit comments