Re: [PATCH v4 2/3] diff: Let "git diff -O" read orderfile from any file, fail properly
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Dec 18, 2013, 05:47 UTC
- Message-ID
- <xmqqvbymk8vz.fsf@gitster.dls.corp.google.com>
- In-Reply-To
- <CAJYzjmdscmEVuT29wMVoeUoUag=0H-XDq2tkLPRtHEr51kOk5Q@mail.gmail.com>
Samuel Bronson <naesten@gmail.com> writes:
Show 7 quoted lines
> On Tue, Dec 17, 2013 at 5:09 PM, Junio C Hamano <gitster@pobox.com> wrote: >> My point was that I did not see much value in reading the orderfile >> data from anything but a file. At that point, you are not testing >> the "diff -O" orderfile option, but if strbuf_readline() reads from >> a non-regular file. > > Oh, good point, now that you state it explicitly. I'll remove it.
Or you can study the fix-up I (tentatively) queued on top of your series in 'pu'. Also see $gmane/239409.
Thanks.
24331790 (FIXUP! tests, 2013-12-17)
diff --git a/t/t4056-diff-order.sh b/t/t4056-diff-order.sh index f906dea..db0e427 100755 --- a/t/t4056-diff-order.sh +++ b/t/t4056-diff-order.sh @@ -22,14 +22,12 @@ test_expect_success 'setup' ' *Makefile *.txt *.h - * EOF cat >order_file_2 <<-\EOF && *Makefile *.h *.c - * EOF cat >expect_none <<-\EOF && @@ -77,27 +75,30 @@ test_expect_success 'orderfile is a directory' ' 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 -' + 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 -' + rm -f order_fifo && + mkfifo order_fifo && + { + cat order_file_$i >order_fifo & + } && + git diff -O order_fifo --name-only HEAD^..HEAD >actual && + wait && + test_cmp expect_$i actual + ' test_expect_success "orderfile using config ($i)" ' - git -c diff.orderfile=order_file_$i diff --name-only HEAD^..HEAD >actual && - test_cmp expect_$i actual -' + git -c diff.orderfile=order_file_$i diff --name-only HEAD^..HEAD >actual && + test_cmp expect_$i actual + ' test_expect_success "cancelling configured orderfile ($i)" ' - git -c diff.orderfile=order_file_$i diff -O/dev/null --name-only HEAD^..HEAD >actual && - test_cmp expect_none actual -' + git -c diff.orderfile=order_file_$i diff -O/dev/null --name-only HEAD^..HEAD >actual && + test_cmp expect_none actual + ' done test_done
-- 1.8.5.2-297-g3e57c29