Skip to content

Commit

Permalink
Add more tests for format-patch
Browse files Browse the repository at this point in the history
Tests -o, and an excessively long subject, and --thread, with and
without --in-reply-to=

Signed-off-by: Daniel Barkalow <barkalow@iabervon.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
  • Loading branch information
Daniel Barkalow authored and Junio C Hamano committed Feb 19, 2008
1 parent cf5c51e commit 7d81214
Showing 1 changed file with 45 additions and 0 deletions.
45 changes: 45 additions & 0 deletions t/t4014-format-patch.sh
Original file line number Diff line number Diff line change
Expand Up @@ -88,4 +88,49 @@ test_expect_success 'replay did not screw up the log message' '
'

test_expect_success 'multiple files' '
rm -rf patches/ &&
git checkout side &&
git format-patch -o patches/ master &&
ls patches/0001-Side-changes-1.patch patches/0002-Side-changes-2.patch patches/0003-Side-changes-3-with-n-backslash-n-in-it.patch
'

test_expect_success 'thread' '
rm -rf patches/ &&
git checkout side &&
git format-patch --thread -o patches/ master &&
FIRST_MID=$(grep "Message-Id:" patches/0001-* | sed "s/^[^<]*\(<[^>]*>\).*$/\1/") &&
for i in patches/0002-* patches/0003-*
do
grep "References: $FIRST_MID" $i &&
grep "In-Reply-To: $FIRST_MID" $i
done
'

test_expect_success 'thread in-reply-to' '
rm -rf patches/ &&
git checkout side &&
git format-patch --in-reply-to="<test.message>" --thread -o patches/ master &&
FIRST_MID="<test.message>" &&
for i in patches/*
do
grep "References: $FIRST_MID" $i &&
grep "In-Reply-To: $FIRST_MID" $i
done
'

test_expect_success 'excessive subject' '
rm -rf patches/ &&
git checkout side &&
for i in 5 6 1 2 3 A 4 B C 7 8 9 10 D E F; do echo "$i"; done >>file &&
git update-index file &&
git commit -m "This is an excessively long subject line for a message due to the habit some projects have of not having a short, one-line subject at the start of the commit message, but rather sticking a whole paragraph right at the start as the only thing in the commit message. It had better not become the filename for the patch." &&
git format-patch -o patches/ master..side &&
ls patches/0004-This-is-an-excessively-long-subject-line-for-a-messa.patch
'

test_done

0 comments on commit 7d81214

Please sign in to comment.