summaryrefslogtreecommitdiff
path: root/test/test-lace.compiler.lua
diff options
context:
space:
mode:
authorDaniel Silverstone <dsilvers@digital-scurf.org>2017-07-08 11:01:34 +0100
committerDaniel Silverstone <dsilvers@digital-scurf.org>2017-07-08 11:01:34 +0100
commit57569d23ebb0ba8bf54a5e646b6757c1941cfce2 (patch)
tree949852aa83c55137ddff4d6d0a341a83a2ded64a /test/test-lace.compiler.lua
parent52d0418b0a71c9c9a0d16140e59f43193331208a (diff)
downloadlace-57569d23ebb0ba8bf54a5e646b6757c1941cfce2.tar.gz
Support reporting deep error messages more cleanlydsilvers/deep-errors
Diffstat (limited to 'test/test-lace.compiler.lua')
-rw-r--r--test/test-lace.compiler.lua19
1 files changed, 19 insertions, 0 deletions
diff --git a/test/test-lace.compiler.lua b/test/test-lace.compiler.lua
index cca4fb8..b660c77 100644
--- a/test/test-lace.compiler.lua
+++ b/test/test-lace.compiler.lua
@@ -427,6 +427,25 @@ function suite.okay_negated_subdefine()
assert(result, msg)
end
+function suite.deep_errors_report_well()
+ local result, msg = compiler.compile(comp_context, "deeperror1")
+ local expected_err = [[
+define's second parameter (broken) must be a control type such as anyof
+real-deeperror3 :: 3
+define something broken
+ ^^^^^^
+while including deeperror3
+real-deeperror2 :: 3
+include deeperror3
+ ^^^^^^^^^^
+while including deeperror2
+real-deeperror1 :: 3
+include deeperror2
+ ^^^^^^^^^^]]
+ assert(not result, "Err, didn't want the compilation to succeed")
+ assert(msg == expected_err, "Error message did not match")
+end
+
local count_ok = 0
for _, testname in ipairs(testnames) do
-- print("Run: " .. testname)