Software /
code /
prosody
Comparison
tests/test_util_cache.lua @ 7289:42e7545d5ae3
util.cache: Add head() and tail() methods (and tests)
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Thu, 17 Mar 2016 19:07:40 +0000 |
parent | 7016:e0a0af42b09f |
child | 7290:70ab13e81cf5 |
comparison
equal
deleted
inserted
replaced
7287:867f107409d9 | 7289:42e7545d5ae3 |
---|---|
1 | |
2 function new(new) | 1 function new(new) |
3 local c = new(5); | 2 local c = new(5); |
4 | 3 |
4 local function expect_kv(key, value, actual_key, actual_value) | |
5 assert_equal(key, actual_key, "key incorrect"); | |
6 assert_equal(value, actual_value, "value incorrect"); | |
7 end | |
8 | |
9 expect_kv(nil, nil, c:head()); | |
10 expect_kv(nil, nil, c:tail()); | |
11 | |
5 assert_equal(c:count(), 0); | 12 assert_equal(c:count(), 0); |
6 | 13 |
7 c:set("one", 1) | 14 c:set("one", 1) |
8 assert_equal(c:count(), 1); | 15 assert_equal(c:count(), 1); |
16 expect_kv("one", 1, c:head()); | |
17 expect_kv("one", 1, c:tail()); | |
18 | |
9 c:set("two", 2) | 19 c:set("two", 2) |
20 expect_kv("two", 2, c:head()); | |
21 expect_kv("one", 1, c:tail()); | |
22 | |
10 c:set("three", 3) | 23 c:set("three", 3) |
24 expect_kv("three", 3, c:head()); | |
25 expect_kv("one", 1, c:tail()); | |
26 | |
11 c:set("four", 4) | 27 c:set("four", 4) |
12 c:set("five", 5); | 28 c:set("five", 5); |
13 assert_equal(c:count(), 5); | 29 assert_equal(c:count(), 5); |
30 expect_kv("five", 5, c:head()); | |
31 expect_kv("one", 1, c:tail()); | |
14 | 32 |
15 c:set("foo", nil); | 33 c:set("foo", nil); |
16 assert_equal(c:count(), 5); | 34 assert_equal(c:count(), 5); |
35 expect_kv("five", 5, c:head()); | |
36 expect_kv("one", 1, c:tail()); | |
17 | 37 |
18 assert_equal(c:get("one"), 1); | 38 assert_equal(c:get("one"), 1); |
39 expect_kv("five", 5, c:head()); | |
40 expect_kv("one", 1, c:tail()); | |
41 | |
19 assert_equal(c:get("two"), 2); | 42 assert_equal(c:get("two"), 2); |
20 assert_equal(c:get("three"), 3); | 43 assert_equal(c:get("three"), 3); |
21 assert_equal(c:get("four"), 4); | 44 assert_equal(c:get("four"), 4); |
22 assert_equal(c:get("five"), 5); | 45 assert_equal(c:get("five"), 5); |
23 | 46 |
24 assert_equal(c:get("foo"), nil); | 47 assert_equal(c:get("foo"), nil); |
25 assert_equal(c:get("bar"), nil); | 48 assert_equal(c:get("bar"), nil); |
26 | 49 |
27 c:set("six", 6); | 50 c:set("six", 6); |
28 assert_equal(c:count(), 5); | 51 assert_equal(c:count(), 5); |
52 expect_kv("six", 6, c:head()); | |
53 expect_kv("two", 2, c:tail()); | |
29 | 54 |
30 assert_equal(c:get("one"), nil); | 55 assert_equal(c:get("one"), nil); |
31 assert_equal(c:get("two"), 2); | 56 assert_equal(c:get("two"), 2); |
32 assert_equal(c:get("three"), 3); | 57 assert_equal(c:get("three"), 3); |
33 assert_equal(c:get("four"), 4); | 58 assert_equal(c:get("four"), 4); |