diff options
author | 2016-03-12 12:31:13 +0100 | |
---|---|---|
committer | 2016-03-12 12:31:13 +0100 | |
commit | a026a582f1a0ea8c1ede3acaddacef506ef3f3b0 (patch) | |
tree | e31573822f2359677de519f9f3b600d98e8764cd /3rdparty/luv/lib/tap.lua | |
parent | 477d2abd43984f076b7e45f5527591fa8fd0d241 (diff) | |
parent | dcab55bf53b94713a6f72e9633f5101c8dd6c08c (diff) |
Merge pull request #15 from mamedev/master
Sync to base master
Diffstat (limited to '3rdparty/luv/lib/tap.lua')
-rw-r--r-- | 3rdparty/luv/lib/tap.lua | 165 |
1 files changed, 0 insertions, 165 deletions
diff --git a/3rdparty/luv/lib/tap.lua b/3rdparty/luv/lib/tap.lua deleted file mode 100644 index d1cfb59c249..00000000000 --- a/3rdparty/luv/lib/tap.lua +++ /dev/null @@ -1,165 +0,0 @@ -local uv = require('luv') -local dump = require('lib/utils').dump -local stdout = require('lib/utils').stdout - -local function protect(...) - local n = select('#', ...) - local arguments = {...} - for i = 1, n do - arguments[i] = tostring(arguments[i]) - end - - local text = table.concat(arguments, "\t") - text = " " .. string.gsub(text, "\n", "\n ") - print(text) -end - -local function pprotect(...) - local n = select('#', ...) - local arguments = { ... } - - for i = 1, n do - arguments[i] = dump(arguments[i]) - end - - protect(table.concat(arguments, "\t")) -end - - -local tests = {}; - -local function run() - local passed = 0 - - if #tests < 1 then - error("No tests specified!") - end - - print("1.." .. #tests) - for i = 1, #tests do - local test = tests[i] - local cwd = uv.cwd() - local pass, err = xpcall(function () - local expected = 0 - local function expect(fn, count) - expected = expected + (count or 1) - return function (...) - expected = expected - 1 - local ret = fn(...) - collectgarbage() - return ret - end - end - test.fn(protect, pprotect, expect, uv) - collectgarbage() - uv.run() - collectgarbage() - if expected > 0 then - error("Missing " .. expected .. " expected call" .. (expected == 1 and "" or "s")) - elseif expected < 0 then - error("Found " .. -expected .. " unexpected call" .. (expected == -1 and "" or "s")) - end - collectgarbage() - local unclosed = 0 - uv.walk(function (handle) - if handle == stdout then return end - unclosed = unclosed + 1 - print("UNCLOSED", handle) - end) - if unclosed > 0 then - error(unclosed .. " unclosed handle" .. (unclosed == 1 and "" or "s")) - end - if uv.cwd() ~= cwd then - error("Test moved cwd from " .. cwd .. " to " .. uv.cwd()) - end - collectgarbage() - end, debug.traceback) - - -- Flush out any more opened handles - uv.stop() - uv.walk(function (handle) - if handle == stdout then return end - if not uv.is_closing(handle) then uv.close(handle) end - end) - uv.run() - uv.chdir(cwd) - - if pass then - print("ok " .. i .. " " .. test.name) - passed = passed + 1 - else - protect(err) - print("not ok " .. i .. " " .. test.name) - end - end - - local failed = #tests - passed - if failed == 0 then - print("# All tests passed") - else - print("#" .. failed .. " failed test" .. (failed == 1 and "" or "s")) - end - - -- Close all then handles, including stdout - uv.walk(uv.close) - uv.run() - - os.exit(-failed) -end - -local single = true -local prefix - -local function tap(suite) - - if type(suite) == "function" then - -- Pass in suite directly for single mode - suite(function (name, fn) - if prefix then - name = prefix .. ' - ' .. name - end - tests[#tests + 1] = { - name = name, - fn = fn - } - end) - prefix = nil - elseif type(suite) == "string" then - prefix = suite - single = false - else - -- Or pass in false to collect several runs of tests - -- And then pass in true in a later call to flush tests queue. - single = suite - end - - if single then run() end - -end - - ---[[ --- Sample Usage - -local passed, failed, total = tap(function (test) - - test("add 1 to 2", function(print) - print("Adding 1 to 2") - assert(1 + 2 == 3) - end) - - test("close handle", function (print, p, expect, uv) - local handle = uv.new_timer() - uv.close(handle, expect(function (self) - assert(self == handle) - end)) - end) - - test("simulate failure", function () - error("Oopsie!") - end) - -end) -]] - -return tap |