Deques now have metatables, fixed deque unit tests

This commit is contained in:
2021-07-12 16:32:58 -04:00
parent 7290beee34
commit 3fc76afc09
2 changed files with 38 additions and 25 deletions

View File

@@ -56,25 +56,36 @@ function unittests.tables()
assert(table.equal(t, {3,4,3,4}))
end
-- function unittests.queues()
-- local q = queue.create()
-- assert(queue.size(q) == 0)
-- queue.push(q, 27)
-- assert(queue.size(q) == 1)
-- queue.push(q, 45)
-- assert(queue.nth(q, 1) == 27)
-- assert(queue.nth(q, 2) == 45)
-- assert(queue.size(q) == 2)
-- assert(queue.pop(q) == 27)
-- assert(queue.size(q) == 1)
-- assert(queue.pop(q) == 45)
-- assert(queue.size(q) == 0)
-- assert(queue.pop(q) == nil)
-- assert(queue.size(q) == 0)
-- for i=1,50 do
-- queue.push(q,i)
-- end
-- for i=1,50 do
-- assert(queue.pop(q)==i)
-- end
-- end
function unittests.deque()
local d = deque.create()
for i=1,7 do
for j=1,i do
d:pushr(j)
end
for j=1,i do
assert(d:nthl(j) == j)
end
for j=1,i do
assert(d:popl() == j)
end
end
for i=1,7 do
for j=1,i do
d:pushl(j)
end
for j=1,i do
assert(d:nthr(j) == j)
end
for j=1,i do
assert(d:popr() == j)
end
end
for i=1,7 do
for j=1,i do
d:pushr(j)
end
for j=1,i do
assert(d:popr() == i+1-j)
end
end
end