From fc4a406371fdf130d6f0db02d3a2e09112686b9f Mon Sep 17 00:00:00 2001 From: sanine Date: Sun, 22 May 2022 12:43:03 -0500 Subject: fix bug in tests and add marigold.h --- test.lua | 32 +++++++++++++++++++++++++------- 1 file changed, 25 insertions(+), 7 deletions(-) (limited to 'test.lua') diff --git a/test.lua b/test.lua index d66f977..81d5d77 100755 --- a/test.lua +++ b/test.lua @@ -14,11 +14,6 @@ function test(description, func) end end -function test_assert(str) - local f = assert(loadstring('return ' .. str)) - assert(f(), 'assertion failed: ' .. str) -end - test("marigold.get_metavars correctly calls os.getenv", function() -- mock os.getenv @@ -37,12 +32,35 @@ test("marigold.get_metavars correctly calls os.getenv", function() REQUEST_METHOD = 'uhh, to do what?', SCRIPT_NAME = 'pretty sure this is hamlet', SERVER_NAME = 'this isnt a restaurant', + SERVER_PORT = 'what, like a ship?', SERVER_PROTOCOL = 'no really, not a restaurant', SERVER_SOFTWARE = 'not familiar with that dish...', } os.getenv = function(varname) return env_tbl[varname] end -- actually call the function - --local metavars = marigold.get_metavars() - test_assert("type(metavars) == 'table'") + metavars = marigold.get_metavars() + + assert(type(metavars) == 'table') + for k, v in pairs(env_tbl) do + assert(metavars[string.lower(k)]) + assert(metavars[string.lower(k)] == env_tbl[k]) + end + + -- restore os.getenv + os.getenv = old_getenv +end) + + +test("marigold.h produces a correct basic tag", function() + local h = marigold.h + local h1 = h('h1', 'hello, world!') + assert(type(h1) == 'table') + assert(h1.tag == 'h1') + assert(h1.content == 'hello, world!') + -- should have no entries in the h1.attributes table + for k, v in pairs(h1.attributes) do + assert(false, string.format("%s, %s", tostring(k), tostring(v))) + end + assert(#(h1.children) == 0) end) -- cgit v1.2.1