aboutsummaryrefslogtreecommitdiffstats
path: root/test/test_layout.lua
diff options
context:
space:
mode:
Diffstat (limited to 'test/test_layout.lua')
-rw-r--r--test/test_layout.lua7
1 files changed, 6 insertions, 1 deletions
diff --git a/test/test_layout.lua b/test/test_layout.lua
index f3f47e3..976f78f 100644
--- a/test/test_layout.lua
+++ b/test/test_layout.lua
@@ -50,7 +50,12 @@ assert(math.abs(span.w - (a.w * 2 + G.GAP)) < 0.01, 'span must absorb the gap')
-- The shipped layout must not place anything outside the declared grid, which
-- is the mistake a user editing the table will actually make.
-for _, e in ipairs(G.layout or {}) do
+--
+-- No `or {}` fallback here: with one, an unexported layout makes ipairs walk an
+-- empty table and the whole block passes vacuously, which is exactly the bug
+-- this assertion is supposed to catch.
+assert(G.layout, 'dashboard.lua must export layout')
+for _, e in ipairs(G.layout) do
assert(e.col >= 1 and e.col + (e.w or 1) - 1 <= G.COLS,
'layout entry out of columns: ' .. tostring(e.widget))
assert(e.row >= 1 and e.row + (e.h or 1) - 1 <= G.ROWS,