summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNguyễn Thái Ngọc Duy <pclouds@gmail.com>2016-06-25 07:22:28 +0200
committerJunio C Hamano <gitster@pobox.com>2016-06-27 07:31:35 -0700
commit949782d860889cbd50edfdf8c00e91d7a4f6cb05 (patch)
tree0fec69d4eb28660d20fb355073bf4af330147625
parent60452a30f5971c54ecdcd1bd389c1cabbbc844f5 (diff)
downloadgit-949782d860889cbd50edfdf8c00e91d7a4f6cb05.tar.gz
test-regex: isolate the bug test code
This is in preparation to turn test-regex into some generic regex testing command. Helped-by: Eric Sunshine <sunshine@sunshineco.com> Helped-by: Ramsay Jones <ramsay@ramsayjones.plus.com> Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rwxr-xr-xt/t0070-fundamental.sh2
-rw-r--r--test-regex.c12
2 files changed, 11 insertions, 3 deletions
diff --git a/t/t0070-fundamental.sh b/t/t0070-fundamental.sh
index 5ed69a6f56..991ed2a48d 100755
--- a/t/t0070-fundamental.sh
+++ b/t/t0070-fundamental.sh
@@ -31,7 +31,7 @@ test_expect_success 'git_mkstemps_mode does not fail if fd 0 is not open' '
test_expect_success 'check for a bug in the regex routines' '
# if this test fails, re-build git with NO_REGEX=1
- test-regex
+ test-regex --bug
'
test_done
diff --git a/test-regex.c b/test-regex.c
index 0dc598ecdc..67a1a65067 100644
--- a/test-regex.c
+++ b/test-regex.c
@@ -1,6 +1,6 @@
#include "git-compat-util.h"
-int main(int argc, char **argv)
+static int test_regex_bug(void)
{
char *pat = "[^={} \t]+";
char *str = "={}\nfred";
@@ -16,5 +16,13 @@ int main(int argc, char **argv)
if (m[0].rm_so == 3) /* matches '\n' when it should not */
die("regex bug confirmed: re-build git with NO_REGEX=1");
- exit(0);
+ return 0;
+}
+
+int main(int argc, char **argv)
+{
+ if (argc == 2 && !strcmp(argv[1], "--bug"))
+ return test_regex_bug();
+ else
+ usage("test-regex --bug");
}