This makes branch.c use the ref-filter APIs for filtering of
refs for 'git branch -l'. This is part of the series of unification
of code of 'git branch -l, git tag -l and git for-each-ref'.

The previous version can be found here:
http://thread.gmane.org/gmane.comp.version-control.git/276377

The changes in this version are:
[7/8]: Change the tests check for stdout and stderr. (check interdiff)

Karthik Nayak (8):
  branch: refactor width computation
  branch: bump get_head_description() to the top
  branch: roll show_detached HEAD into regular ref_list
  branch: move 'current' check down to the presentation layer
  branch: drop non-commit error reporting
  branch.c: use 'ref-filter' data structures
  branch.c: use 'ref-filter' APIs
  branch: add '--points-at' option

 Documentation/git-branch.txt |  13 +-
 builtin/branch.c             | 506 +++++++++++++------------------------------
 ref-filter.c                 |   4 +-
 ref-filter.h                 |   8 +-
 t/t1430-bad-ref-name.sh      |  31 ++-
 t/t3203-branch-output.sh     |  20 ++
 6 files changed, 216 insertions(+), 366 deletions(-)

interdiff:

diff --git a/t/t1430-bad-ref-name.sh b/t/t1430-bad-ref-name.sh
index db3627e..070cf06 100755
--- a/t/t1430-bad-ref-name.sh
+++ b/t/t1430-bad-ref-name.sh
@@ -38,18 +38,20 @@ test_expect_success 'fast-import: fail on invalid branch 
name "bad[branch]name"'
        test_must_fail git fast-import <input
 '
 
-test_expect_success 'git branch shows badly named ref' '
+test_expect_success 'git branch shows badly named ref as warning' '
        cp .git/refs/heads/master .git/refs/heads/broken...ref &&
        test_when_finished "rm -f .git/refs/heads/broken...ref" &&
-       git branch 2>output &&
-       grep -e "broken\.\.\.ref" output
+       git branch >output 2>error &&
+       grep -e "broken\.\.\.ref" error &&
+       ! grep -e "broken\.\.\.ref" output
 '
 
 test_expect_success 'branch -d can delete badly named ref' '
        cp .git/refs/heads/master .git/refs/heads/broken...ref &&
        test_when_finished "rm -f .git/refs/heads/broken...ref" &&
        git branch -d broken...ref &&
-       git branch >output &&
+       git branch >output 2>error &&
+       ! grep -e "broken\.\.\.ref" error &&
        ! grep -e "broken\.\.\.ref" output
 '
 
@@ -57,7 +59,8 @@ test_expect_success 'branch -D can delete badly named ref' '
        cp .git/refs/heads/master .git/refs/heads/broken...ref &&
        test_when_finished "rm -f .git/refs/heads/broken...ref" &&
        git branch -D broken...ref &&
-       ngit branch >output &&
+       git branch >output 2>error &&
+       ! grep -e "broken\.\.\.ref" error &&
        ! grep -e "broken\.\.\.ref" output
 '
 
@@ -85,7 +88,8 @@ test_expect_success 'branch -D cannot delete absolute path' '
 test_expect_success 'git branch cannot create a badly named ref' '
        test_when_finished "rm -f .git/refs/heads/broken...ref" &&
        test_must_fail git branch broken...ref &&
-       git branch >output &&
+       git branch >output 2>error &&
+       ! grep -e "broken\.\.\.ref" error &&
        ! grep -e "broken\.\.\.ref" output
 '
 
@@ -95,7 +99,8 @@ test_expect_success 'branch -m cannot rename to a bad ref 
name' '
        git branch goodref &&
        test_must_fail git branch -m goodref broken...ref &&
        test_cmp_rev master goodref &&
-       git branch >output &&
+       git branch >output 2>error &&
+       ! grep -e "broken\.\.\.ref" error &&
        ! grep -e "broken\.\.\.ref" output
 '
 
@@ -104,14 +109,16 @@ test_expect_failure 'branch -m can rename from a bad ref 
name' '
        test_when_finished "rm -f .git/refs/heads/broken...ref" &&
        git branch -m broken...ref renamed &&
        test_cmp_rev master renamed &&
-       git branch >output &&
+       git branch >output 2>error &&
+       ! grep -e "broken\.\.\.ref" error &&
        ! grep -e "broken\.\.\.ref" output
 '
 
 test_expect_success 'push cannot create a badly named ref' '
        test_when_finished "rm -f .git/refs/heads/broken...ref" &&
        test_must_fail git push "file://$(pwd)" HEAD:refs/heads/broken...ref &&
-       git branch >output &&
+       git branch >output 2>error &&
+       ! grep -e "broken\.\.\.ref" error &&
        ! grep -e "broken\.\.\.ref" output
 '
 
@@ -131,7 +138,8 @@ test_expect_failure 'push --mirror can delete badly named 
ref' '
                cp .git/refs/heads/master .git/refs/heads/broken...ref
        ) &&
        git -C src push --mirror "file://$top/dest" &&
-       git -C dest branch >output &&
+       git -C dest branch >output 2>error &&
+       ! grep -e "broken\.\.\.ref" error
        ! grep -e "broken\.\.\.ref" output
 '
 
@@ -159,7 +167,8 @@ test_expect_success 'update-ref -d can delete broken name' '
        cp .git/refs/heads/master .git/refs/heads/broken...ref &&
        test_when_finished "rm -f .git/refs/heads/broken...ref" &&
        git update-ref -d refs/heads/broken...ref &&
-       git branch >output &&
+       git branch >output 2>error &&
+       ! grep -e "broken\.\.\.ref" error &&
        ! grep -e "broken\.\.\.ref" output
 '

-- 
2.5.1

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to