From 954764d5f172435e031523869b0a428ada199cd3 Mon Sep 17 00:00:00 2001 From: lethosor Date: Sun, 5 Apr 2020 22:58:51 -0400 Subject: [PATCH] Add tests for utils.invert --- test/library/utils.lua | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/test/library/utils.lua b/test/library/utils.lua index 309736892..f39be3459 100644 --- a/test/library/utils.lua +++ b/test/library/utils.lua @@ -13,3 +13,30 @@ function test.OrderedTable() i = i + 1 end end + +function test.invert() + local t = {} + local i = utils.invert{'a', 4.4, false, true, 5, t} + expect.eq(i.a, 1) + expect.eq(i[4.4], 2) + expect.eq(i[false], 3) + expect.eq(i[true], 4) + expect.eq(i[5], 5) + expect.eq(i[t], 6) + expect.eq(i[700], nil) + expect.eq(i.foo, nil) + expect.eq(i[{}], nil) +end + +function test.invert_nil() + local i = utils.invert{'a', nil, 'b'} + expect.eq(i.a, 1) + expect.eq(i[nil], nil) + expect.eq(i.b, 3) +end + +function test.invert_overwrite() + local i = utils.invert{'a', 'b', 'a'} + expect.eq(i.b, 2) + expect.eq(i.a, 3) +end