Skip to content

Commit

Permalink
format-patch: Test --[no-]numbered and format.numbered
Browse files Browse the repository at this point in the history
Just because there wasn't a test for --numbered isn't a good reason
not to test format.numbered.  So now we test both.

Signed-off-by: Brian Gernhardt <benji@silverinsanity.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
  • Loading branch information
Brian Gernhardt authored and Junio C Hamano committed Nov 4, 2007
1 parent 49604a4 commit e90ecb6
Showing 1 changed file with 106 additions and 0 deletions.
106 changes: 106 additions & 0 deletions t/t4021-format-patch-numbered.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
#!/bin/sh
#
# Copyright (c) 2006 Brian C Gernhardt
#

test_description='Format-patch numbering options'

. ./test-lib.sh

test_expect_success setup '
echo A > file &&
git add file &&
git commit -m First &&
echo B >> file &&
git commit -a -m Second &&
echo C >> file &&
git commit -a -m Third
'

# Each of these gets used multiple times.

test_num_no_numbered() {
cnt=$(grep "^Subject: \[PATCH\]" $1 | wc -l) &&
test $cnt = $2
}

test_single_no_numbered() {
test_num_no_numbered $1 1
}

test_no_numbered() {
test_num_no_numbered $1 2
}

test_single_numbered() {
grep "^Subject: \[PATCH 1/1\]" $1
}

test_numbered() {
grep "^Subject: \[PATCH 1/2\]" $1 &&
grep "^Subject: \[PATCH 2/2\]" $1
}

test_expect_success 'Default: no numbered' '
git format-patch --stdout HEAD~2 >patch0 &&
test_no_numbered patch0
'

test_expect_success 'Use --numbered' '
git format-patch --numbered --stdout HEAD~2 >patch1 &&
test_numbered patch1
'

test_expect_success 'format.numbered = true' '
git config format.numbered true &&
git format-patch --stdout HEAD~2 >patch2 &&
test_numbered patch2
'

test_expect_success 'format.numbered && single patch' '
git format-patch --stdout HEAD^ > patch3 &&
test_single_numbered patch3
'

test_expect_success 'format.numbered && --no-numbered' '
git format-patch --no-numbered --stdout HEAD~2 >patch4 &&
test_no_numbered patch4
'

test_expect_success 'format.numbered = auto' '
git config format.numbered auto
git format-patch --stdout HEAD~2 > patch5 &&
test_numbered patch5
'

test_expect_success 'format.numbered = auto && single patch' '
git format-patch --stdout HEAD^ > patch6 &&
test_single_no_numbered patch6
'

test_expect_success 'format.numbered = auto && --no-numbered' '
git format-patch --no-numbered --stdout HEAD~2 > patch7 &&
test_no_numbered patch7
'

test_done

0 comments on commit e90ecb6

Please sign in to comment.