On Thursday, 30 June 2022 at 00:31:29 UTC+2 amits wrote: > Currently the Cookies() method as explained at > https://pkg.go.dev/net/http/cookiejar#Jar.Cookies only adds the Name and > Value of the cookies and strips out the MaxAge and Expires field (and all > other fields). Presumably, as I can see in the code, the logic is if a > cookie is returned as a return value from this method, that means, the > cookie is valid - expiry date is in the future, for example. > Technically neither is "stripped out", the Jar itself knows about these fields, they just aren't returned to the caller of Cookies().
> In the context of testing my HTTP handler, I wanted to make sure that the > expiry of a certain cookie is set to a specific time in the future. > That can be done without putting the cookies into a Jar: Just inspect the raw cookies sent in the Request, e.g. with net/http.Request.Cookies. These cookies have all fields set. > However, the above implementation doesn't make it possible. Is that a fair > expectation to have that the cookiejar's Cookies() method will preserve the > Expires/MaxAge field of the cookie so that I can verify my HTTP handler > function logic? > Are you asking whether it's a fair to expect that net/http/cookiejar.Jar doesn't have bugs? It has a decent set of tests that check expiry of cookies so I think yes, this is a fair expectation. > Or is there another alternative suggestion? > There are open source drop in replacements for net/http/cookiejar.Jar that allow deep inspection of their content, but I really doubt that this is needed. There are two questions: 1) Do your cookies have the right MaxAge? Test that by checking the cookie in the HTTP response. 2) Does cookiejar.Jar work properly? You can rely on that; but if you think its tests are lacking: Feel free to provide a CL for the test suite of Jar. V. -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/golang-nuts/ffcf1004-4bcd-44e6-aa08-982e3ecbcaacn%40googlegroups.com.