From e371c801fed71bb73bc7c027e3de5ad2a6116673 Mon Sep 17 00:00:00 2001 From: Nathan Reiner Date: Mon, 20 Apr 2026 19:30:28 +0200 Subject: add tests and fix path resolution bug --- tests/recursive/build.lua | 7 +++++++ tests/recursive/src/index.html | 15 +++++++++++++++ tests/recursive/src/second.html | 15 +++++++++++++++ tests/simple/build.lua | 8 ++++++++ tests/simple/test.py | 39 +++++++++++++++++++++++++++++++++++++++ 5 files changed, 84 insertions(+) create mode 100644 tests/recursive/build.lua create mode 100644 tests/recursive/src/index.html create mode 100644 tests/recursive/src/second.html create mode 100644 tests/simple/build.lua create mode 100644 tests/simple/test.py (limited to 'tests') diff --git a/tests/recursive/build.lua b/tests/recursive/build.lua new file mode 100644 index 0000000..37e1d8e --- /dev/null +++ b/tests/recursive/build.lua @@ -0,0 +1,7 @@ +local template = Template:new() + +template:add_directory('./src', { + name = template:option('name') +}) + +return template diff --git a/tests/recursive/src/index.html b/tests/recursive/src/index.html new file mode 100644 index 0000000..38b1f0b --- /dev/null +++ b/tests/recursive/src/index.html @@ -0,0 +1,15 @@ + + + + @{name()} + + + @{function() + local text = "" + for i=1,10 do + text = text .. ' ' .. tostring(i) + end + return text + end} + + diff --git a/tests/recursive/src/second.html b/tests/recursive/src/second.html new file mode 100644 index 0000000..e03a249 --- /dev/null +++ b/tests/recursive/src/second.html @@ -0,0 +1,15 @@ + + + + @{name()} + + + @{function() + local text = "" + for i=1,50 do + text = text .. ' ' .. tostring(i) + end + return text + end} + + diff --git a/tests/simple/build.lua b/tests/simple/build.lua new file mode 100644 index 0000000..996ccda --- /dev/null +++ b/tests/simple/build.lua @@ -0,0 +1,8 @@ +local template = Template:new() + +template:add_file("./test.py", { + module = "a_module_that_is_different", + name = template:option('name') +}) + +return template diff --git a/tests/simple/test.py b/tests/simple/test.py new file mode 100644 index 0000000..20c1c7e --- /dev/null +++ b/tests/simple/test.py @@ -0,0 +1,39 @@ +#!/usr/bin/env python3 + +# This module is called @{name()} + +import @{module} + +print("@{function() + return "Hello World" +end}") + +print("@{function() + local a = { "asdf", "1234" } + return a[1] +end}") + +print(@{function() + local a = { "asdf", "1234" } -- { + return a[2] +end}) + +print("@{function() + local a = "asdf{asdf" + return a:sub(1) +end}") + +print("@{function() + local a = "asdf" + --[[ + some comment } + --]] + return a +end}") + +print("@{function() + local a = [[ + some comment } + ]] + return a:sub(2, 8) +end}") -- cgit v1.2.3-70-g09d2