aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tests/test.lua1
-rw-r--r--tests/test_util_queue.lua112
2 files changed, 59 insertions, 54 deletions
diff --git a/tests/test.lua b/tests/test.lua
index 78eb0134..bc33bb76 100644
--- a/tests/test.lua
+++ b/tests/test.lua
@@ -27,6 +27,7 @@ function run_all_tests()
dotest "util.random"
dotest "util.xml"
dotest "util.xmppstream"
+ dotest "util.queue"
dotest "net.http.parser"
dosingletest("test_sasl.lua", "latin1toutf8");
diff --git a/tests/test_util_queue.lua b/tests/test_util_queue.lua
index b0e1fa3d..57fd28e7 100644
--- a/tests/test_util_queue.lua
+++ b/tests/test_util_queue.lua
@@ -1,68 +1,72 @@
-local new = require "util.queue".new;
-local q = new(10);
+function new(new)
+ do
+ local q = new(10);
-assert(q.size == 10);
-assert(q:count() == 0);
+ assert_equal(q.size, 10);
+ assert_equal(q:count(), 0);
-assert(q:push("one"));
-assert(q:push("two"));
-assert(q:push("three"));
+ assert_is(q:push("one"));
+ assert_is(q:push("two"));
+ assert_is(q:push("three"));
-for i = 4, 10 do
- print("pushing "..i)
- assert(q:push("hello"));
- assert(q:count() == i, "count is not "..i.."("..q:count()..")");
-end
-assert(q:push("hello") == nil, "queue overfull!");
-assert(q:push("hello") == nil, "queue overfull!");
-assert(q:pop() == "one", "queue item incorrect");
-assert(q:pop() == "two", "queue item incorrect");
-assert(q:push("hello"));
-assert(q:push("hello"));
-assert(q:pop() == "three", "queue item incorrect");
-assert(q:push("hello"));
-assert(q:push("hello") == nil, "queue overfull!");
-assert(q:push("hello") == nil, "queue overfull!");
+ for i = 4, 10 do
+ assert_is(q:push("hello"));
+ assert_equal(q:count(), i, "count is not "..i.."("..q:count()..")");
+ end
+ assert_equal(q:push("hello"), nil, "queue overfull!");
+ assert_equal(q:push("hello"), nil, "queue overfull!");
+ assert_equal(q:pop(), "one", "queue item incorrect");
+ assert_equal(q:pop(), "two", "queue item incorrect");
+ assert_is(q:push("hello"));
+ assert_is(q:push("hello"));
+ assert_equal(q:pop(), "three", "queue item incorrect");
+ assert_is(q:push("hello"));
+ assert_equal(q:push("hello"), nil, "queue overfull!");
+ assert_equal(q:push("hello"), nil, "queue overfull!");
-assert(q:count() == 10, "queue count incorrect");
+ assert_equal(q:count(), 10, "queue count incorrect");
-for i = 1, 10 do
- assert(q:pop() == "hello", "queue item incorrect");
-end
+ for _ = 1, 10 do
+ assert_equal(q:pop(), "hello", "queue item incorrect");
+ end
-assert(q:count() == 0, "queue count incorrect");
+ assert_equal(q:count(), 0, "queue count incorrect");
-assert(q:push(1));
-for i = 1, 1001 do
- assert(q:pop() == i);
- assert(q:count() == 0);
- assert(q:push(i+1));
- assert(q:count() == 1);
-end
-assert(q:pop() == 1002);
-assert(q:push(1));
-for i = 1, 1000000 do
- q:pop();
- q:push(i+1);
-end
+ assert_is(q:push(1));
+ for i = 1, 1001 do
+ assert_equal(q:pop(), i);
+ assert_equal(q:count(), 0);
+ assert_is(q:push(i+1));
+ assert_equal(q:count(), 1);
+ end
+ assert_equal(q:pop(), 1002);
+ assert_is(q:push(1));
+ for i = 1, 1000000 do
+ q:pop();
+ q:push(i+1);
+ end
+ end
--- Test queues that purge old items when pushing to a full queue
-local q = new(10, true);
+ do
+ -- Test queues that purge old items when pushing to a full queue
+ local q = new(10, true);
-for i = 1, 10 do
- q:push(i);
-end
+ for i = 1, 10 do
+ q:push(i);
+ end
-assert(q:count() == 10);
+ assert_equal(q:count(), 10);
-assert(q:push(11));
-assert(q:count() == 10);
-assert(q:pop() == 2); -- First item should have been purged
+ assert_is(q:push(11));
+ assert_equal(q:count(), 10);
+ assert_equal(q:pop(), 2); -- First item should have been purged
-for i = 12, 32 do
- assert(q:push(i));
-end
+ for i = 12, 32 do
+ assert_is(q:push(i));
+ end
-assert(q:count() == 10);
-assert(q:pop() == 23);
+ assert_equal(q:count(), 10);
+ assert_equal(q:pop(), 23);
+ end
+end