diff options
Diffstat (limited to 'test.lua')
| -rwxr-xr-x | test.lua | 32 | 
1 files changed, 25 insertions, 7 deletions
| @@ -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) | 
