aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--securecookie.go2
-rw-r--r--securecookie_test.go23
2 files changed, 16 insertions, 9 deletions
diff --git a/securecookie.go b/securecookie.go
index cd4e097..61af390 100644
--- a/securecookie.go
+++ b/securecookie.go
@@ -141,7 +141,7 @@ func New(hashKey, blockKey []byte) *SecureCookie {
maxLength: 4096,
sz: GobEncoder{},
}
- if hashKey == nil {
+ if len(hashKey) == 0 {
s.err = errHashKeyNotSet
}
if blockKey != nil {
diff --git a/securecookie_test.go b/securecookie_test.go
index 2b0f8a1..c32ff33 100644
--- a/securecookie_test.go
+++ b/securecookie_test.go
@@ -268,15 +268,22 @@ func TestMultiNoCodecs(t *testing.T) {
}
func TestMissingKey(t *testing.T) {
- s1 := New(nil, nil)
-
- var dst []byte
- err := s1.Decode("sid", "value", &dst)
- if err != errHashKeyNotSet {
- t.Fatalf("Expected %#v, got %#v", errHashKeyNotSet, err)
+ emptyKeys := [][]byte{
+ nil,
+ []byte(""),
}
- if err2, ok := err.(Error); !ok || !err2.IsUsage() {
- t.Errorf("Expected missing hash key to be IsUsage(); was %#v", err)
+
+ for _, key := range emptyKeys {
+ s1 := New(key, nil)
+
+ var dst []byte
+ err := s1.Decode("sid", "value", &dst)
+ if err != errHashKeyNotSet {
+ t.Fatalf("Expected %#v, got %#v", errHashKeyNotSet, err)
+ }
+ if err2, ok := err.(Error); !ok || !err2.IsUsage() {
+ t.Errorf("Expected missing hash key to be IsUsage(); was %#v", err)
+ }
}
}