aboutsummaryrefslogtreecommitdiffstats
path: root/tests/auto/qtcprocess/tst_qtcprocess.cpp
diff options
context:
space:
mode:
authorTim Jenssen <tim.jenssen@qt.io>2017-02-22 15:09:35 +0100
committerTim Jenssen <tim.jenssen@qt.io>2017-02-22 16:25:09 +0000
commit2631ffabd5a7955a40b9779b0d52af64e3bd3a60 (patch)
treea030ea11d0d561b720d0e0d352b4a0fc728a6758 /tests/auto/qtcprocess/tst_qtcprocess.cpp
parent005ca71cac65b7c766d814b97b830e2af1c7aa53 (diff)
Remove spaces in initializer lists
Format initializer lists code style like. Change-Id: Ib82c235e4ba7dc75ee96a7abc0c47eff7b0a9013 Reviewed-by: hjk <hjk@qt.io>
Diffstat (limited to 'tests/auto/qtcprocess/tst_qtcprocess.cpp')
-rw-r--r--tests/auto/qtcprocess/tst_qtcprocess.cpp698
1 files changed, 349 insertions, 349 deletions
diff --git a/tests/auto/qtcprocess/tst_qtcprocess.cpp b/tests/auto/qtcprocess/tst_qtcprocess.cpp
index d5fbb42a18..e789203fbc 100644
--- a/tests/auto/qtcprocess/tst_qtcprocess.cpp
+++ b/tests/auto/qtcprocess/tst_qtcprocess.cpp
@@ -140,39 +140,39 @@ void tst_QtcProcess::splitArgs_data()
const QtcProcess::SplitError err;
const OsType os;
} vals[] = {
- { "", "", QtcProcess::SplitOk, OsTypeWindows },
- { " ", "", QtcProcess::SplitOk, OsTypeWindows },
- { "hi", "hi", QtcProcess::SplitOk, OsTypeWindows },
- { "hi ho", "hi ho", QtcProcess::SplitOk, OsTypeWindows },
- { " hi ho ", "hi ho", QtcProcess::SplitOk, OsTypeWindows },
- { "\"hi ho\" \"hi\" ho ", "\"hi ho\" hi ho", QtcProcess::SplitOk, OsTypeWindows },
- { "\\", "\\", QtcProcess::SplitOk, OsTypeWindows },
- { "\\\"", "\"\"\\^\"\"\"", QtcProcess::SplitOk, OsTypeWindows },
- { "\"hi\"\"\"ho\"", "\"hi\"\\^\"\"ho\"", QtcProcess::SplitOk, OsTypeWindows },
- { "\\\\\\\"", "\"\"\\\\\\^\"\"\"", QtcProcess::SplitOk, OsTypeWindows },
- { " ^^ ", "\"^^\"", QtcProcess::SplitOk, OsTypeWindows },
- { "hi\"", "", QtcProcess::BadQuoting, OsTypeWindows },
- { "hi\"dood", "", QtcProcess::BadQuoting, OsTypeWindows },
- { "%var%", "%var%", QtcProcess::SplitOk, OsTypeWindows },
-
- { "", "", QtcProcess::SplitOk, OsTypeLinux },
- { " ", "", QtcProcess::SplitOk, OsTypeLinux },
- { "hi", "hi", QtcProcess::SplitOk, OsTypeLinux },
- { "hi ho", "hi ho", QtcProcess::SplitOk, OsTypeLinux },
- { " hi ho ", "hi ho", QtcProcess::SplitOk, OsTypeLinux },
- { "'hi ho' \"hi\" ho ", "'hi ho' hi ho", QtcProcess::SplitOk, OsTypeLinux },
- { " \\ ", "' '", QtcProcess::SplitOk, OsTypeLinux },
- { " \\\" ", "'\"'", QtcProcess::SplitOk, OsTypeLinux },
- { " '\"' ", "'\"'", QtcProcess::SplitOk, OsTypeLinux },
- { " \"\\\"\" ", "'\"'", QtcProcess::SplitOk, OsTypeLinux },
- { "hi'", "", QtcProcess::BadQuoting, OsTypeLinux },
- { "hi\"dood", "", QtcProcess::BadQuoting, OsTypeLinux },
- { "$var", "'$var'", QtcProcess::SplitOk, OsTypeLinux },
- { "~", "@HOME@", QtcProcess::SplitOk, OsTypeLinux },
- { "~ foo", "@HOME@ foo", QtcProcess::SplitOk, OsTypeLinux },
- { "foo ~", "foo @HOME@", QtcProcess::SplitOk, OsTypeLinux },
- { "~/foo", "@HOME@/foo", QtcProcess::SplitOk, OsTypeLinux },
- { "~foo", "'~foo'", QtcProcess::SplitOk, OsTypeLinux }
+ {"", "", QtcProcess::SplitOk, OsTypeWindows},
+ {" ", "", QtcProcess::SplitOk, OsTypeWindows},
+ {"hi", "hi", QtcProcess::SplitOk, OsTypeWindows},
+ {"hi ho", "hi ho", QtcProcess::SplitOk, OsTypeWindows},
+ {" hi ho ", "hi ho", QtcProcess::SplitOk, OsTypeWindows},
+ {"\"hi ho\" \"hi\" ho ", "\"hi ho\" hi ho", QtcProcess::SplitOk, OsTypeWindows},
+ {"\\", "\\", QtcProcess::SplitOk, OsTypeWindows},
+ {"\\\"", "\"\"\\^\"\"\"", QtcProcess::SplitOk, OsTypeWindows},
+ {"\"hi\"\"\"ho\"", "\"hi\"\\^\"\"ho\"", QtcProcess::SplitOk, OsTypeWindows},
+ {"\\\\\\\"", "\"\"\\\\\\^\"\"\"", QtcProcess::SplitOk, OsTypeWindows},
+ {" ^^ ", "\"^^\"", QtcProcess::SplitOk, OsTypeWindows},
+ {"hi\"", "", QtcProcess::BadQuoting, OsTypeWindows},
+ {"hi\"dood", "", QtcProcess::BadQuoting, OsTypeWindows},
+ {"%var%", "%var%", QtcProcess::SplitOk, OsTypeWindows},
+
+ {"", "", QtcProcess::SplitOk, OsTypeLinux},
+ {" ", "", QtcProcess::SplitOk, OsTypeLinux},
+ {"hi", "hi", QtcProcess::SplitOk, OsTypeLinux},
+ {"hi ho", "hi ho", QtcProcess::SplitOk, OsTypeLinux},
+ {" hi ho ", "hi ho", QtcProcess::SplitOk, OsTypeLinux},
+ {"'hi ho' \"hi\" ho ", "'hi ho' hi ho", QtcProcess::SplitOk, OsTypeLinux},
+ {" \\ ", "' '", QtcProcess::SplitOk, OsTypeLinux},
+ {" \\\" ", "'\"'", QtcProcess::SplitOk, OsTypeLinux},
+ {" '\"' ", "'\"'", QtcProcess::SplitOk, OsTypeLinux},
+ {" \"\\\"\" ", "'\"'", QtcProcess::SplitOk, OsTypeLinux},
+ {"hi'", "", QtcProcess::BadQuoting, OsTypeLinux},
+ {"hi\"dood", "", QtcProcess::BadQuoting, OsTypeLinux},
+ {"$var", "'$var'", QtcProcess::SplitOk, OsTypeLinux},
+ {"~", "@HOME@", QtcProcess::SplitOk, OsTypeLinux},
+ {"~ foo", "@HOME@ foo", QtcProcess::SplitOk, OsTypeLinux},
+ {"foo ~", "foo @HOME@", QtcProcess::SplitOk, OsTypeLinux},
+ {"~/foo", "@HOME@/foo", QtcProcess::SplitOk, OsTypeLinux},
+ {"~foo", "'~foo'", QtcProcess::SplitOk, OsTypeLinux}
};
for (unsigned i = 0; i < sizeof(vals)/sizeof(vals[0]); i++) {
@@ -211,36 +211,36 @@ void tst_QtcProcess::prepareArgs_data()
const QtcProcess::SplitError err;
const OsType os;
} vals[] = {
- { " ", " ", QtcProcess::SplitOk, OsTypeWindows },
- { "", "", QtcProcess::SplitOk, OsTypeWindows },
- { "hi", "hi", QtcProcess::SplitOk, OsTypeWindows },
- { "hi ho", "hi ho", QtcProcess::SplitOk, OsTypeWindows },
- { " hi ho ", " hi ho ", QtcProcess::SplitOk, OsTypeWindows },
- { "\"hi ho\" \"hi\" ho ", "\"hi ho\" \"hi\" ho ", QtcProcess::SplitOk, OsTypeWindows },
- { "\\", "\\", QtcProcess::SplitOk, OsTypeWindows },
- { "\\\"", "\\\"", QtcProcess::SplitOk, OsTypeWindows },
- { "\"hi\"\"ho\"", "\"hi\"\"ho\"", QtcProcess::SplitOk, OsTypeWindows },
- { "\\\\\\\"", "\\\\\\\"", QtcProcess::SplitOk, OsTypeWindows },
- { "^^", "^", QtcProcess::SplitOk, OsTypeWindows },
- { "hi\"", "hi\"", QtcProcess::SplitOk, OsTypeWindows },
- { "hi\"dood", "hi\"dood", QtcProcess::SplitOk, OsTypeWindows },
- { "%var%", "", QtcProcess::FoundMeta, OsTypeWindows },
- { "echo hi > file", "", QtcProcess::FoundMeta, OsTypeWindows },
-
- { "", "", QtcProcess::SplitOk, OsTypeLinux },
- { " ", "", QtcProcess::SplitOk, OsTypeLinux },
- { "hi", "hi", QtcProcess::SplitOk, OsTypeLinux },
- { "hi ho", "hi ho", QtcProcess::SplitOk, OsTypeLinux },
- { " hi ho ", "hi ho", QtcProcess::SplitOk, OsTypeLinux },
- { "'hi ho' \"hi\" ho ", "'hi ho' hi ho", QtcProcess::SplitOk, OsTypeLinux },
- { " \\ ", "' '", QtcProcess::SplitOk, OsTypeLinux },
- { "hi'", "", QtcProcess::BadQuoting, OsTypeLinux },
- { "hi\"dood", "", QtcProcess::BadQuoting, OsTypeLinux },
- { "$var", "", QtcProcess::FoundMeta, OsTypeLinux },
- { "~", "@HOME@", QtcProcess::SplitOk, OsTypeLinux },
- { "~ foo", "@HOME@ foo", QtcProcess::SplitOk, OsTypeLinux },
- { "~/foo", "@HOME@/foo", QtcProcess::SplitOk, OsTypeLinux },
- { "~foo", "", QtcProcess::FoundMeta, OsTypeLinux }
+ {" ", " ", QtcProcess::SplitOk, OsTypeWindows},
+ {"", "", QtcProcess::SplitOk, OsTypeWindows},
+ {"hi", "hi", QtcProcess::SplitOk, OsTypeWindows},
+ {"hi ho", "hi ho", QtcProcess::SplitOk, OsTypeWindows},
+ {" hi ho ", " hi ho ", QtcProcess::SplitOk, OsTypeWindows},
+ {"\"hi ho\" \"hi\" ho ", "\"hi ho\" \"hi\" ho ", QtcProcess::SplitOk, OsTypeWindows},
+ {"\\", "\\", QtcProcess::SplitOk, OsTypeWindows},
+ {"\\\"", "\\\"", QtcProcess::SplitOk, OsTypeWindows},
+ {"\"hi\"\"ho\"", "\"hi\"\"ho\"", QtcProcess::SplitOk, OsTypeWindows},
+ {"\\\\\\\"", "\\\\\\\"", QtcProcess::SplitOk, OsTypeWindows},
+ {"^^", "^", QtcProcess::SplitOk, OsTypeWindows},
+ {"hi\"", "hi\"", QtcProcess::SplitOk, OsTypeWindows},
+ {"hi\"dood", "hi\"dood", QtcProcess::SplitOk, OsTypeWindows},
+ {"%var%", "", QtcProcess::FoundMeta, OsTypeWindows},
+ {"echo hi > file", "", QtcProcess::FoundMeta, OsTypeWindows},
+
+ {"", "", QtcProcess::SplitOk, OsTypeLinux},
+ {" ", "", QtcProcess::SplitOk, OsTypeLinux},
+ {"hi", "hi", QtcProcess::SplitOk, OsTypeLinux},
+ {"hi ho", "hi ho", QtcProcess::SplitOk, OsTypeLinux},
+ {" hi ho ", "hi ho", QtcProcess::SplitOk, OsTypeLinux},
+ {"'hi ho' \"hi\" ho ", "'hi ho' hi ho", QtcProcess::SplitOk, OsTypeLinux},
+ {" \\ ", "' '", QtcProcess::SplitOk, OsTypeLinux},
+ {"hi'", "", QtcProcess::BadQuoting, OsTypeLinux},
+ {"hi\"dood", "", QtcProcess::BadQuoting, OsTypeLinux},
+ {"$var", "", QtcProcess::FoundMeta, OsTypeLinux},
+ {"~", "@HOME@", QtcProcess::SplitOk, OsTypeLinux},
+ {"~ foo", "@HOME@ foo", QtcProcess::SplitOk, OsTypeLinux},
+ {"~/foo", "@HOME@/foo", QtcProcess::SplitOk, OsTypeLinux},
+ {"~foo", "", QtcProcess::FoundMeta, OsTypeLinux}
};
for (unsigned i = 0; i < sizeof(vals)/sizeof(vals[0]); i++) {
@@ -281,56 +281,56 @@ void tst_QtcProcess::prepareArgsEnv_data()
const QtcProcess::SplitError err;
const OsType os;
} vals[] = {
- { " ", " ", QtcProcess::SplitOk, OsTypeWindows },
- { "", "", QtcProcess::SplitOk, OsTypeWindows },
- { "hi", "hi", QtcProcess::SplitOk, OsTypeWindows },
- { "hi ho", "hi ho", QtcProcess::SplitOk, OsTypeWindows },
- { " hi ho ", " hi ho ", QtcProcess::SplitOk, OsTypeWindows },
- { "\"hi ho\" \"hi\" ho ", "\"hi ho\" \"hi\" ho ", QtcProcess::SplitOk, OsTypeWindows },
- { "\\", "\\", QtcProcess::SplitOk, OsTypeWindows },
- { "\\\"", "\\\"", QtcProcess::SplitOk, OsTypeWindows },
- { "\"hi\"\"ho\"", "\"hi\"\"ho\"", QtcProcess::SplitOk, OsTypeWindows },
- { "\\\\\\\"", "\\\\\\\"", QtcProcess::SplitOk, OsTypeWindows },
- { "^^", "^", QtcProcess::SplitOk, OsTypeWindows },
- { "hi\"", "hi\"", QtcProcess::SplitOk, OsTypeWindows },
- { "hi\"dood", "hi\"dood", QtcProcess::SplitOk, OsTypeWindows },
- { "%empty%", "%empty%", QtcProcess::SplitOk, OsTypeWindows }, // Yep, no empty variables on Windows.
- { "%word%", "hi", QtcProcess::SplitOk, OsTypeWindows },
- { " %word% ", " hi ", QtcProcess::SplitOk, OsTypeWindows },
- { "%words%", "hi ho", QtcProcess::SplitOk, OsTypeWindows },
- { "%nonsense%words%", "%nonsensehi ho", QtcProcess::SplitOk, OsTypeWindows },
- { "fail%nonsense%words%", "fail%nonsensehi ho", QtcProcess::SplitOk, OsTypeWindows },
- { "%words%words%", "hi howords%", QtcProcess::SplitOk, OsTypeWindows },
- { "%words%%words%", "hi hohi ho", QtcProcess::SplitOk, OsTypeWindows },
- { "echo hi > file", "", QtcProcess::FoundMeta, OsTypeWindows },
-
- { "", "", QtcProcess::SplitOk, OsTypeLinux },
- { " ", "", QtcProcess::SplitOk, OsTypeLinux },
- { "hi", "hi", QtcProcess::SplitOk, OsTypeLinux },
- { "hi ho", "hi ho", QtcProcess::SplitOk, OsTypeLinux },
- { " hi ho ", "hi ho", QtcProcess::SplitOk, OsTypeLinux },
- { "'hi ho' \"hi\" ho ", "'hi ho' hi ho", QtcProcess::SplitOk, OsTypeLinux },
- { " \\ ", "' '", QtcProcess::SplitOk, OsTypeLinux },
- { "hi'", "", QtcProcess::BadQuoting, OsTypeLinux },
- { "hi\"dood", "", QtcProcess::BadQuoting, OsTypeLinux },
- { "$empty", "", QtcProcess::SplitOk, OsTypeLinux },
- { "$word", "hi", QtcProcess::SplitOk, OsTypeLinux },
- { " $word ", "hi", QtcProcess::SplitOk, OsTypeLinux },
- { "${word}", "hi", QtcProcess::SplitOk, OsTypeLinux },
- { " ${word} ", "hi", QtcProcess::SplitOk, OsTypeLinux },
- { "$words", "hi ho", QtcProcess::SplitOk, OsTypeLinux },
- { "$spacedwords", "hi ho sucker", QtcProcess::SplitOk, OsTypeLinux },
- { "hi${empty}ho", "hiho", QtcProcess::SplitOk, OsTypeLinux },
- { "hi${words}ho", "hihi hoho", QtcProcess::SplitOk, OsTypeLinux },
- { "hi${spacedwords}ho", "hi hi ho sucker ho", QtcProcess::SplitOk, OsTypeLinux },
- { "${", "", QtcProcess::BadQuoting, OsTypeLinux },
- { "${var", "", QtcProcess::BadQuoting, OsTypeLinux },
- { "${var ", "", QtcProcess::FoundMeta, OsTypeLinux },
- { "\"hi${words}ho\"", "'hihi hoho'", QtcProcess::SplitOk, OsTypeLinux },
- { "\"hi${spacedwords}ho\"", "'hi hi ho sucker ho'", QtcProcess::SplitOk, OsTypeLinux },
- { "\"${", "", QtcProcess::BadQuoting, OsTypeLinux },
- { "\"${var", "", QtcProcess::BadQuoting, OsTypeLinux },
- { "\"${var ", "", QtcProcess::FoundMeta, OsTypeLinux },
+ {" ", " ", QtcProcess::SplitOk, OsTypeWindows},
+ {"", "", QtcProcess::SplitOk, OsTypeWindows},
+ {"hi", "hi", QtcProcess::SplitOk, OsTypeWindows},
+ {"hi ho", "hi ho", QtcProcess::SplitOk, OsTypeWindows},
+ {" hi ho ", " hi ho ", QtcProcess::SplitOk, OsTypeWindows},
+ {"\"hi ho\" \"hi\" ho ", "\"hi ho\" \"hi\" ho ", QtcProcess::SplitOk, OsTypeWindows},
+ {"\\", "\\", QtcProcess::SplitOk, OsTypeWindows},
+ {"\\\"", "\\\"", QtcProcess::SplitOk, OsTypeWindows},
+ {"\"hi\"\"ho\"", "\"hi\"\"ho\"", QtcProcess::SplitOk, OsTypeWindows},
+ {"\\\\\\\"", "\\\\\\\"", QtcProcess::SplitOk, OsTypeWindows},
+ {"^^", "^", QtcProcess::SplitOk, OsTypeWindows},
+ {"hi\"", "hi\"", QtcProcess::SplitOk, OsTypeWindows},
+ {"hi\"dood", "hi\"dood", QtcProcess::SplitOk, OsTypeWindows},
+ {"%empty%", "%empty%", QtcProcess::SplitOk, OsTypeWindows}, // Yep, no empty variables on Windows.
+ {"%word%", "hi", QtcProcess::SplitOk, OsTypeWindows},
+ {" %word% ", " hi ", QtcProcess::SplitOk, OsTypeWindows},
+ {"%words%", "hi ho", QtcProcess::SplitOk, OsTypeWindows},
+ {"%nonsense%words%", "%nonsensehi ho", QtcProcess::SplitOk, OsTypeWindows},
+ {"fail%nonsense%words%", "fail%nonsensehi ho", QtcProcess::SplitOk, OsTypeWindows},
+ {"%words%words%", "hi howords%", QtcProcess::SplitOk, OsTypeWindows},
+ {"%words%%words%", "hi hohi ho", QtcProcess::SplitOk, OsTypeWindows},
+ {"echo hi > file", "", QtcProcess::FoundMeta, OsTypeWindows},
+
+ {"", "", QtcProcess::SplitOk, OsTypeLinux},
+ {" ", "", QtcProcess::SplitOk, OsTypeLinux},
+ {"hi", "hi", QtcProcess::SplitOk, OsTypeLinux},
+ {"hi ho", "hi ho", QtcProcess::SplitOk, OsTypeLinux},
+ {" hi ho ", "hi ho", QtcProcess::SplitOk, OsTypeLinux},
+ {"'hi ho' \"hi\" ho ", "'hi ho' hi ho", QtcProcess::SplitOk, OsTypeLinux},
+ {" \\ ", "' '", QtcProcess::SplitOk, OsTypeLinux},
+ {"hi'", "", QtcProcess::BadQuoting, OsTypeLinux},
+ {"hi\"dood", "", QtcProcess::BadQuoting, OsTypeLinux},
+ {"$empty", "", QtcProcess::SplitOk, OsTypeLinux},
+ {"$word", "hi", QtcProcess::SplitOk, OsTypeLinux},
+ {" $word ", "hi", QtcProcess::SplitOk, OsTypeLinux},
+ {"${word}", "hi", QtcProcess::SplitOk, OsTypeLinux},
+ {" ${word} ", "hi", QtcProcess::SplitOk, OsTypeLinux},
+ {"$words", "hi ho", QtcProcess::SplitOk, OsTypeLinux},
+ {"$spacedwords", "hi ho sucker", QtcProcess::SplitOk, OsTypeLinux},
+ {"hi${empty}ho", "hiho", QtcProcess::SplitOk, OsTypeLinux},
+ {"hi${words}ho", "hihi hoho", QtcProcess::SplitOk, OsTypeLinux},
+ {"hi${spacedwords}ho", "hi hi ho sucker ho", QtcProcess::SplitOk, OsTypeLinux},
+ {"${", "", QtcProcess::BadQuoting, OsTypeLinux},
+ {"${var", "", QtcProcess::BadQuoting, OsTypeLinux},
+ {"${var ", "", QtcProcess::FoundMeta, OsTypeLinux},
+ {"\"hi${words}ho\"", "'hihi hoho'", QtcProcess::SplitOk, OsTypeLinux},
+ {"\"hi${spacedwords}ho\"", "'hi hi ho sucker ho'", QtcProcess::SplitOk, OsTypeLinux},
+ {"\"${", "", QtcProcess::BadQuoting, OsTypeLinux},
+ {"\"${var", "", QtcProcess::BadQuoting, OsTypeLinux},
+ {"\"${var ", "", QtcProcess::FoundMeta, OsTypeLinux},
};
for (unsigned i = 0; i < sizeof(vals)/sizeof(vals[0]); i++) {
@@ -371,207 +371,207 @@ void tst_QtcProcess::expandMacros_data()
const char * const out;
OsType os;
} vals[] = {
- { "plain", 0, OsTypeWindows },
- { "%{a}", "hi", OsTypeWindows },
- { "%{aa}", "\"hi ho\"", OsTypeWindows },
- { "%{b}", "h\\i", OsTypeWindows },
- { "%{c}", "\\hi", OsTypeWindows },
- { "%{d}", "hi\\", OsTypeWindows },
- { "%{ba}", "\"h\\i ho\"", OsTypeWindows },
- { "%{ca}", "\"\\hi ho\"", OsTypeWindows },
- { "%{da}", "\"hi ho\\\\\"", OsTypeWindows }, // or "\"hi ho\"\\"
- { "%{e}", "\"h\"\\^\"\"i\"", OsTypeWindows },
- { "%{f}", "\"\"\\^\"\"hi\"", OsTypeWindows },
- { "%{g}", "\"hi\"\\^\"\"\"", OsTypeWindows },
- { "%{h}", "\"h\\\\\"\\^\"\"i\"", OsTypeWindows },
- { "%{i}", "\"\\\\\"\\^\"\"hi\"", OsTypeWindows },
- { "%{j}", "\"hi\\\\\"\\^\"\"\"", OsTypeWindows },
- { "%{k}", "\"&special;\"", OsTypeWindows },
- { "%{x}", "\\", OsTypeWindows },
- { "%{y}", "\"\"\\^\"\"\"", OsTypeWindows },
- { "%{z}", "\"\"", OsTypeWindows },
- { "^%{z}%{z}", "^%{z}%{z}", OsTypeWindows }, // stupid user check
-
- { "quoted", 0, OsTypeWindows },
- { "\"%{a}\"", "\"hi\"", OsTypeWindows },
- { "\"%{aa}\"", "\"hi ho\"", OsTypeWindows },
- { "\"%{b}\"", "\"h\\i\"", OsTypeWindows },
- { "\"%{c}\"", "\"\\hi\"", OsTypeWindows },
- { "\"%{d}\"", "\"hi\\\\\"", OsTypeWindows },
- { "\"%{ba}\"", "\"h\\i ho\"", OsTypeWindows },
- { "\"%{ca}\"", "\"\\hi ho\"", OsTypeWindows },
- { "\"%{da}\"", "\"hi ho\\\\\"", OsTypeWindows },
- { "\"%{e}\"", "\"h\"\\^\"\"i\"", OsTypeWindows },
- { "\"%{f}\"", "\"\"\\^\"\"hi\"", OsTypeWindows },
- { "\"%{g}\"", "\"hi\"\\^\"\"\"", OsTypeWindows },
- { "\"%{h}\"", "\"h\\\\\"\\^\"\"i\"", OsTypeWindows },
- { "\"%{i}\"", "\"\\\\\"\\^\"\"hi\"", OsTypeWindows },
- { "\"%{j}\"", "\"hi\\\\\"\\^\"\"\"", OsTypeWindows },
- { "\"%{k}\"", "\"&special;\"", OsTypeWindows },
- { "\"%{x}\"", "\"\\\\\"", OsTypeWindows },
- { "\"%{y}\"", "\"\"\\^\"\"\"", OsTypeWindows },
- { "\"%{z}\"", "\"\"", OsTypeWindows },
-
- { "leading bs", 0, OsTypeWindows },
- { "\\%{a}", "\\hi", OsTypeWindows },
- { "\\%{aa}", "\\\\\"hi ho\"", OsTypeWindows },
- { "\\%{b}", "\\h\\i", OsTypeWindows },
- { "\\%{c}", "\\\\hi", OsTypeWindows },
- { "\\%{d}", "\\hi\\", OsTypeWindows },
- { "\\%{ba}", "\\\\\"h\\i ho\"", OsTypeWindows },
- { "\\%{ca}", "\\\\\"\\hi ho\"", OsTypeWindows },
- { "\\%{da}", "\\\\\"hi ho\\\\\"", OsTypeWindows },
- { "\\%{e}", "\\\\\"h\"\\^\"\"i\"", OsTypeWindows },
- { "\\%{f}", "\\\\\"\"\\^\"\"hi\"", OsTypeWindows },
- { "\\%{g}", "\\\\\"hi\"\\^\"\"\"", OsTypeWindows },
- { "\\%{h}", "\\\\\"h\\\\\"\\^\"\"i\"", OsTypeWindows },
- { "\\%{i}", "\\\\\"\\\\\"\\^\"\"hi\"", OsTypeWindows },
- { "\\%{j}", "\\\\\"hi\\\\\"\\^\"\"\"", OsTypeWindows },
- { "\\%{x}", "\\\\", OsTypeWindows },
- { "\\%{y}", "\\\\\"\"\\^\"\"\"", OsTypeWindows },
- { "\\%{z}", "\\", OsTypeWindows },
-
- { "trailing bs", 0, OsTypeWindows },
- { "%{a}\\", "hi\\", OsTypeWindows },
- { "%{aa}\\", "\"hi ho\"\\", OsTypeWindows },
- { "%{b}\\", "h\\i\\", OsTypeWindows },
- { "%{c}\\", "\\hi\\", OsTypeWindows },
- { "%{d}\\", "hi\\\\", OsTypeWindows },
- { "%{ba}\\", "\"h\\i ho\"\\", OsTypeWindows },
- { "%{ca}\\", "\"\\hi ho\"\\", OsTypeWindows },
- { "%{da}\\", "\"hi ho\\\\\"\\", OsTypeWindows },
- { "%{e}\\", "\"h\"\\^\"\"i\"\\", OsTypeWindows },
- { "%{f}\\", "\"\"\\^\"\"hi\"\\", OsTypeWindows },
- { "%{g}\\", "\"hi\"\\^\"\"\"\\", OsTypeWindows },
- { "%{h}\\", "\"h\\\\\"\\^\"\"i\"\\", OsTypeWindows },
- { "%{i}\\", "\"\\\\\"\\^\"\"hi\"\\", OsTypeWindows },
- { "%{j}\\", "\"hi\\\\\"\\^\"\"\"\\", OsTypeWindows },
- { "%{x}\\", "\\\\", OsTypeWindows },
- { "%{y}\\", "\"\"\\^\"\"\"\\", OsTypeWindows },
- { "%{z}\\", "\\", OsTypeWindows },
-
- { "bs-enclosed", 0, OsTypeWindows },
- { "\\%{a}\\", "\\hi\\", OsTypeWindows },
- { "\\%{aa}\\", "\\\\\"hi ho\"\\", OsTypeWindows },
- { "\\%{b}\\", "\\h\\i\\", OsTypeWindows },
- { "\\%{c}\\", "\\\\hi\\", OsTypeWindows },
- { "\\%{d}\\", "\\hi\\\\", OsTypeWindows },
- { "\\%{ba}\\", "\\\\\"h\\i ho\"\\", OsTypeWindows },
- { "\\%{ca}\\", "\\\\\"\\hi ho\"\\", OsTypeWindows },
- { "\\%{da}\\", "\\\\\"hi ho\\\\\"\\", OsTypeWindows },
- { "\\%{e}\\", "\\\\\"h\"\\^\"\"i\"\\", OsTypeWindows },
- { "\\%{f}\\", "\\\\\"\"\\^\"\"hi\"\\", OsTypeWindows },
- { "\\%{g}\\", "\\\\\"hi\"\\^\"\"\"\\", OsTypeWindows },
- { "\\%{h}\\", "\\\\\"h\\\\\"\\^\"\"i\"\\", OsTypeWindows },
- { "\\%{i}\\", "\\\\\"\\\\\"\\^\"\"hi\"\\", OsTypeWindows },
- { "\\%{j}\\", "\\\\\"hi\\\\\"\\^\"\"\"\\", OsTypeWindows },
- { "\\%{x}\\", "\\\\\\", OsTypeWindows },
- { "\\%{y}\\", "\\\\\"\"\\^\"\"\"\\", OsTypeWindows },
- { "\\%{z}\\", "\\\\", OsTypeWindows },
-
- { "bs-enclosed and trailing literal quote", 0, OsTypeWindows },
- { "\\%{a}\\\\\\^\"", "\\hi\\\\\\^\"", OsTypeWindows },
- { "\\%{aa}\\\\\\^\"", "\\\\\"hi ho\"\\\\\\^\"", OsTypeWindows },
- { "\\%{b}\\\\\\^\"", "\\h\\i\\\\\\^\"", OsTypeWindows },
- { "\\%{c}\\\\\\^\"", "\\\\hi\\\\\\^\"", OsTypeWindows },
- { "\\%{d}\\\\\\^\"", "\\hi\\\\\\\\\\^\"", OsTypeWindows },
- { "\\%{ba}\\\\\\^\"", "\\\\\"h\\i ho\"\\\\\\^\"", OsTypeWindows },
- { "\\%{ca}\\\\\\^\"", "\\\\\"\\hi ho\"\\\\\\^\"", OsTypeWindows },
- { "\\%{da}\\\\\\^\"", "\\\\\"hi ho\\\\\"\\\\\\^\"", OsTypeWindows },
- { "\\%{e}\\\\\\^\"", "\\\\\"h\"\\^\"\"i\"\\\\\\^\"", OsTypeWindows },
- { "\\%{f}\\\\\\^\"", "\\\\\"\"\\^\"\"hi\"\\\\\\^\"", OsTypeWindows },
- { "\\%{g}\\\\\\^\"", "\\\\\"hi\"\\^\"\"\"\\\\\\^\"", OsTypeWindows },
- { "\\%{h}\\\\\\^\"", "\\\\\"h\\\\\"\\^\"\"i\"\\\\\\^\"", OsTypeWindows },
- { "\\%{i}\\\\\\^\"", "\\\\\"\\\\\"\\^\"\"hi\"\\\\\\^\"", OsTypeWindows },
- { "\\%{j}\\\\\\^\"", "\\\\\"hi\\\\\"\\^\"\"\"\\\\\\^\"", OsTypeWindows },
- { "\\%{x}\\\\\\^\"", "\\\\\\\\\\\\\\^\"", OsTypeWindows },
- { "\\%{y}\\\\\\^\"", "\\\\\"\"\\^\"\"\"\\\\\\^\"", OsTypeWindows },
- { "\\%{z}\\\\\\^\"", "\\\\\\\\\\^\"", OsTypeWindows },
-
- { "bs-enclosed and trailing unclosed quote", 0, OsTypeWindows },
- { "\\%{a}\\\\\"", "\\hi\\\\\"", OsTypeWindows },
- { "\\%{aa}\\\\\"", "\\\\\"hi ho\"\\\\\"", OsTypeWindows },
- { "\\%{b}\\\\\"", "\\h\\i\\\\\"", OsTypeWindows },
- { "\\%{c}\\\\\"", "\\\\hi\\\\\"", OsTypeWindows },
- { "\\%{d}\\\\\"", "\\hi\\\\\\\\\"", OsTypeWindows },
- { "\\%{ba}\\\\\"", "\\\\\"h\\i ho\"\\\\\"", OsTypeWindows },
- { "\\%{ca}\\\\\"", "\\\\\"\\hi ho\"\\\\\"", OsTypeWindows },
- { "\\%{da}\\\\\"", "\\\\\"hi ho\\\\\"\\\\\"", OsTypeWindows },
- { "\\%{e}\\\\\"", "\\\\\"h\"\\^\"\"i\"\\\\\"", OsTypeWindows },
- { "\\%{f}\\\\\"", "\\\\\"\"\\^\"\"hi\"\\\\\"", OsTypeWindows },
- { "\\%{g}\\\\\"", "\\\\\"hi\"\\^\"\"\"\\\\\"", OsTypeWindows },
- { "\\%{h}\\\\\"", "\\\\\"h\\\\\"\\^\"\"i\"\\\\\"", OsTypeWindows },
- { "\\%{i}\\\\\"", "\\\\\"\\\\\"\\^\"\"hi\"\\\\\"", OsTypeWindows },
- { "\\%{j}\\\\\"", "\\\\\"hi\\\\\"\\^\"\"\"\\\\\"", OsTypeWindows },
- { "\\%{x}\\\\\"", "\\\\\\\\\\\\\"", OsTypeWindows },
- { "\\%{y}\\\\\"", "\\\\\"\"\\^\"\"\"\\\\\"", OsTypeWindows },
- { "\\%{z}\\\\\"", "\\\\\\\\\"", OsTypeWindows },
-
- { "multi-var", 0, OsTypeWindows },
- { "%{x}%{y}%{z}", "\\\\\"\"\\^\"\"\"", OsTypeWindows },
- { "%{x}%{z}%{y}%{z}", "\\\\\"\"\\^\"\"\"", OsTypeWindows },
- { "%{x}%{z}%{y}", "\\\\\"\"\\^\"\"\"", OsTypeWindows },
- { "%{x}\\^\"%{z}", "\\\\\\^\"", OsTypeWindows },
- { "%{x}%{z}\\^\"%{z}", "\\\\\\^\"", OsTypeWindows },
- { "%{x}%{z}\\^\"", "\\\\\\^\"", OsTypeWindows },
- { "%{x}\\%{z}", "\\\\", OsTypeWindows },
- { "%{x}%{z}\\%{z}", "\\\\", OsTypeWindows },
- { "%{x}%{z}\\", "\\\\", OsTypeWindows },
- { "%{aa}%{a}", "\"hi hohi\"", OsTypeWindows },
- { "%{aa}%{aa}", "\"hi hohi ho\"", OsTypeWindows },
- { "%{aa}:%{aa}", "\"hi ho\":\"hi ho\"", OsTypeWindows },
- { "hallo ^|%{aa}^|", "hallo ^|\"hi ho\"^|", OsTypeWindows },
-
- { "quoted multi-var", 0, OsTypeWindows },
- { "\"%{x}%{y}%{z}\"", "\"\\\\\"\\^\"\"\"", OsTypeWindows },
- { "\"%{x}%{z}%{y}%{z}\"", "\"\\\\\"\\^\"\"\"", OsTypeWindows },
- { "\"%{x}%{z}%{y}\"", "\"\\\\\"\\^\"\"\"", OsTypeWindows },
- { "\"%{x}\"^\"\"%{z}\"", "\"\\\\\"^\"\"\"", OsTypeWindows },
- { "\"%{x}%{z}\"^\"\"%{z}\"", "\"\\\\\"^\"\"\"", OsTypeWindows },
- { "\"%{x}%{z}\"^\"\"\"", "\"\\\\\"^\"\"\"", OsTypeWindows },
- { "\"%{x}\\%{z}\"", "\"\\\\\\\\\"", OsTypeWindows },
- { "\"%{x}%{z}\\%{z}\"", "\"\\\\\\\\\"", OsTypeWindows },
- { "\"%{x}%{z}\\\\\"", "\"\\\\\\\\\"", OsTypeWindows },
- { "\"%{aa}%{a}\"", "\"hi hohi\"", OsTypeWindows },
- { "\"%{aa}%{aa}\"", "\"hi hohi ho\"", OsTypeWindows },
- { "\"%{aa}:%{aa}\"", "\"hi ho:hi ho\"", OsTypeWindows },
-
- { "plain", 0, OsTypeLinux },
- { "%{a}", "hi", OsTypeLinux },
- { "%{b}", "'hi ho'", OsTypeLinux },
- { "%{c}", "'&special;'", OsTypeLinux },
- { "%{d}", "'h\\i'", OsTypeLinux },
- { "%{e}", "'h\"i'", OsTypeLinux },
- { "%{f}", "'h'\\''i'", OsTypeLinux },
- { "%{z}", "''", OsTypeLinux },
- { "\\%{z}%{z}", "\\%{z}%{z}", OsTypeLinux }, // stupid user check
-
- { "single-quoted", 0, OsTypeLinux },
- { "'%{a}'", "'hi'", OsTypeLinux },
- { "'%{b}'", "'hi ho'", OsTypeLinux },
- { "'%{c}'", "'&special;'", OsTypeLinux },
- { "'%{d}'", "'h\\i'", OsTypeLinux },
- { "'%{e}'", "'h\"i'", OsTypeLinux },
- { "'%{f}'", "'h'\\''i'", OsTypeLinux },
- { "'%{z}'", "''", OsTypeLinux },
-
- { "double-quoted", 0, OsTypeLinux },
- { "\"%{a}\"", "\"hi\"", OsTypeLinux },
- { "\"%{b}\"", "\"hi ho\"", OsTypeLinux },
- { "\"%{c}\"", "\"&special;\"", OsTypeLinux },
- { "\"%{d}\"", "\"h\\\\i\"", OsTypeLinux },
- { "\"%{e}\"", "\"h\\\"i\"", OsTypeLinux },
- { "\"%{f}\"", "\"h'i\"", OsTypeLinux },
- { "\"%{z}\"", "\"\"", OsTypeLinux },
-
- { "complex", 0, OsTypeLinux },
- { "echo \"$(echo %{a})\"", "echo \"$(echo hi)\"", OsTypeLinux },
- { "echo \"$(echo %{b})\"", "echo \"$(echo 'hi ho')\"", OsTypeLinux },
- { "echo \"$(echo \"%{a}\")\"", "echo \"$(echo \"hi\")\"", OsTypeLinux },
+ {"plain", 0, OsTypeWindows},
+ {"%{a}", "hi", OsTypeWindows},
+ {"%{aa}", "\"hi ho\"", OsTypeWindows},
+ {"%{b}", "h\\i", OsTypeWindows},
+ {"%{c}", "\\hi", OsTypeWindows},
+ {"%{d}", "hi\\", OsTypeWindows},
+ {"%{ba}", "\"h\\i ho\"", OsTypeWindows},
+ {"%{ca}", "\"\\hi ho\"", OsTypeWindows},
+ {"%{da}", "\"hi ho\\\\\"", OsTypeWindows}, // or "\"hi ho\"\\"
+ {"%{e}", "\"h\"\\^\"\"i\"", OsTypeWindows},
+ {"%{f}", "\"\"\\^\"\"hi\"", OsTypeWindows},
+ {"%{g}", "\"hi\"\\^\"\"\"", OsTypeWindows},
+ {"%{h}", "\"h\\\\\"\\^\"\"i\"", OsTypeWindows},
+ {"%{i}", "\"\\\\\"\\^\"\"hi\"", OsTypeWindows},
+ {"%{j}", "\"hi\\\\\"\\^\"\"\"", OsTypeWindows},
+ {"%{k}", "\"&special;\"", OsTypeWindows},
+ {"%{x}", "\\", OsTypeWindows},
+ {"%{y}", "\"\"\\^\"\"\"", OsTypeWindows},
+ {"%{z}", "\"\"", OsTypeWindows},
+ {"^%{z}%{z}", "^%{z}%{z}", OsTypeWindows}, // stupid user check
+
+ {"quoted", 0, OsTypeWindows},
+ {"\"%{a}\"", "\"hi\"", OsTypeWindows},
+ {"\"%{aa}\"", "\"hi ho\"", OsTypeWindows},
+ {"\"%{b}\"", "\"h\\i\"", OsTypeWindows},
+ {"\"%{c}\"", "\"\\hi\"", OsTypeWindows},
+ {"\"%{d}\"", "\"hi\\\\\"", OsTypeWindows},
+ {"\"%{ba}\"", "\"h\\i ho\"", OsTypeWindows},
+ {"\"%{ca}\"", "\"\\hi ho\"", OsTypeWindows},
+ {"\"%{da}\"", "\"hi ho\\\\\"", OsTypeWindows},
+ {"\"%{e}\"", "\"h\"\\^\"\"i\"", OsTypeWindows},
+ {"\"%{f}\"", "\"\"\\^\"\"hi\"", OsTypeWindows},
+ {"\"%{g}\"", "\"hi\"\\^\"\"\"", OsTypeWindows},
+ {"\"%{h}\"", "\"h\\\\\"\\^\"\"i\"", OsTypeWindows},
+ {"\"%{i}\"", "\"\\\\\"\\^\"\"hi\"", OsTypeWindows},
+ {"\"%{j}\"", "\"hi\\\\\"\\^\"\"\"", OsTypeWindows},
+ {"\"%{k}\"", "\"&special;\"", OsTypeWindows},
+ {"\"%{x}\"", "\"\\\\\"", OsTypeWindows},
+ {"\"%{y}\"", "\"\"\\^\"\"\"", OsTypeWindows},
+ {"\"%{z}\"", "\"\"", OsTypeWindows},
+
+ {"leading bs", 0, OsTypeWindows},
+ {"\\%{a}", "\\hi", OsTypeWindows},
+ {"\\%{aa}", "\\\\\"hi ho\"", OsTypeWindows},
+ {"\\%{b}", "\\h\\i", OsTypeWindows},
+ {"\\%{c}", "\\\\hi", OsTypeWindows},
+ {"\\%{d}", "\\hi\\", OsTypeWindows},
+ {"\\%{ba}", "\\\\\"h\\i ho\"", OsTypeWindows},
+ {"\\%{ca}", "\\\\\"\\hi ho\"", OsTypeWindows},
+ {"\\%{da}", "\\\\\"hi ho\\\\\"", OsTypeWindows},
+ {"\\%{e}", "\\\\\"h\"\\^\"\"i\"", OsTypeWindows},
+ {"\\%{f}", "\\\\\"\"\\^\"\"hi\"", OsTypeWindows},
+ {"\\%{g}", "\\\\\"hi\"\\^\"\"\"", OsTypeWindows},
+ {"\\%{h}", "\\\\\"h\\\\\"\\^\"\"i\"", OsTypeWindows},
+ {"\\%{i}", "\\\\\"\\\\\"\\^\"\"hi\"", OsTypeWindows},
+ {"\\%{j}", "\\\\\"hi\\\\\"\\^\"\"\"", OsTypeWindows},
+ {"\\%{x}", "\\\\", OsTypeWindows},
+ {"\\%{y}", "\\\\\"\"\\^\"\"\"", OsTypeWindows},
+ {"\\%{z}", "\\", OsTypeWindows},
+
+ {"trailing bs", 0, OsTypeWindows},
+ {"%{a}\\", "hi\\", OsTypeWindows},
+ {"%{aa}\\", "\"hi ho\"\\", OsTypeWindows},
+ {"%{b}\\", "h\\i\\", OsTypeWindows},
+ {"%{c}\\", "\\hi\\", OsTypeWindows},
+ {"%{d}\\", "hi\\\\", OsTypeWindows},
+ {"%{ba}\\", "\"h\\i ho\"\\", OsTypeWindows},
+ {"%{ca}\\", "\"\\hi ho\"\\", OsTypeWindows},
+ {"%{da}\\", "\"hi ho\\\\\"\\", OsTypeWindows},
+ {"%{e}\\", "\"h\"\\^\"\"i\"\\", OsTypeWindows},
+ {"%{f}\\", "\"\"\\^\"\"hi\"\\", OsTypeWindows},
+ {"%{g}\\", "\"hi\"\\^\"\"\"\\", OsTypeWindows},
+ {"%{h}\\", "\"h\\\\\"\\^\"\"i\"\\", OsTypeWindows},
+ {"%{i}\\", "\"\\\\\"\\^\"\"hi\"\\", OsTypeWindows},
+ {"%{j}\\", "\"hi\\\\\"\\^\"\"\"\\", OsTypeWindows},
+ {"%{x}\\", "\\\\", OsTypeWindows},
+ {"%{y}\\", "\"\"\\^\"\"\"\\", OsTypeWindows},
+ {"%{z}\\", "\\", OsTypeWindows},
+
+ {"bs-enclosed", 0, OsTypeWindows},
+ {"\\%{a}\\", "\\hi\\", OsTypeWindows},
+ {"\\%{aa}\\", "\\\\\"hi ho\"\\", OsTypeWindows},
+ {"\\%{b}\\", "\\h\\i\\", OsTypeWindows},
+ {"\\%{c}\\", "\\\\hi\\", OsTypeWindows},
+ {"\\%{d}\\", "\\hi\\\\", OsTypeWindows},
+ {"\\%{ba}\\", "\\\\\"h\\i ho\"\\", OsTypeWindows},
+ {"\\%{ca}\\", "\\\\\"\\hi ho\"\\", OsTypeWindows},
+ {"\\%{da}\\", "\\\\\"hi ho\\\\\"\\", OsTypeWindows},
+ {"\\%{e}\\", "\\\\\"h\"\\^\"\"i\"\\", OsTypeWindows},
+ {"\\%{f}\\", "\\\\\"\"\\^\"\"hi\"\\", OsTypeWindows},
+ {"\\%{g}\\", "\\\\\"hi\"\\^\"\"\"\\", OsTypeWindows},
+ {"\\%{h}\\", "\\\\\"h\\\\\"\\^\"\"i\"\\", OsTypeWindows},
+ {"\\%{i}\\", "\\\\\"\\\\\"\\^\"\"hi\"\\", OsTypeWindows},
+ {"\\%{j}\\", "\\\\\"hi\\\\\"\\^\"\"\"\\", OsTypeWindows},
+ {"\\%{x}\\", "\\\\\\", OsTypeWindows},
+ {"\\%{y}\\", "\\\\\"\"\\^\"\"\"\\", OsTypeWindows},
+ {"\\%{z}\\", "\\\\", OsTypeWindows},
+
+ {"bs-enclosed and trailing literal quote", 0, OsTypeWindows},
+ {"\\%{a}\\\\\\^\"", "\\hi\\\\\\^\"", OsTypeWindows},
+ {"\\%{aa}\\\\\\^\"", "\\\\\"hi ho\"\\\\\\^\"", OsTypeWindows},
+ {"\\%{b}\\\\\\^\"", "\\h\\i\\\\\\^\"", OsTypeWindows},
+ {"\\%{c}\\\\\\^\"", "\\\\hi\\\\\\^\"", OsTypeWindows},
+ {"\\%{d}\\\\\\^\"", "\\hi\\\\\\\\\\^\"", OsTypeWindows},
+ {"\\%{ba}\\\\\\^\"", "\\\\\"h\\i ho\"\\\\\\^\"", OsTypeWindows},
+ {"\\%{ca}\\\\\\^\"", "\\\\\"\\hi ho\"\\\\\\^\"", OsTypeWindows},
+ {"\\%{da}\\\\\\^\"", "\\\\\"hi ho\\\\\"\\\\\\^\"", OsTypeWindows},
+ {"\\%{e}\\\\\\^\"", "\\\\\"h\"\\^\"\"i\"\\\\\\^\"", OsTypeWindows},
+ {"\\%{f}\\\\\\^\"", "\\\\\"\"\\^\"\"hi\"\\\\\\^\"", OsTypeWindows},
+ {"\\%{g}\\\\\\^\"", "\\\\\"hi\"\\^\"\"\"\\\\\\^\"", OsTypeWindows},
+ {"\\%{h}\\\\\\^\"", "\\\\\"h\\\\\"\\^\"\"i\"\\\\\\^\"", OsTypeWindows},
+ {"\\%{i}\\\\\\^\"", "\\\\\"\\\\\"\\^\"\"hi\"\\\\\\^\"", OsTypeWindows},
+ {"\\%{j}\\\\\\^\"", "\\\\\"hi\\\\\"\\^\"\"\"\\\\\\^\"", OsTypeWindows},
+ {"\\%{x}\\\\\\^\"", "\\\\\\\\\\\\\\^\"", OsTypeWindows},
+ {"\\%{y}\\\\\\^\"", "\\\\\"\"\\^\"\"\"\\\\\\^\"", OsTypeWindows},
+ {"\\%{z}\\\\\\^\"", "\\\\\\\\\\^\"", OsTypeWindows},
+
+ {"bs-enclosed and trailing unclosed quote", 0, OsTypeWindows},
+ {"\\%{a}\\\\\"", "\\hi\\\\\"", OsTypeWindows},
+ {"\\%{aa}\\\\\"", "\\\\\"hi ho\"\\\\\"", OsTypeWindows},
+ {"\\%{b}\\\\\"", "\\h\\i\\\\\"", OsTypeWindows},
+ {"\\%{c}\\\\\"", "\\\\hi\\\\\"", OsTypeWindows},
+ {"\\%{d}\\\\\"", "\\hi\\\\\\\\\"", OsTypeWindows},
+ {"\\%{ba}\\\\\"", "\\\\\"h\\i ho\"\\\\\"", OsTypeWindows},
+ {"\\%{ca}\\\\\"", "\\\\\"\\hi ho\"\\\\\"", OsTypeWindows},
+ {"\\%{da}\\\\\"", "\\\\\"hi ho\\\\\"\\\\\"", OsTypeWindows},
+ {"\\%{e}\\\\\"", "\\\\\"h\"\\^\"\"i\"\\\\\"", OsTypeWindows},
+ {"\\%{f}\\\\\"", "\\\\\"\"\\^\"\"hi\"\\\\\"", OsTypeWindows},
+ {"\\%{g}\\\\\"", "\\\\\"hi\"\\^\"\"\"\\\\\"", OsTypeWindows},
+ {"\\%{h}\\\\\"", "\\\\\"h\\\\\"\\^\"\"i\"\\\\\"", OsTypeWindows},
+ {"\\%{i}\\\\\"", "\\\\\"\\\\\"\\^\"\"hi\"\\\\\"", OsTypeWindows},
+ {"\\%{j}\\\\\"", "\\\\\"hi\\\\\"\\^\"\"\"\\\\\"", OsTypeWindows},
+ {"\\%{x}\\\\\"", "\\\\\\\\\\\\\"", OsTypeWindows},
+ {"\\%{y}\\\\\"", "\\\\\"\"\\^\"\"\"\\\\\"", OsTypeWindows},
+ {"\\%{z}\\\\\"", "\\\\\\\\\"", OsTypeWindows},
+
+ {"multi-var", 0, OsTypeWindows},
+ {"%{x}%{y}%{z}", "\\\\\"\"\\^\"\"\"", OsTypeWindows},
+ {"%{x}%{z}%{y}%{z}", "\\\\\"\"\\^\"\"\"", OsTypeWindows},
+ {"%{x}%{z}%{y}", "\\\\\"\"\\^\"\"\"", OsTypeWindows},
+ {"%{x}\\^\"%{z}", "\\\\\\^\"", OsTypeWindows},
+ {"%{x}%{z}\\^\"%{z}", "\\\\\\^\"", OsTypeWindows},
+ {"%{x}%{z}\\^\"", "\\\\\\^\"", OsTypeWindows},
+ {"%{x}\\%{z}", "\\\\", OsTypeWindows},
+ {"%{x}%{z}\\%{z}", "\\\\", OsTypeWindows},
+ {"%{x}%{z}\\", "\\\\", OsTypeWindows},
+ {"%{aa}%{a}", "\"hi hohi\"", OsTypeWindows},
+ {"%{aa}%{aa}", "\"hi hohi ho\"", OsTypeWindows},
+ {"%{aa}:%{aa}", "\"hi ho\":\"hi ho\"", OsTypeWindows},
+ {"hallo ^|%{aa}^|", "hallo ^|\"hi ho\"^|", OsTypeWindows},
+
+ {"quoted multi-var", 0, OsTypeWindows},
+ {"\"%{x}%{y}%{z}\"", "\"\\\\\"\\^\"\"\"", OsTypeWindows},
+ {"\"%{x}%{z}%{y}%{z}\"", "\"\\\\\"\\^\"\"\"", OsTypeWindows},
+ {"\"%{x}%{z}%{y}\"", "\"\\\\\"\\^\"\"\"", OsTypeWindows},
+ {"\"%{x}\"^\"\"%{z}\"", "\"\\\\\"^\"\"\"", OsTypeWindows},
+ {"\"%{x}%{z}\"^\"\"%{z}\"", "\"\\\\\"^\"\"\"", OsTypeWindows},
+ {"\"%{x}%{z}\"^\"\"\"", "\"\\\\\"^\"\"\"", OsTypeWindows},
+ {"\"%{x}\\%{z}\"", "\"\\\\\\\\\"", OsTypeWindows},
+ {"\"%{x}%{z}\\%{z}\"", "\"\\\\\\\\\"", OsTypeWindows},
+ {"\"%{x}%{z}\\\\\"", "\"\\\\\\\\\"", OsTypeWindows},
+ {"\"%{aa}%{a}\"", "\"hi hohi\"", OsTypeWindows},
+ {"\"%{aa}%{aa}\"", "\"hi hohi ho\"", OsTypeWindows},
+ {"\"%{aa}:%{aa}\"", "\"hi ho:hi ho\"", OsTypeWindows},
+
+ {"plain", 0, OsTypeLinux},
+ {"%{a}", "hi", OsTypeLinux},
+ {"%{b}", "'hi ho'", OsTypeLinux},
+ {"%{c}", "'&special;'", OsTypeLinux},
+ {"%{d}", "'h\\i'", OsTypeLinux},
+ {"%{e}", "'h\"i'", OsTypeLinux},
+ {"%{f}", "'h'\\''i'", OsTypeLinux},
+ {"%{z}", "''", OsTypeLinux},
+ {"\\%{z}%{z}", "\\%{z}%{z}", OsTypeLinux}, // stupid user check
+
+ {"single-quoted", 0, OsTypeLinux},
+ {"'%{a}'", "'hi'", OsTypeLinux},
+ {"'%{b}'", "'hi ho'", OsTypeLinux},
+ {"'%{c}'", "'&special;'", OsTypeLinux},
+ {"'%{d}'", "'h\\i'", OsTypeLinux},
+ {"'%{e}'", "'h\"i'", OsTypeLinux},
+ {"'%{f}'", "'h'\\''i'", OsTypeLinux},
+ {"'%{z}'", "''", OsTypeLinux},
+
+ {"double-quoted", 0, OsTypeLinux},
+ {"\"%{a}\"", "\"hi\"", OsTypeLinux},
+ {"\"%{b}\"", "\"hi ho\"", OsTypeLinux},
+ {"\"%{c}\"", "\"&special;\"", OsTypeLinux},
+ {"\"%{d}\"", "\"h\\\\i\"", OsTypeLinux},
+ {"\"%{e}\"", "\"h\\\"i\"", OsTypeLinux},
+ {"\"%{f}\"", "\"h'i\"", OsTypeLinux},
+ {"\"%{z}\"", "\"\"", OsTypeLinux},
+
+ {"complex", 0, OsTypeLinux},
+ {"echo \"$(echo %{a})\"", "echo \"$(echo hi)\"", OsTypeLinux},
+ {"echo \"$(echo %{b})\"", "echo \"$(echo 'hi ho')\"", OsTypeLinux},
+ {"echo \"$(echo \"%{a}\")\"", "echo \"$(echo \"hi\")\"", OsTypeLinux},
// These make no sense shell-wise, but they test expando nesting
- { "echo \"%{echo %{a}}\"", "echo \"%{echo hi}\"", OsTypeLinux },
- { "echo \"%{echo %{b}}\"", "echo \"%{echo hi ho}\"", OsTypeLinux },
- { "echo \"%{echo \"%{a}\"}\"", "echo \"%{echo \"hi\"}\"", OsTypeLinux },
+ {"echo \"%{echo %{a}}\"", "echo \"%{echo hi}\"", OsTypeLinux},
+ {"echo \"%{echo %{b}}\"", "echo \"%{echo hi ho}\"", OsTypeLinux},
+ {"echo \"%{echo \"%{a}\"}\"", "echo \"%{echo \"hi\"}\"", OsTypeLinux },
};
const char *title = 0;
@@ -616,42 +616,42 @@ void tst_QtcProcess::iterations_data()
const char * const out;
OsType os;
} vals[] = {
- { "", "", OsTypeWindows },
- { "hi", "hi", OsTypeWindows },
- { " hi ", "hi", OsTypeWindows },
- { "hi ho", "hi ho", OsTypeWindows },
- { "\"hi ho\" sucker", "\"hi ho\" sucker", OsTypeWindows },
- { "\"hi\"^\"\"ho\" sucker", "\"hi\"\\^\"\"ho\" sucker", OsTypeWindows },
- { "\"hi\"\\^\"\"ho\" sucker", "\"hi\"\\^\"\"ho\" sucker", OsTypeWindows },
- { "hi^|ho", "\"hi|ho\"", OsTypeWindows },
- { "c:\\", "c:\\", OsTypeWindows },
- { "\"c:\\\\\"", "c:\\", OsTypeWindows },
- { "\\hi\\ho", "\\hi\\ho", OsTypeWindows },
- { "hi null%", "hi null%", OsTypeWindows },
- { "hi null% ho", "hi null% ho", OsTypeWindows },
- { "hi null%here ho", "hi null%here ho", OsTypeWindows },
- { "hi null%here%too ho", "hi {} ho", OsTypeWindows },
- { "echo hello | more", "echo hello", OsTypeWindows },
- { "echo hello| more", "echo hello", OsTypeWindows },
-
- { "", "", OsTypeLinux },
- { " ", "", OsTypeLinux },
- { "hi", "hi", OsTypeLinux },
- { " hi ", "hi", OsTypeLinux },
- { "'hi'", "hi", OsTypeLinux },
- { "hi ho", "hi ho", OsTypeLinux },
- { "\"hi ho\" sucker", "'hi ho' sucker", OsTypeLinux },
- { "\"hi\\\"ho\" sucker", "'hi\"ho' sucker", OsTypeLinux },
- { "\"hi'ho\" sucker", "'hi'\\''ho' sucker", OsTypeLinux },
- { "'hi ho' sucker", "'hi ho' sucker", OsTypeLinux },
- { "\\\\", "'\\'", OsTypeLinux },
- { "'\\'", "'\\'", OsTypeLinux },
- { "hi 'null${here}too' ho", "hi 'null${here}too' ho", OsTypeLinux },
- { "hi null${here}too ho", "hi {} ho", OsTypeLinux },
- { "hi $(echo $dollar cent) ho", "hi {} ho", OsTypeLinux },
- { "hi `echo $dollar \\`echo cent\\` | cat` ho", "hi {} ho", OsTypeLinux },
- { "echo hello | more", "echo hello", OsTypeLinux },
- { "echo hello| more", "echo hello", OsTypeLinux },
+ {"", "", OsTypeWindows},
+ {"hi", "hi", OsTypeWindows},
+ {" hi ", "hi", OsTypeWindows},
+ {"hi ho", "hi ho", OsTypeWindows},
+ {"\"hi ho\" sucker", "\"hi ho\" sucker", OsTypeWindows},
+ {"\"hi\"^\"\"ho\" sucker", "\"hi\"\\^\"\"ho\" sucker", OsTypeWindows},
+ {"\"hi\"\\^\"\"ho\" sucker", "\"hi\"\\^\"\"ho\" sucker", OsTypeWindows},
+ {"hi^|ho", "\"hi|ho\"", OsTypeWindows},
+ {"c:\\", "c:\\", OsTypeWindows},
+ {"\"c:\\\\\"", "c:\\", OsTypeWindows},
+ {"\\hi\\ho", "\\hi\\ho", OsTypeWindows},
+ {"hi null%", "hi null%", OsTypeWindows},
+ {"hi null% ho", "hi null% ho", OsTypeWindows},
+ {"hi null%here ho", "hi null%here ho", OsTypeWindows},
+ {"hi null%here%too ho", "hi {} ho", OsTypeWindows},
+ {"echo hello | more", "echo hello", OsTypeWindows},
+ {"echo hello| more", "echo hello", OsTypeWindows},
+
+ {"", "", OsTypeLinux},
+ {" ", "", OsTypeLinux},
+ {"hi", "hi", OsTypeLinux},
+ {" hi ", "hi", OsTypeLinux},
+ {"'hi'", "hi", OsTypeLinux},
+ {"hi ho", "hi ho", OsTypeLinux},
+ {"\"hi ho\" sucker", "'hi ho' sucker", OsTypeLinux},
+ {"\"hi\\\"ho\" sucker", "'hi\"ho' sucker", OsTypeLinux},
+ {"\"hi'ho\" sucker", "'hi'\\''ho' sucker", OsTypeLinux},
+ {"'hi ho' sucker", "'hi ho' sucker", OsTypeLinux},
+ {"\\\\", "'\\'", OsTypeLinux},
+ {"'\\'", "'\\'", OsTypeLinux},
+ {"hi 'null${here}too' ho", "hi 'null${here}too' ho", OsTypeLinux},
+ {"hi null${here}too ho", "hi {} ho", OsTypeLinux},
+ {"hi $(echo $dollar cent) ho", "hi {} ho", OsTypeLinux},
+ {"hi `echo $dollar \\`echo cent\\` | cat` ho", "hi {} ho", OsTypeLinux},
+ {"echo hello | more", "echo hello", OsTypeLinux},
+ {"echo hello| more", "echo hello", OsTypeLinux},
};
for (unsigned i = 0; i < sizeof(vals)/sizeof(vals[0]); i++)