diff --git a/goatherd_test.go b/goatherd_test.go
index b357b2ae22a25c830616a9d69a7b8e163f592ec9..0cec2a5488dac354d0ac086260718f83ed426e27 100644
--- a/goatherd_test.go
+++ b/goatherd_test.go
@@ -278,8 +278,8 @@ func handleConnT(t *testing.T) {
 		if answer != "" {
 			t.Error("answer:", answer)
 		}
-		if faildelay.userlocks["dummy user"] != nil {
-			t.Error("userlock created for dummy user")
+		if _, ok := faildelay.userlocks["dummy user"]; ok {
+			t.Error("userlock entry created for dummy user")
 		}
 	})
 
@@ -296,8 +296,10 @@ func handleConnT(t *testing.T) {
 		if answer != "FAIL" {
 			t.Error("answer:", answer)
 		}
-		if faildelay.userlocks[username] == nil {
-			t.Error("userlock not in map")
+		if ul, ok := faildelay.userlocks[username]; !ok {
+			t.Error("no entry in userlocks")
+		} else if ul != delay {
+			t.Error("entry in userlocks is not the returned lock")
 		}
 	})
 
@@ -311,7 +313,9 @@ func handleConnT(t *testing.T) {
 		if delay != nil {
 			t.Fail()
 		}
-		if *faildelay.userlocks[username] != unlocked {
+		if ul, ok := faildelay.userlocks[username]; !ok {
+			t.Error("no entry in userlocks")
+		} else if *ul != unlocked {
 			t.Error("userlock not unlocked")
 		}
 		if answer != "OK" {