* sb/maint-1.6.2-opt-filename-fix: apply, fmt-merge-msg: use relative filenames commit: -F overrides -t
		
			
				
	
	
		
			244 lines
		
	
	
		
			4.2 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			244 lines
		
	
	
		
			4.2 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/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 &&
 | 
						|
	test_cmp expected actual
 | 
						|
'
 | 
						|
 | 
						|
cat >expected <<EOF
 | 
						|
Merge branch 'left' of $(pwd)
 | 
						|
EOF
 | 
						|
 | 
						|
test_expect_success 'merge-msg test #2' '
 | 
						|
 | 
						|
	git checkout master &&
 | 
						|
	git fetch "$(pwd)" left &&
 | 
						|
 | 
						|
	git fmt-merge-msg <.git/FETCH_HEAD >actual &&
 | 
						|
	test_cmp expected actual
 | 
						|
'
 | 
						|
 | 
						|
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-1' '
 | 
						|
 | 
						|
	git config --unset-all merge.log
 | 
						|
	git config --unset-all merge.summary
 | 
						|
	git config merge.log true &&
 | 
						|
 | 
						|
	git checkout master &&
 | 
						|
	setdate &&
 | 
						|
	git fetch . left &&
 | 
						|
 | 
						|
	git fmt-merge-msg <.git/FETCH_HEAD >actual &&
 | 
						|
	test_cmp expected actual
 | 
						|
'
 | 
						|
 | 
						|
test_expect_success 'merge-msg test #3-2' '
 | 
						|
 | 
						|
	git config --unset-all merge.log
 | 
						|
	git config --unset-all merge.summary
 | 
						|
	git config merge.summary true &&
 | 
						|
 | 
						|
	git checkout master &&
 | 
						|
	setdate &&
 | 
						|
	git fetch . left &&
 | 
						|
 | 
						|
	git fmt-merge-msg <.git/FETCH_HEAD >actual &&
 | 
						|
	test_cmp expected actual
 | 
						|
'
 | 
						|
 | 
						|
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-1' '
 | 
						|
 | 
						|
	git config --unset-all merge.log
 | 
						|
	git config --unset-all merge.summary
 | 
						|
	git config merge.log true &&
 | 
						|
 | 
						|
	git checkout master &&
 | 
						|
	setdate &&
 | 
						|
	git fetch . left right &&
 | 
						|
 | 
						|
	git fmt-merge-msg <.git/FETCH_HEAD >actual &&
 | 
						|
	test_cmp expected actual
 | 
						|
'
 | 
						|
 | 
						|
test_expect_success 'merge-msg test #4-2' '
 | 
						|
 | 
						|
	git config --unset-all merge.log
 | 
						|
	git config --unset-all merge.summary
 | 
						|
	git config merge.summary true &&
 | 
						|
 | 
						|
	git checkout master &&
 | 
						|
	setdate &&
 | 
						|
	git fetch . left right &&
 | 
						|
 | 
						|
	git fmt-merge-msg <.git/FETCH_HEAD >actual &&
 | 
						|
	test_cmp expected actual
 | 
						|
'
 | 
						|
 | 
						|
test_expect_success 'merge-msg test #5-1' '
 | 
						|
 | 
						|
	git config --unset-all merge.log
 | 
						|
	git config --unset-all merge.summary
 | 
						|
	git config merge.log yes &&
 | 
						|
 | 
						|
	git checkout master &&
 | 
						|
	setdate &&
 | 
						|
	git fetch . left right &&
 | 
						|
 | 
						|
	git fmt-merge-msg <.git/FETCH_HEAD >actual &&
 | 
						|
	test_cmp expected actual
 | 
						|
'
 | 
						|
 | 
						|
test_expect_success 'merge-msg test #5-2' '
 | 
						|
 | 
						|
	git config --unset-all merge.log
 | 
						|
	git config --unset-all merge.summary
 | 
						|
	git config merge.summary yes &&
 | 
						|
 | 
						|
	git checkout master &&
 | 
						|
	setdate &&
 | 
						|
	git fetch . left right &&
 | 
						|
 | 
						|
	git fmt-merge-msg <.git/FETCH_HEAD >actual &&
 | 
						|
	test_cmp expected actual
 | 
						|
'
 | 
						|
 | 
						|
test_expect_success 'merge-msg -F' '
 | 
						|
 | 
						|
	git config --unset-all merge.log
 | 
						|
	git config --unset-all merge.summary
 | 
						|
	git config merge.summary yes &&
 | 
						|
 | 
						|
	git checkout master &&
 | 
						|
	setdate &&
 | 
						|
	git fetch . left right &&
 | 
						|
 | 
						|
	git fmt-merge-msg -F .git/FETCH_HEAD >actual &&
 | 
						|
	test_cmp expected actual
 | 
						|
'
 | 
						|
 | 
						|
test_expect_success 'merge-msg -F in subdirectory' '
 | 
						|
 | 
						|
	git config --unset-all merge.log
 | 
						|
	git config --unset-all merge.summary
 | 
						|
	git config merge.summary yes &&
 | 
						|
 | 
						|
	git checkout master &&
 | 
						|
	setdate &&
 | 
						|
	git fetch . left right &&
 | 
						|
	mkdir sub &&
 | 
						|
	cp .git/FETCH_HEAD sub/FETCH_HEAD &&
 | 
						|
	(
 | 
						|
		cd sub &&
 | 
						|
		git fmt-merge-msg -F FETCH_HEAD >../actual
 | 
						|
	) &&
 | 
						|
	test_cmp expected actual
 | 
						|
'
 | 
						|
 | 
						|
test_done
 |