83 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			83 lines
		
	
	
	
		
			1.6 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
#!/bin/sh
 | 
						|
 | 
						|
test_description='Test git stash show configuration.'
 | 
						|
 | 
						|
. ./test-lib.sh
 | 
						|
 | 
						|
test_expect_success 'setup' '
 | 
						|
	test_commit file
 | 
						|
'
 | 
						|
 | 
						|
# takes three parameters:
 | 
						|
# 1. the stash.showStat value (or "<unset>")
 | 
						|
# 2. the stash.showPatch value (or "<unset>")
 | 
						|
# 3. the diff options of the expected output (or nothing for no output)
 | 
						|
test_stat_and_patch () {
 | 
						|
	if test "<unset>" = "$1"
 | 
						|
	then
 | 
						|
		test_unconfig stash.showStat
 | 
						|
	else
 | 
						|
		test_config stash.showStat "$1"
 | 
						|
	fi &&
 | 
						|
 | 
						|
	if test "<unset>" = "$2"
 | 
						|
	then
 | 
						|
		test_unconfig stash.showPatch
 | 
						|
	else
 | 
						|
		test_config stash.showPatch "$2"
 | 
						|
	fi &&
 | 
						|
 | 
						|
	shift 2 &&
 | 
						|
	echo 2 >file.t &&
 | 
						|
	if test $# != 0
 | 
						|
	then
 | 
						|
		git diff "$@" >expect
 | 
						|
	fi &&
 | 
						|
	git stash &&
 | 
						|
	git stash show >actual &&
 | 
						|
 | 
						|
	if test $# = 0
 | 
						|
	then
 | 
						|
		test_must_be_empty actual
 | 
						|
	else
 | 
						|
		test_cmp expect actual
 | 
						|
	fi
 | 
						|
}
 | 
						|
 | 
						|
test_expect_success 'showStat unset showPatch unset' '
 | 
						|
	test_stat_and_patch "<unset>" "<unset>" --stat
 | 
						|
'
 | 
						|
 | 
						|
test_expect_success 'showStat unset showPatch false' '
 | 
						|
	test_stat_and_patch "<unset>" false --stat
 | 
						|
'
 | 
						|
 | 
						|
test_expect_success 'showStat unset showPatch true' '
 | 
						|
	test_stat_and_patch "<unset>" true --stat -p
 | 
						|
'
 | 
						|
 | 
						|
test_expect_success 'showStat false showPatch unset' '
 | 
						|
	test_stat_and_patch false "<unset>"
 | 
						|
'
 | 
						|
 | 
						|
test_expect_success 'showStat false showPatch false' '
 | 
						|
	test_stat_and_patch false false
 | 
						|
'
 | 
						|
 | 
						|
test_expect_success 'showStat false showPatch true' '
 | 
						|
	test_stat_and_patch false true -p
 | 
						|
'
 | 
						|
 | 
						|
test_expect_success 'showStat true showPatch unset' '
 | 
						|
	test_stat_and_patch true "<unset>" --stat
 | 
						|
'
 | 
						|
 | 
						|
test_expect_success 'showStat true showPatch false' '
 | 
						|
	test_stat_and_patch true false --stat
 | 
						|
'
 | 
						|
 | 
						|
test_expect_success 'showStat true showPatch true' '
 | 
						|
	test_stat_and_patch true true --stat -p
 | 
						|
'
 | 
						|
 | 
						|
test_done
 |