OSDN Git Service

t7810-grep: test interaction of multiple --grep and --author options
authorMichael J Gruber <git@drmicha.warpmail.net>
Fri, 14 Sep 2012 09:46:42 +0000 (11:46 +0200)
committerJunio C Hamano <gitster@pobox.com>
Sun, 16 Sep 2012 06:35:40 +0000 (23:35 -0700)
There are tests for this interaction already. Restructure slightly and
avoid any claims about --all-match.

Signed-off-by: Michael J Gruber <git@drmicha.warpmail.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
t/t7810-grep.sh

index be81d96..f6edb4d 100755 (executable)
@@ -495,16 +495,6 @@ test_expect_success 'log --all-match with multiple --grep uses intersection' '
        test_cmp expect actual
 '
 
-test_expect_success 'log --grep --author implicitly uses all-match' '
-       # grep matches initial and second but not third
-       # author matches only initial and third
-       git log --author="A U Thor" --grep=s --grep=l --format=%s >actual &&
-       {
-               echo initial
-       } >expect &&
-       test_cmp expect actual
-'
-
 test_expect_success 'log with multiple --author uses union' '
        git log --author="Thor" --author="Aster" --format=%s >actual &&
        {
@@ -521,17 +511,33 @@ test_expect_success 'log --all-match with multiple --author still uses union' '
        test_cmp expect actual
 '
 
-test_expect_success 'log with --grep and multiple --author uses all-match' '
-       git log --author="Thor" --author="Night" --grep=i --format=%s >actual &&
+test_expect_success 'log --grep --author uses intersection' '
+       # grep matches only third and fourth
+       # author matches only initial and third
+       git log --author="A U Thor" --grep=r --format=%s >actual &&
        {
-           echo third && echo initial
+               echo third
        } >expect &&
        test_cmp expect actual
 '
 
-test_expect_success 'log with --grep and multiple --author uses all-match' '
-       git log --author="Thor" --author="Night" --grep=q --format=%s >actual &&
-       >expect &&
+test_expect_success 'log --grep --grep --author takes union of greps and intersects with author' '
+       # grep matches initial and second but not third
+       # author matches only initial and third
+       git log --author="A U Thor" --grep=s --grep=l --format=%s >actual &&
+       {
+               echo initial
+       } >expect &&
+       test_cmp expect actual
+'
+
+test_expect_success 'log --grep --author --author takes union of authors and intersects with grep' '
+       # grep matches only initial and third
+       # author matches all but second
+       git log --author="Thor" --author="Night" --grep=i --format=%s >actual &&
+       {
+           echo third && echo initial
+       } >expect &&
        test_cmp expect actual
 '