summaryrefslogtreecommitdiffstats
path: root/tdecore/tests/kshelltest.cpp
diff options
context:
space:
mode:
authorTimothy Pearson <kb9vqf@pearsoncomputing.net>2011-11-06 15:56:40 -0600
committerTimothy Pearson <kb9vqf@pearsoncomputing.net>2011-11-06 15:56:40 -0600
commite16866e072f94410321d70daedbcb855ea878cac (patch)
treeee3f52eabde7da1a0e6ca845fb9c2813cf1558cf /tdecore/tests/kshelltest.cpp
parenta58c20c1a7593631a1b50213c805507ebc16adaf (diff)
downloadtdelibs-e16866e072f94410321d70daedbcb855ea878cac.tar.gz
tdelibs-e16866e072f94410321d70daedbcb855ea878cac.zip
Actually move the kde files that were renamed in the last commit
Diffstat (limited to 'tdecore/tests/kshelltest.cpp')
-rw-r--r--tdecore/tests/kshelltest.cpp55
1 files changed, 55 insertions, 0 deletions
diff --git a/tdecore/tests/kshelltest.cpp b/tdecore/tests/kshelltest.cpp
new file mode 100644
index 000000000..394394e28
--- /dev/null
+++ b/tdecore/tests/kshelltest.cpp
@@ -0,0 +1,55 @@
+#include <kshell.h>
+
+#include <iostream>
+
+static QCString
+ps(const TQString &s)
+{
+ if (s.isNull())
+ return "(null)";
+ else
+ return s.local8Bit();
+}
+
+static void
+tx(const char *t)
+{
+ std::cout << t << " -> " << ps(KShell::tildeExpand(t)) << std::endl;
+}
+
+static void
+sj(const char *t, int flg)
+{
+ int err;
+ std::cout << t << " (" << flg << ") -> " << ps(KShell::joinArgsDQ(KShell::splitArgs(t, flg, &err))) << " (" << err << ")" << std::endl;
+}
+
+int main()
+{
+#if 1
+ tx("~");
+ tx("~/sulli");
+ tx("~root");
+ tx("~root/sulli");
+ tx("~sulli");
+#endif
+#if 1
+ TQStringList lst;
+ lst << "this" << "is" << "text";
+ std::cout << KShell::joinArgs(lst).latin1() << std::endl;
+#endif
+#if 1
+ sj("\"~sulli\" 'text' 'jo'\"jo\" $'crap' $'\\\\\\'\\ca\\e\\x21' ha\\ lo ", KShell::NoOptions);
+ sj("\"~sulli\" 'text'", KShell::TildeExpand);
+ sj("~\"sulli\" 'text'", KShell::TildeExpand);
+ sj("~/\"sulli\" 'text'", KShell::TildeExpand);
+ sj("~ 'text' ~", KShell::TildeExpand);
+ sj("~sulli ~root", KShell::TildeExpand);
+#endif
+ sj("say \" error", KShell::NoOptions);
+ sj("say `echo no error`", KShell::NoOptions);
+ sj("say \" still error", KShell::AbortOnMeta);
+ sj("say `echo meta error`", KShell::AbortOnMeta);
+ sj("BLA=say echo meta", KShell::AbortOnMeta);
+ sj("B\"L\"A=say FOO=bar echo meta", KShell::AbortOnMeta);
+}