aboutsummaryrefslogtreecommitdiff
path: root/cookie_test.go
diff options
context:
space:
mode:
authorGravatar Matt Reyer <winduptoy@users.noreply.github.com> 2018-12-13 10:04:49 -0500
committerGravatar Erik Dubbelboer <erik@dubbelboer.com> 2018-12-13 21:34:49 +0630
commit62dcd6fdcedcced7ed39ae32df8a96dc1e20e644 (patch)
treeb5205c003a7bd72e6f7da774d110dee1e347976f /cookie_test.go
parentAdded method (*Server).GetOpenConnectionsCount() and option DisableSleepWhenC... (diff)
downloadfasthttp-62dcd6fdcedcced7ed39ae32df8a96dc1e20e644.tar.gz
fasthttp-62dcd6fdcedcced7ed39ae32df8a96dc1e20e644.tar.bz2
fasthttp-62dcd6fdcedcced7ed39ae32df8a96dc1e20e644.zip
Support SameSite cookie attribute (#488)
SameSite cookie attribute implementation.
Diffstat (limited to 'cookie_test.go')
-rw-r--r--cookie_test.go50
1 files changed, 49 insertions, 1 deletions
diff --git a/cookie_test.go b/cookie_test.go
index cec8edd..c11a942 100644
--- a/cookie_test.go
+++ b/cookie_test.go
@@ -76,7 +76,7 @@ func TestCookieSecure(t *testing.T) {
if err := c.Parse("foo=bar"); err != nil {
t.Fatalf("unexpected error: %s", err)
}
- if c.HTTPOnly() {
+ if c.Secure() {
t.Fatalf("Unexpected secure flag set")
}
s = c.String()
@@ -85,6 +85,54 @@ func TestCookieSecure(t *testing.T) {
}
}
+func TestCookieSameSite(t *testing.T) {
+ var c Cookie
+
+ if err := c.Parse("foo=bar; samesite"); err != nil {
+ t.Fatalf("unexpected error: %s", err)
+ }
+ if c.SameSite() != CookieSameSiteDefaultMode {
+ t.Fatalf("SameSite must be set")
+ }
+ s := c.String()
+ if !strings.Contains(s, "; SameSite") {
+ t.Fatalf("missing SameSite flag in cookie %q", s)
+ }
+
+ if err := c.Parse("foo=bar; samesite=lax"); err != nil {
+ t.Fatalf("unexpected error: %s", err)
+ }
+ if c.SameSite() != CookieSameSiteLaxMode {
+ t.Fatalf("SameSite Lax Mode must be set")
+ }
+ s = c.String()
+ if !strings.Contains(s, "; SameSite=Lax") {
+ t.Fatalf("missing SameSite flag in cookie %q", s)
+ }
+
+ if err := c.Parse("foo=bar; samesite=strict"); err != nil {
+ t.Fatalf("unexpected error: %s", err)
+ }
+ if c.SameSite() != CookieSameSiteStrictMode {
+ t.Fatalf("SameSite Strict Mode must be set")
+ }
+ s = c.String()
+ if !strings.Contains(s, "; SameSite=Strict") {
+ t.Fatalf("missing SameSite flag in cookie %q", s)
+ }
+
+ if err := c.Parse("foo=bar"); err != nil {
+ t.Fatalf("unexpected error: %s", err)
+ }
+ if c.SameSite() != CookieSameSiteDisabled {
+ t.Fatalf("Unexpected SameSite flag set")
+ }
+ s = c.String()
+ if strings.Contains(s, "SameSite") {
+ t.Fatalf("unexpected SameSite flag in cookie %q", s)
+ }
+}
+
func TestCookieMaxAge(t *testing.T) {
var c Cookie