aboutsummaryrefslogtreecommitdiffstats
path: root/cache/cache_test.go
diff options
context:
space:
mode:
authorMartin Polden <mpolden@mpolden.no>2019-08-13 20:30:50 +0200
committerMartin Polden <mpolden@mpolden.no>2019-08-13 20:30:50 +0200
commit491a0e1cbe9a617ac3e29535c6e71ca82ebfe5a7 (patch)
tree25299940e48b44bed36d7719fabcb5fed451a7b3 /cache/cache_test.go
parent7361fcc0fa6d2f7241b9f71c67657896f0199c4b (diff)
Do not cache 0 TTL
Diffstat (limited to 'cache/cache_test.go')
-rw-r--r--cache/cache_test.go12
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 }