Mark messages in git-rebase.sh for translation. While doing this Jonathan noticed that the comma usage and sentence structure of the resolvemsg was not quite right, so correct that and its cousins in git-am.sh and t/t0201-gettext-fallbacks.sh at the same time. Some tests would start to fail with GETTEXT_POISON turned on after this update. Use test_i18ncmp and test_i18ngrep where appropriate to mark strings that should only be checked in the C locale output to avoid such issues. Signed-off-by: Jiang Xin <worldhello.net@gmail.com> Reviewed-by: Stefano Lattarini <stefano.lattarini@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
		
			
				
	
	
		
			78 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			78 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/bin/sh
 | 
						|
 | 
						|
test_description='messages from rebase operation'
 | 
						|
 | 
						|
. ./test-lib.sh
 | 
						|
 | 
						|
quick_one () {
 | 
						|
	echo "$1" >"file$1" &&
 | 
						|
	git add "file$1" &&
 | 
						|
	test_tick &&
 | 
						|
	git commit -m "$1"
 | 
						|
}
 | 
						|
 | 
						|
test_expect_success setup '
 | 
						|
	quick_one O &&
 | 
						|
	git branch topic &&
 | 
						|
	quick_one X &&
 | 
						|
	quick_one A &&
 | 
						|
	quick_one B &&
 | 
						|
	quick_one Y &&
 | 
						|
 | 
						|
	git checkout topic &&
 | 
						|
	quick_one A &&
 | 
						|
	quick_one B &&
 | 
						|
	quick_one Z &&
 | 
						|
	git tag start
 | 
						|
 | 
						|
'
 | 
						|
 | 
						|
cat >expect <<\EOF
 | 
						|
Already applied: 0001 A
 | 
						|
Already applied: 0002 B
 | 
						|
Committed: 0003 Z
 | 
						|
EOF
 | 
						|
 | 
						|
test_expect_success 'rebase -m' '
 | 
						|
 | 
						|
	git rebase -m master >report &&
 | 
						|
	sed -n -e "/^Already applied: /p" \
 | 
						|
		-e "/^Committed: /p" report >actual &&
 | 
						|
	test_cmp expect actual
 | 
						|
 | 
						|
'
 | 
						|
 | 
						|
test_expect_success 'rebase --stat' '
 | 
						|
	git reset --hard start &&
 | 
						|
        git rebase --stat master >diffstat.txt &&
 | 
						|
        grep "^ fileX |  *1 +$" diffstat.txt
 | 
						|
'
 | 
						|
 | 
						|
test_expect_success 'rebase w/config rebase.stat' '
 | 
						|
	git reset --hard start &&
 | 
						|
        git config rebase.stat true &&
 | 
						|
        git rebase master >diffstat.txt &&
 | 
						|
        grep "^ fileX |  *1 +$" diffstat.txt
 | 
						|
'
 | 
						|
 | 
						|
test_expect_success 'rebase -n overrides config rebase.stat config' '
 | 
						|
	git reset --hard start &&
 | 
						|
        git config rebase.stat true &&
 | 
						|
        git rebase -n master >diffstat.txt &&
 | 
						|
        ! grep "^ fileX |  *1 +$" diffstat.txt
 | 
						|
'
 | 
						|
 | 
						|
# Output to stderr:
 | 
						|
#
 | 
						|
#     "Does not point to a valid commit: invalid-ref"
 | 
						|
#
 | 
						|
# NEEDSWORK: This "grep" is fine in real non-C locales, but
 | 
						|
# GETTEXT_POISON poisons the refname along with the enclosing
 | 
						|
# error message.
 | 
						|
test_expect_success 'rebase --onto outputs the invalid ref' '
 | 
						|
	test_must_fail git rebase --onto invalid-ref HEAD HEAD 2>err &&
 | 
						|
	test_i18ngrep "invalid-ref" err
 | 
						|
'
 | 
						|
 | 
						|
test_done
 |