* [PATCH] git-grep: Fix problems with recently added tests
@ 2011-05-26 21:50 Michał Kiedrowicz
2011-05-26 21:55 ` Brian Gernhardt
0 siblings, 1 reply; 3+ messages in thread
From: Michał Kiedrowicz @ 2011-05-26 21:50 UTC (permalink / raw)
To: Git List; +Cc: Brian Gernhardt, Michael J Gruber, Michał Kiedrowicz
Brian Gernhardt reported that test 'git grep -E -F -G a\\+b' fails on
OS X 10.6.7. This is because I assumed \+ is part of BRE, which isn't
true on all platforms.
The easiest way to make this test pass is to just update expected
output, but that would make the test pointless. Its real purpose is to
check whether 'git grep -E -F -G' is different from 'git grep -E -G -F'.
To check that, let's change pattern to "aa*b". 'git grep -F' should
return empty string and 'git grep -G' should match "aab".
I also made two small tweaks to the tests. First, I added path "ab" to
all calls to future-proof tests. Second, I updated last two tests to
better show that 'git grep -P -E' is different from 'git grep -E -P'.
Signed-off-by: Michał Kiedrowicz <michal.kiedrowicz@gmail.com>
---
t/t7810-grep.sh | 28 ++++++++++++++--------------
1 files changed, 14 insertions(+), 14 deletions(-)
diff --git a/t/t7810-grep.sh b/t/t7810-grep.sh
index e061108..0435740 100755
--- a/t/t7810-grep.sh
+++ b/t/t7810-grep.sh
@@ -234,13 +234,13 @@ do
'
test_expect_success "grep $L with grep.extendedRegexp=false" '
echo "ab:a+b" >expected &&
- git -c grep.extendedRegexp=false grep "a+b" >actual &&
+ git -c grep.extendedRegexp=false grep "a+b" ab >actual &&
test_cmp expected actual
'
test_expect_success "grep $L with grep.extendedRegexp=true" '
echo "ab:aab" >expected &&
- git -c grep.extendedRegexp=true grep "a+b" >actual &&
+ git -c grep.extendedRegexp=true grep "a+b" ab >actual &&
test_cmp expected actual
'
done
@@ -688,37 +688,37 @@ test_expect_success LIBPCRE 'grep -P invalidpattern properly dies ' '
test_expect_success 'grep -F -E -G pattern' '
echo ab:a+b >expected &&
- git grep -F -E -G a+b >actual &&
+ git grep -F -E -G a+b ab >actual &&
test_cmp expected actual
'
test_expect_success 'grep -F -G -E pattern' '
echo ab:aab >expected &&
- git grep -F -G -E a+b >actual &&
+ git grep -F -G -E a+b ab >actual &&
test_cmp expected actual
'
test_expect_success 'grep -E -F -G pattern' '
echo ab:aab >expected &&
- git grep -E -F -G a\\+b >actual &&
+ git grep -E -F -G "aa*b" ab >actual &&
test_cmp expected actual
'
test_expect_success 'grep -E -G -F pattern' '
- echo ab:a\\+b >expected &&
- git grep -E -G -F a\\+b >actual &&
- test_cmp expected actual
+ :>empty &&
+ test_must_fail git grep -E -G -F "aa*b" ab >actual &&
+ test_cmp empty actual
'
-test_expect_success 'grep -G -F -E pattern' '
- echo ab:a+b >expected &&
- git grep -G -F -E a\\+b >actual &&
- test_cmp expected actual
+test_expect_success 'grep -G -F -P -E pattern' '
+ :>empty &&
+ test_must_fail git grep -G -F -P -E "a\x{2b}b" ab >actual &&
+ test_cmp empty actual
'
-test_expect_success LIBPCRE 'grep -E -G -F -P pattern' '
+test_expect_success LIBPCRE 'grep -G -F -E -P pattern' '
echo ab:a+b >expected &&
- git grep -E -G -F -P a\\+b >actual &&
+ git grep -G -F -E -P "a\x{2b}b" ab >actual &&
test_cmp expected actual
'
--
1.7.3.4
^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH] git-grep: Fix problems with recently added tests
2011-05-26 21:50 [PATCH] git-grep: Fix problems with recently added tests Michał Kiedrowicz
@ 2011-05-26 21:55 ` Brian Gernhardt
0 siblings, 0 replies; 3+ messages in thread
From: Brian Gernhardt @ 2011-05-26 21:55 UTC (permalink / raw)
To: Michał Kiedrowicz; +Cc: Git List, Michael J Gruber
On May 26, 2011, at 5:50 PM, Michał Kiedrowicz wrote:
> test_expect_success 'grep -E -F -G pattern' '
> echo ab:aab >expected &&
> - git grep -E -F -G a\\+b >actual &&
> + git grep -E -F -G "aa*b" ab >actual &&
> test_cmp expected actual
> '
Wouldn't this also pass if -E was active instead of -G? That's why I mentioned using a literal + in the pattern so that what -G and what -E would match would be different.
~~ Brian
^ permalink raw reply [flat|nested] 3+ messages in thread
* [PATCH] git-grep: Fix problems with recently added tests
[not found] <7vvcwxunbt.fsf@alter.siamese.dyndns.org>
@ 2011-05-26 22:43 ` Michał Kiedrowicz
0 siblings, 0 replies; 3+ messages in thread
From: Michał Kiedrowicz @ 2011-05-26 22:43 UTC (permalink / raw)
To: Junio C Hamano; +Cc: Brian Gernhardt, Git List, Michał Kiedrowicz
Brian Gernhardt reported that test 'git grep -E -F -G a\\+b' fails on
OS X 10.6.7. This is because I assumed \+ is part of BRE, which isn't
true on all platforms.
The easiest way to make this test pass is to just update expected
output, but that would make the test pointless. Its real purpose is to
check whether 'git grep -E -F -G' is different from 'git grep -E -G -F'.
To check that, let's change pattern to "a+b*c". This should return
different match for -G, -F and -E.
I also made two small tweaks to the tests. First, I added path "ab" to
all calls to future-proof tests. Second, I updated last two tests to
better show that 'git grep -P -E' is different from 'git grep -E -P'.
Signed-off-by: Michał Kiedrowicz <michal.kiedrowicz@gmail.com>
---
t/t7810-grep.sh | 56 ++++++++++++++++++++++++------------------------------
1 files changed, 25 insertions(+), 31 deletions(-)
diff --git a/t/t7810-grep.sh b/t/t7810-grep.sh
index e061108..e1d8c40 100755
--- a/t/t7810-grep.sh
+++ b/t/t7810-grep.sh
@@ -33,9 +33,9 @@ test_expect_success setup '
echo HeLLo_world
} >hello_world &&
{
- echo aab
- echo a+b
- echo a\\+b
+ echo "a+b*c"
+ echo "a+bc"
+ echo "abc"
} >ab &&
echo vvv >v &&
echo ww w >w &&
@@ -233,14 +233,14 @@ do
test_cmp expected actual
'
test_expect_success "grep $L with grep.extendedRegexp=false" '
- echo "ab:a+b" >expected &&
- git -c grep.extendedRegexp=false grep "a+b" >actual &&
+ echo "ab:a+bc" >expected &&
+ git -c grep.extendedRegexp=false grep "a+b*c" ab >actual &&
test_cmp expected actual
'
test_expect_success "grep $L with grep.extendedRegexp=true" '
- echo "ab:aab" >expected &&
- git -c grep.extendedRegexp=true grep "a+b" >actual &&
+ echo "ab:abc" >expected &&
+ git -c grep.extendedRegexp=true grep "a+b*c" ab >actual &&
test_cmp expected actual
'
done
@@ -650,10 +650,10 @@ test_expect_success LIBPCRE 'grep -P pattern with grep.extendedRegexp=true' '
test_expect_success LIBPCRE 'grep -P -v pattern' '
{
- echo ab:a+b
- echo ab:a\\+b
+ echo "ab:a+b*c"
+ echo "ab:a+bc"
} >expected &&
- git grep -P -v "aab" ab >actual &&
+ git grep -P -v "abc" ab >actual &&
test_cmp expected actual
'
@@ -686,39 +686,33 @@ test_expect_success LIBPCRE 'grep -P invalidpattern properly dies ' '
test_must_fail git grep -P "a["
'
-test_expect_success 'grep -F -E -G pattern' '
- echo ab:a+b >expected &&
- git grep -F -E -G a+b >actual &&
- test_cmp expected actual
-'
-
-test_expect_success 'grep -F -G -E pattern' '
- echo ab:aab >expected &&
- git grep -F -G -E a+b >actual &&
+test_expect_success 'grep -G -E -F pattern' '
+ echo "ab:a+b*c" >expected &&
+ git grep -G -E -F "a+b*c" ab >actual &&
test_cmp expected actual
'
test_expect_success 'grep -E -F -G pattern' '
- echo ab:aab >expected &&
- git grep -E -F -G a\\+b >actual &&
+ echo "ab:a+bc" >expected &&
+ git grep -E -F -G "a+b*c" ab >actual &&
test_cmp expected actual
'
-test_expect_success 'grep -E -G -F pattern' '
- echo ab:a\\+b >expected &&
- git grep -E -G -F a\\+b >actual &&
+test_expect_success 'grep -F -G -E pattern' '
+ echo "ab:abc" >expected &&
+ git grep -F -G -E "a+b*c" ab >actual &&
test_cmp expected actual
'
-test_expect_success 'grep -G -F -E pattern' '
- echo ab:a+b >expected &&
- git grep -G -F -E a\\+b >actual &&
- test_cmp expected actual
+test_expect_success 'grep -G -F -P -E pattern' '
+ :>empty &&
+ test_must_fail git grep -G -F -P -E "a\x{2b}b\x{2a}c" ab >actual &&
+ test_cmp empty actual
'
-test_expect_success LIBPCRE 'grep -E -G -F -P pattern' '
- echo ab:a+b >expected &&
- git grep -E -G -F -P a\\+b >actual &&
+test_expect_success LIBPCRE 'grep -G -F -E -P pattern' '
+ echo "ab:a+b*c" >expected &&
+ git grep -G -F -E -P "a\x{2b}b\x{2a}c" ab >actual &&
test_cmp expected actual
'
--
1.7.3.4
^ permalink raw reply related [flat|nested] 3+ messages in thread
end of thread, other threads:[~2011-05-26 22:44 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-05-26 21:50 [PATCH] git-grep: Fix problems with recently added tests Michał Kiedrowicz
2011-05-26 21:55 ` Brian Gernhardt
[not found] <7vvcwxunbt.fsf@alter.siamese.dyndns.org>
2011-05-26 22:43 ` Michał Kiedrowicz
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).