From 2e29201579e5dec9e13bedf642d8221bfc993ae9 Mon Sep 17 00:00:00 2001 From: nsfisis Date: Sun, 20 Feb 2022 15:42:46 +0900 Subject: neovim: add test code for uniquify --- .config/nvim/lua/tests/init.lua | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 .config/nvim/lua/tests/init.lua (limited to '.config/nvim/lua/tests/init.lua') diff --git a/.config/nvim/lua/tests/init.lua b/.config/nvim/lua/tests/init.lua new file mode 100644 index 0000000..210ca0d --- /dev/null +++ b/.config/nvim/lua/tests/init.lua @@ -0,0 +1,36 @@ +-- lua require('tests').test(TEST_SUITE_NAME) + +local M = {} + + +local T = {} + +function T.new(suite_name) + local instance = {} + instance.suite_name = suite_name + instance._index = 1 + setmetatable(instance, {__index = T}) + return instance +end + +function T:assert(expr, message) + assert(expr, ('[tests.%s:%d] %s'):format(self.suite_name, self._index, message)) + self._index = self._index + 1 +end + +function T:assert_eq(expected, actual, message) + message = message or (tostring(expected) .. ' != ' .. tostring(actual)) + assert(expected == actual, ('[tests.%s:%d] %s'):format(self.suite_name, self._index, message)) + self._index = self._index + 1 +end + + +function M.test(suite_name) + assert(suite_name, '[tests.test] suite_name is required.') + + local suite = require('tests.' .. suite_name) + suite.test(T.new(suite_name)) +end + + +return M -- cgit v1.2.3-70-g09d2