Thread (80 messages) 80 messages, 5 authors, 2019-06-25

Re: [PATCH 02/17] t0001 (mingw): do not expect a specific order of stdout/stderr

From: Eric Sunshine <hidden>
Date: 2019-06-18 23:12:45

On Tue, Jun 18, 2019 at 8:24 AM Johannes Schindelin via GitGitGadget
[off-list ref] wrote:
quoted hunk ↗ jump to hunk
When redirecting stdout/stderr to the same file, we cannot guarantee
that stdout will come first.

In fact, in this test case, it seems that an MSVC build always prints
stderr first.

In any case, this test case does not want to verify the *order* but
the *presence* of both outputs, so let's relax the test a little.

Signed-off-by: Johannes Schindelin <redacted>
---
diff --git a/t/t0001-init.sh b/t/t0001-init.sh
@@ -474,7 +474,8 @@ test_expect_success MINGW 'redirect std handles' '
        printf ".git\nfatal: Needed a single revision\n" >expect &&
-       test_cmp expect output.txt
+       sort <output.txt >output.sorted &&
+       test_cmp expect output.sorted
It was quite surprising to see this sorting only 'output' but not
'expect'. I see now that 'output' is already "sorted" (in that sense),
but it feels fragile. More robust would be to sort 'expect' as well:

    printf ".git\nfatal: Needed a single revision\n" | sort >expect &&

This would protect against the next person who modifies the 'printf'
testing on Unix and Windows/gcc and thinking all is well even though
the change might make the test fail for an MSVC build.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help