Refactor lush tests: remove duplication, fill coverage gaps, wire into all.lua

- Wire all 11 lush test files into testes/all.lua (was only 4)
- Delete dead commands-interactive.lua (disabled via os.exit(0))
- Remove duplicate regression test from piping.lua
- Add user-defined command tests (lush.commands): basic, int return,
  table return, error handling, removal, API call
- Add lush.subcmd() and lush.interactive() direct call tests
- Add argv edge cases: single-quote backslash, \$ escape, unknown
  escape, adjacent quote concatenation
- Add globbing edge cases: brace suffix, no-comma braces, bracket
  glob, mid-word tilde passthrough
- Add signal exit code test (128+9=137)
- Add escaped-pipe and empty interactive command tests
This commit is contained in:
Cormac Shannon
2026-03-22 17:58:09 +00:00
parent 9bc7dc01b7
commit 917509aa8a
8 changed files with 176 additions and 373 deletions

View File

@@ -204,6 +204,13 @@ dofile('lush/commands.lua')
dofile('lush/argv.lua')
dofile('lush/interpolation.lua')
dofile('lush/envvars.lua')
dofile('lush/piping.lua')
dofile('lush/globbing.lua')
dofile('lush/interactive.lua')
dofile('lush/builtins.lua')
dofile('lush/lushlib.lua')
dofile('lush/config.lua')
dofile('lush/prompt.lua')
if #msgs > 0 then
local m = table.concat(msgs, "\n ")