 12a258c078
			
		
	
	12a258c078
	
	
	
		
			
			Something like foo@{-1} is nonsensical, as the @{-N} syntax
is reserved for "the Nth last branch", and is not an actual
reflog selector. We should not feed such nonsense to
approxidate at all.
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
		
	
		
			
				
	
	
		
			52 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			52 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #!/bin/sh
 | |
| 
 | |
| test_description='test various @{X} syntax combinations together'
 | |
| . ./test-lib.sh
 | |
| 
 | |
| check() {
 | |
| test_expect_${3:-success} "$1 = $2" "
 | |
| 	echo '$2' >expect &&
 | |
| 	git log -1 --format=%s '$1' >actual &&
 | |
| 	test_cmp expect actual
 | |
| "
 | |
| }
 | |
| nonsense() {
 | |
| test_expect_${2:-success} "$1 is nonsensical" "
 | |
| 	test_must_fail git log -1 '$1'
 | |
| "
 | |
| }
 | |
| fail() {
 | |
| 	"$@" failure
 | |
| }
 | |
| 
 | |
| test_expect_success 'setup' '
 | |
| 	test_commit master-one &&
 | |
| 	test_commit master-two &&
 | |
| 	git checkout -b upstream-branch &&
 | |
| 	test_commit upstream-one &&
 | |
| 	test_commit upstream-two &&
 | |
| 	git checkout -b old-branch &&
 | |
| 	test_commit old-one &&
 | |
| 	test_commit old-two &&
 | |
| 	git checkout -b new-branch &&
 | |
| 	test_commit new-one &&
 | |
| 	test_commit new-two &&
 | |
| 	git config branch.old-branch.remote . &&
 | |
| 	git config branch.old-branch.merge refs/heads/master &&
 | |
| 	git config branch.new-branch.remote . &&
 | |
| 	git config branch.new-branch.merge refs/heads/upstream-branch
 | |
| '
 | |
| 
 | |
| check HEAD new-two
 | |
| check "@{1}" new-one
 | |
| check "@{-1}" old-two
 | |
| check "@{-1}@{1}" old-one
 | |
| check "@{u}" upstream-two
 | |
| check "@{u}@{1}" upstream-one
 | |
| check "@{-1}@{u}" master-two
 | |
| check "@{-1}@{u}@{1}" master-one
 | |
| nonsense "@{u}@{-1}"
 | |
| nonsense "@{1}@{u}"
 | |
| 
 | |
| test_done
 |