summaryrefslogtreecommitdiff
path: root/test.lua
diff options
context:
space:
mode:
Diffstat (limited to 'test.lua')
-rwxr-xr-xtest.lua32
1 files changed, 25 insertions, 7 deletions
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)