diff options
author | Adam Harrison <adamdharrison@gmail.com> | 2023-01-11 21:59:24 -0500 |
---|---|---|
committer | Adam Harrison <adamdharrison@gmail.com> | 2023-01-11 21:59:24 -0500 |
commit | 0f9fb0343f983418051a88ef630c267e6954f3bb (patch) | |
tree | f42a6b362592a80b1233d5ac75b794a503a296e1 /t/run.lua | |
parent | 46bf49a25bd772413576d26e8a80020aaae7c9dd (diff) | |
download | lite-xl-plugin-manager-0f9fb0343f983418051a88ef630c267e6954f3bb.tar.gz lite-xl-plugin-manager-0f9fb0343f983418051a88ef630c267e6954f3bb.zip |
Forgot debug message.v0.996
Diffstat (limited to 't/run.lua')
-rw-r--r-- | t/run.lua | 109 |
1 files changed, 54 insertions, 55 deletions
@@ -1,63 +1,12 @@ local json = require "plugins.json" - -setmetatable(_G, { __index = function(t, k) if not rawget(t, k) then error("cannot get undefined global variable: " .. k, 2) end end, __newindex = function(t, k) error("cannot set global variable: " .. k, 2) end }) - +local lpm +local function assert_exists(path) if not io.open(path, "rb") then error("assertion failed: file " .. path .. " does not exist", 2) end end +local function assert_not_exists(path) if io.open(path, "rb") then error("assertion failed: file " .. path .. " exists", 2) end end local tmpdir = os.getenv("TMPDIR") or "/tmp" local fast = os.getenv("FAST") -local last_command_result, last_command local userdir = tmpdir .. "/lpmtest" -local function lpm(cmd) - last_command = "./lpm --quiet --json --userdir=" .. userdir .. " " .. cmd - local pipe = io.popen(last_command, "r") - last_command_result = json.decode(pipe:read("*all")) - local success = pipe:close() - if not success then error("error calling lpm", 2) end - return last_command_result -end - -local function assert_exists(path) - if not io.open(path, "rb") then error("assertion failed: file " .. path .. " does not exist", 2) end -end -local function assert_not_exists(path) - if io.open(path, "rb") then error("assertion failed: file " .. path .. " exists", 2) end -end +setmetatable(_G, { __index = function(t, k) if not rawget(t, k) then error("cannot get undefined global variable: " .. k, 2) end end, __newindex = function(t, k) error("cannot set global variable: " .. k, 2) end }) -local function run_tests(tests, arg) - local fail_count = 0 - local names = {} - if #arg == 0 then - for k,v in pairs(tests) do table.insert(names, k) end - else - names = arg - end - table.sort(names) - local max_name = 0 - for i,k in ipairs(names) do max_name = math.max(max_name, #k) end - for i,k in ipairs(names) do - local v = tests[k] - if fast then - os.execute("rm -rf " .. tmpdir .. "/lpmtest/plugins && mkdir -p " .. tmpdir .. "/lpmtest"); - else - os.execute("rm -rf " .. tmpdir .. "/lpmtest && mkdir -p " .. tmpdir .. "/lpmtest"); - end - io.stdout:write(string.format("test %-" .. (max_name + 1) .. "s: ", k)) - local failed = false - xpcall(v, function(err) - print("[FAIL]: " .. err) - print(debug.traceback()) - print() - print() - print("Last Command: " .. last_command) - print(json.encode(last_command_result)) - fail_count = fail_count + 1 - failed = true - end) - if not failed then - print("[PASSED]") - end - end - os.exit(fail_count) -end local tests = { ["00_install_singleton"] = function() @@ -111,4 +60,54 @@ local tests = { } + + + +local last_command_result, last_command +lpm = function(cmd) + last_command = "./lpm --quiet --json --userdir=" .. userdir .. " " .. cmd + local pipe = io.popen(last_command, "r") + last_command_result = json.decode(pipe:read("*all")) + local success = pipe:close() + if not success then error("error calling lpm", 2) end + return last_command_result +end + +local function run_tests(tests, arg) + local fail_count = 0 + local names = {} + if #arg == 0 then + for k,v in pairs(tests) do table.insert(names, k) end + else + names = arg + end + table.sort(names) + local max_name = 0 + for i,k in ipairs(names) do max_name = math.max(max_name, #k) end + for i,k in ipairs(names) do + local v = tests[k] + if fast then + os.execute("rm -rf " .. tmpdir .. "/lpmtest/plugins && mkdir -p " .. tmpdir .. "/lpmtest"); + else + os.execute("rm -rf " .. tmpdir .. "/lpmtest && mkdir -p " .. tmpdir .. "/lpmtest"); + end + io.stdout:write(string.format("test %-" .. (max_name + 1) .. "s: ", k)) + local failed = false + xpcall(v, function(err) + print("[FAIL]: " .. debug.traceback(err, 2)) + print() + print() + print("Last Command: " .. last_command) + print(json.encode(last_command_result)) + fail_count = fail_count + 1 + failed = true + end) + if not failed then + print("[PASSED]") + end + end + os.exit(fail_count) +end + + run_tests(tests, arg) |