aboutsummaryrefslogtreecommitdiffstats
path: root/find_test.cc
diff options
context:
space:
mode:
authorDan Willemsen <dan@danw.org>2018-02-15 07:44:01 -0800
committerGitHub <noreply@github.com>2018-02-15 07:44:01 -0800
commit575ebd04c5a3c305233b6ad8d8952a6295160f25 (patch)
tree2a82ba6f5a3826685a7761082cbcf90673e472ba /find_test.cc
parent054627c9ee92e6b0ef87e5ff3479b457d0c78bbe (diff)
parent1e0159219d2172f6b68d8625d54f592d5b46bc04 (diff)
downloadandroid_build_kati-575ebd04c5a3c305233b6ad8d8952a6295160f25.tar.gz
android_build_kati-575ebd04c5a3c305233b6ad8d8952a6295160f25.tar.bz2
android_build_kati-575ebd04c5a3c305233b6ad8d8952a6295160f25.zip
Merge pull request #133 from danw/find_unescape
Fail find parsing for \*
Diffstat (limited to 'find_test.cc')
-rw-r--r--find_test.cc17
1 files changed, 17 insertions, 0 deletions
diff --git a/find_test.cc b/find_test.cc
index 10f865c..d7d44bd 100644
--- a/find_test.cc
+++ b/find_test.cc
@@ -107,6 +107,17 @@ void CompareFind(const string& cmd) {
}
}
+void ExpectParseFailure(const string& cmd) {
+ Run(cmd);
+
+ FindCommand fc;
+ if (fc.Parse(cmd)) {
+ fprintf(stderr, "Expected parse failure for `%s`\n", cmd.c_str());
+ fprintf(stderr, "------------------------------------------\n");
+ unit_test_failed = true;
+ }
+}
+
int FindUnitTests() {
Run("rm -rf out/find");
Run("mkdir -p out/find");
@@ -149,5 +160,11 @@ int FindUnitTests() {
CompareFind("find .//top");
+ CompareFind("find top -type f -name 'a*' -o -name \\*b");
+ CompareFind("find top \\! -name 'a*'");
+ CompareFind("find top \\( -name 'a*' \\)");
+
+ ExpectParseFailure("find top -name a\\*");
+
return unit_test_failed ? 1 : 0;
}