diff options
author | Junio C Hamano <gitster@pobox.com> | 2013-05-16 18:32:30 +0300 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2013-05-16 11:51:08 -0700 |
commit | e16f434ab66993c58690db9b68c9506b344916f7 (patch) | |
tree | c40405489cace31f96874ce4513d255993eca37c | |
parent | abdea96efdade975246cce0674fa2cfb8a7cc148 (diff) | |
download | git-e16f434ab66993c58690db9b68c9506b344916f7.tar.gz git-e16f434ab66993c58690db9b68c9506b344916f7.tar.xz |
t6111: allow checking the parents as well
Signed-off-by: Junio C Hamano <gitster@pobox.com>
-rwxr-xr-x | t/t6111-rev-list-treesame.sh | 30 |
1 files changed, 21 insertions, 9 deletions
diff --git a/t/t6111-rev-list-treesame.sh b/t/t6111-rev-list-treesame.sh index b2bca771c..1e4a55002 100755 --- a/t/t6111-rev-list-treesame.sh +++ b/t/t6111-rev-list-treesame.sh @@ -20,7 +20,7 @@ note () { } unnote () { - git name-rev --tags --stdin | sed -e "s|$_x40 (tags/\([^)]*\)) |\1 |g" + git name-rev --tags --stdin | sed -e "s|$_x40 (tags/\([^)]*\))\([ ]\)|\1\2|g" } test_expect_success setup ' @@ -66,23 +66,34 @@ test_expect_success setup ' test_commit M file "Parts 1+2" ' -FMT='tformat:%P %H | %s' - # could we soup this up to optionally check parents? So "(BA)C" would check # that C is shown and has parents B A. check_outcome () { outcome=$1 shift - for c in $1 - do - echo "$c" - done >expect && - shift && + + case "$1" in + *"("*) + FMT="%P %H | %s" + munge_actual=" + s/^\([^ ]*\) \([^ ]*\) .*/(\1)\2/ + s/ //g + s/()// + " + ;; + *) + FMT="%H | %s" + munge_actual="s/^\([^ ]*\) .*/\1/" + ;; + esac && + printf "%s\n" $1 >expect && + shift + param="$*" && test_expect_$outcome "log $param" ' git log --format="$FMT" $param | unnote >actual && - sed -e "s/^.* \([^ ]*\) .*/\1/" >check <actual && + sed -e "$munge_actual" <actual >check && test_cmp expect check || { cat actual false @@ -99,6 +110,7 @@ check_result () { # shown in normal full-history, as we can't distinguish unless we do a # simplification pass. After simplification, D is dropped but G remains. check_result 'M L K J I H G F E D C B A' +check_result '(LH)M (K)L (GJ)K (I)J (G)I (G)H (FE)G (D)F (B)E (BC)D (A)C (A)B A' check_result 'M H L K J I G E F D C B A' --topo-order check_result 'M L H B A' -- file check_result 'M L H B A' --parents -- file |