diff options
author | Martin Polden <mpolden@mpolden.no> | 2019-08-13 20:30:50 +0200 |
---|---|---|
committer | Martin Polden <mpolden@mpolden.no> | 2019-08-13 20:30:50 +0200 |
commit | 491a0e1cbe9a617ac3e29535c6e71ca82ebfe5a7 (patch) | |
tree | 25299940e48b44bed36d7719fabcb5fed451a7b3 /cache/cache_test.go | |
parent | 7361fcc0fa6d2f7241b9f71c67657896f0199c4b (diff) |
Do not cache 0 TTL
Diffstat (limited to 'cache/cache_test.go')
-rw-r--r-- | cache/cache_test.go | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/cache/cache_test.go b/cache/cache_test.go index a81cef1..d607aa8 100644 --- a/cache/cache_test.go +++ b/cache/cache_test.go @@ -67,7 +67,8 @@ func awaitExpiry(t *testing.T, c *Cache, k uint32) { } func TestCache(t *testing.T) { - m := newA("foo.", 60, net.ParseIP("192.0.2.1")) + msg := newA("foo.", 60, net.ParseIP("192.0.2.1")) + msgWithZeroTTL := newA("bar.", 0, net.ParseIP("192.0.2.2")) tt := date(2019, 1, 1) c, err := New(100, time.Duration(10*time.Millisecond)) if err != nil { @@ -79,10 +80,11 @@ func TestCache(t *testing.T) { createdAt, queriedAt time.Time ok bool }{ - {m, tt, tt, true}, // Not expired when query time == create time - {m, tt, tt.Add(30 * time.Second), true}, // Not expired when below TTL - {m, tt, tt.Add(60 * time.Second), true}, // Not expired until TTL exceeds - {m, tt, tt.Add(61 * time.Second), false}, // Expired + {msg, tt, tt, true}, // Not expired when query time == create time + {msg, tt, tt.Add(30 * time.Second), true}, // Not expired when below TTL + {msg, tt, tt.Add(60 * time.Second), true}, // Not expired until TTL exceeds + {msg, tt, tt.Add(61 * time.Second), false}, // Expired + {msgWithZeroTTL, tt, tt, false}, // 0 TTL is not cached } for i, tt := range tests { c.now = func() time.Time { return tt.createdAt } |