summaryrefslogtreecommitdiff
path: root/tests/modules
diff options
context:
space:
mode:
authorruki <[email protected]>2021-01-10 23:00:09 +0800
committerruki <[email protected]>2021-01-10 23:00:09 +0800
commitce87d03e8ea89130933b2bc1b52e8bc31257fcfd (patch)
tree34e893e1f96e0d40925b61a7f3a97a68e605c4b4 /tests/modules
parent16b51323f32c8951c49f7637c1038d5ee841dbe1 (diff)
improve tests
Diffstat (limited to 'tests/modules')
-rw-r--r--tests/modules/os/test.lua38
1 files changed, 27 insertions, 11 deletions
diff --git a/tests/modules/os/test.lua b/tests/modules/os/test.lua
index 407421a5c..cf55366e8 100644
--- a/tests/modules/os/test.lua
+++ b/tests/modules/os/test.lua
@@ -63,25 +63,41 @@ end
function test_argv(t)
t:are_equal(os.argv(""), {})
+ -- $cli aa bb cc
t:are_equal(os.argv("aa bb cc"), {"aa", "bb", "cc"})
+ -- $cli aa --bb=bbb -c
t:are_equal(os.argv("aa --bb=bbb -c"), {"aa", "--bb=bbb", "-c"})
- t:are_equal(os.argv("\"aa bb cc\" dd"), {"aa bb cc", "dd"})
- t:are_equal(os.argv("\"aa(bb)cc\" dd"), {"aa(bb)cc", "dd"})
- t:are_equal(os.argv("aa\\bb/cc dd"), {"aa\\bb/cc", "dd"})
- t:are_equal(os.argv("\"aa\\\\bb/cc dd\" ee"), {"aa\\bb/cc dd", "ee"})
- t:are_equal(os.argv("\"aa\\\\bb/cc (dd)\" ee"), {"aa\\bb/cc (dd)", "ee"})
- t:are_equal(os.argv("-D__prefix__=\\\"tbox\\\""), {"-D__prefix__=\"tbox\""})
+ -- $cli "aa bb cc" dd
+ t:are_equal(os.argv('"aa bb cc" dd'), {"aa bb cc", "dd"})
+ -- $cli aa(bb)cc dd
+ t:are_equal(os.argv('"aa(bb)cc" dd'), {"aa(bb)cc", "dd"})
+ -- $cli aa\\bb/cc dd
+ t:are_equal(os.argv('aa\\bb/cc dd'), {"aa\\bb/cc", "dd"})
+ -- $cli "aa\\bb/cc dd" ee
+ t:are_equal(os.argv('"aa\\\\bb/cc dd" ee'), {"aa\\bb/cc dd", "ee"})
+ -- $cli "aa\\bb/cc (dd)" ee
+ t:are_equal(os.argv('"aa\\\\bb/cc (dd)" ee'), {"aa\\bb/cc (dd)", "ee"})
+ -- $cli -DTEST=\"hello\"
+ t:are_equal(os.argv('-DTEST=\\"hello\\"'), {'-DTEST="hello"'})
+ -- $cli -DTEST="hello"
+ t:are_equal(os.argv('-DTEST="hello"'), {'-DTEST=hello'})
+ -- $cli "-DTEST=\"hello world\"" "-DTEST2="\hello world2\""
+ t:are_equal(os.argv('"-DTEST=\\\"hello world\\\"" "-DTEST2=\\\"hello world2\\\""'), {'-DTEST="hello world"', '-DTEST2="hello world2"'})
+ -- $cli '-DTEST="hello world"' '-DTEST2="hello world2"'
+ t:are_equal(os.argv("'-DTEST=\"hello world\"' '-DTEST2=\"hello world2\"'"), {'-DTEST="hello world"', '-DTEST2="hello world2"'})
end
function test_args(t)
t:are_equal(os.args({}), "")
t:are_equal(os.args({"aa", "bb", "cc"}), "aa bb cc")
t:are_equal(os.args({"aa", "--bb=bbb", "-c"}), "aa --bb=bbb -c")
- t:are_equal(os.args({"aa bb cc", "dd"}), "\"aa bb cc\" dd")
- t:are_equal(os.args({"aa(bb)cc", "dd"}), "\"aa(bb)cc\" dd")
+ t:are_equal(os.args({"aa bb cc", "dd"}), '"aa bb cc" dd')
+ t:are_equal(os.args({"aa(bb)cc", "dd"}), '"aa(bb)cc" dd')
t:are_equal(os.args({"aa\\bb/cc", "dd"}), "aa\\bb/cc dd")
- t:are_equal(os.args({"aa\\bb/cc dd", "ee"}), "\"aa\\\\bb/cc dd\" ee")
- t:are_equal(os.args({"aa\\bb/cc (dd)", "ee"}), "\"aa\\\\bb/cc (dd)\" ee")
- t:are_equal(os.args("-D__prefix__=\"tbox\""), "-D__prefix__=\\\"tbox\\\"")
+ t:are_equal(os.args({"aa\\bb/cc dd", "ee"}), '"aa\\\\bb/cc dd" ee')
+ t:are_equal(os.args({"aa\\bb/cc (dd)", "ee"}), '"aa\\\\bb/cc (dd)" ee')
t:are_equal(os.args({"aa\\bb/cc", "dd"}, {escape = true}), "aa\\\\bb/cc dd")
+ t:are_equal(os.args('-DTEST="hello"'), '-DTEST=\\"hello\\"')
+ t:are_equal(os.args('-DTEST=hello'), '-DTEST=hello') -- irreversible
+-- t:are_equal(os.args({'-DTEST="hello world"', '-DTEST2="hello world2"'}), '"-DTEST=\\\"hello world\\\"" "-DTEST2=\\\"hello world2\\\""')
end