Re: [PATCH v4 2/3] diff: Let "git diff -O" read orderfile from any file, fail properly
Samuel Bronson <naesten@gmail.com> writes:
Show 16 quoted lines
> diff --git a/t/t4056-diff-order.sh b/t/t4056-diff-order.sh
> index 398b3f6..eb471e7 100755
> --- a/t/t4056-diff-order.sh
> +++ b/t/t4056-diff-order.sh
> @@ -61,12 +61,35 @@ test_expect_success "no order (=tree object order)" '
> test_cmp expect_none actual
> '
>
> +test_expect_success 'missing orderfile' '
> + rm -f bogus_file &&
> + test_must_fail git diff -Obogus_file --name-only HEAD^..HEAD
> +'
> +
> +test_expect_success 'unreadable orderfile' '
> + touch unreadable_file &&
> + chmod -r unreadable_file &&
Two points:
- Unless your primary interest is to change the file timestamp, do
not use "touch"; using ">unreadable_file" or something instead
would tell the readers that you only want to make sure it exists
and do not care about the file timestamp. - this test probably needs restricted to people with sane
filesystems; I think POSIXPERM prerequisite and also SANITY
prerequisite are needed, at least.Show 24 quoted lines
> + test_must_fail git diff -Ounreadable_file --name-only HEAD^..HEAD
> +'
> +
> +test_expect_success 'orderfile is a directory' '
> + test_must_fail git diff -O/ --name-only HEAD^..HEAD
> +'
> +
> for i in 1 2
> do
> test_expect_success "orderfile using option ($i)" '
> git diff -Oorder_file_$i --name-only HEAD^..HEAD >actual &&
> test_cmp expect_$i actual
> '
> +
> + test_expect_success PIPE "orderfile is fifo ($i)" '
> + rm -f order_fifo &&
> + mkfifo order_fifo &&
> + cat order_file_$i >order_fifo &
> + git diff -O order_fifo --name-only HEAD^..HEAD >actual &&
> + test_cmp expect_$i actual
> +'
> done
>
> test_done