| #!/bin/sh |
| # |
| # Copyright (c) 2006, Junio C Hamano |
| # |
| |
| test_description='fmt-merge-msg test' |
| |
| . ./test-lib.sh |
| |
| datestamp=1151939923 |
| setdate () { |
| GIT_COMMITTER_DATE="$datestamp +0200" |
| GIT_AUTHOR_DATE="$datestamp +0200" |
| datestamp=`expr "$datestamp" + 1` |
| export GIT_COMMITTER_DATE GIT_AUTHOR_DATE |
| } |
| |
| test_expect_success setup ' |
| echo one >one && |
| git add one && |
| setdate && |
| git commit -m "Initial" && |
| |
| echo uno >one && |
| echo dos >two && |
| git add two && |
| setdate && |
| git commit -a -m "Second" && |
| |
| git checkout -b left && |
| |
| echo $datestamp >one && |
| setdate && |
| git commit -a -m "Common #1" && |
| |
| echo $datestamp >one && |
| setdate && |
| git commit -a -m "Common #2" && |
| |
| git branch right && |
| |
| echo $datestamp >two && |
| setdate && |
| git commit -a -m "Left #3" && |
| |
| echo $datestamp >two && |
| setdate && |
| git commit -a -m "Left #4" && |
| |
| echo $datestamp >two && |
| setdate && |
| git commit -a -m "Left #5" && |
| |
| git checkout right && |
| |
| echo $datestamp >three && |
| git add three && |
| setdate && |
| git commit -a -m "Right #3" && |
| |
| echo $datestamp >three && |
| setdate && |
| git commit -a -m "Right #4" && |
| |
| echo $datestamp >three && |
| setdate && |
| git commit -a -m "Right #5" && |
| |
| git show-branch |
| ' |
| |
| cat >expected <<\EOF |
| Merge branch 'left' |
| EOF |
| |
| test_expect_success 'merge-msg test #1' ' |
| |
| git checkout master && |
| git fetch . left && |
| |
| git fmt-merge-msg <.git/FETCH_HEAD >actual && |
| diff -u actual expected |
| ' |
| |
| cat >expected <<\EOF |
| Merge branch 'left' of ../trash |
| EOF |
| |
| test_expect_success 'merge-msg test #2' ' |
| |
| git checkout master && |
| git fetch ../trash left && |
| |
| git fmt-merge-msg <.git/FETCH_HEAD >actual && |
| diff -u actual expected |
| ' |
| |
| cat >expected <<\EOF |
| Merge branch 'left' |
| |
| * left: |
| Left #5 |
| Left #4 |
| Left #3 |
| Common #2 |
| Common #1 |
| EOF |
| |
| test_expect_success 'merge-msg test #3' ' |
| |
| git repo-config merge.summary true && |
| |
| git checkout master && |
| setdate && |
| git fetch . left && |
| |
| git fmt-merge-msg <.git/FETCH_HEAD >actual && |
| diff -u actual expected |
| ' |
| |
| cat >expected <<\EOF |
| Merge branches 'left' and 'right' |
| |
| * left: |
| Left #5 |
| Left #4 |
| Left #3 |
| Common #2 |
| Common #1 |
| |
| * right: |
| Right #5 |
| Right #4 |
| Right #3 |
| Common #2 |
| Common #1 |
| EOF |
| |
| test_expect_success 'merge-msg test #4' ' |
| |
| git repo-config merge.summary true && |
| |
| git checkout master && |
| setdate && |
| git fetch . left right && |
| |
| git fmt-merge-msg <.git/FETCH_HEAD >actual && |
| diff -u actual expected |
| ' |
| |
| test_expect_success 'merge-msg test #5' ' |
| |
| git repo-config merge.summary yes && |
| |
| git checkout master && |
| setdate && |
| git fetch . left right && |
| |
| git fmt-merge-msg <.git/FETCH_HEAD >actual && |
| diff -u actual expected |
| ' |
| |
| test_done |