Subject: Re: [PATCH 1/2] t6200-fmt-merge-msg: Exercise 'merge.log' to configure shortlog length

From: Jonathan Nieder <[email-masked]>
Date: Fri, 27 Aug 2010 21:00:18 -0500

Hi,

Ramkumar Ramachandra wrote:

> Add a test to exercise the 'merge.log' configuration option

Thanks!

> +test_expect_success 'configurable shortlog length: merge.log' '

I suspect this test would be easier to understand if split up (yes, I
know I'm guilty of the same in other tests from this file).

Maybe something like this?

	test_expect_success 'setup: clear [merge] configuration' '
		test_might_fail git config --unset-all merge.log &&
		test_might_fail git config --unset-all merge.summary
	'

	test_expect_success 'set up FETCH_HEAD' '
		git checkout master &&
		git fetch . left
	'

	test_expect_success 'merge.log=3 limits shortlog length' '
		test_might_fail git config --unset merge.log &&
		test_might_fail git config --unset merge.summary &&

		cat >expected <<-\EOF &&
		  Left #3
		  ...
		EOF
		git -c merge.log=3 fmt-merge-msg <.git/FETCH_HEAD >msg &&

		tail -n 2 msg >actual &&
		test_cmp expected actual
	'

	test_expect_success 'shortlog length defaults to 20' '
		[...]
	'

	test_expect_success 'merge.log=5 does not limit shortlog length' '
		[...]
	'

	test_expect_success 'merge.log=6 does not limit shortlog length' '
		[...]
	'

	test_expect_success 'merge.log=0 disables shortlog' '
		[...]
	'

	test_expect_success 'merge.log=-1 does something sane' '
		[...]
	'

I can clean up the earlier tests afterwards. :)
Jonathan