Re: [PATCH v1 6/6] Unit tests for V2 porcelain status
From: Johannes Schindelin <hidden>
Date: 2016-07-21 15:55:09
Hi, On Wed, 20 Jul 2016, Jakub Narębski wrote:
On 20 July 2016 at 17:47, Jeff Hostetler [off-list ref] wrote:quoted
On 07/20/2016 11:30 AM, Jakub Narębski wrote:quoted
W dniu 2016-07-20 o 00:10, Jeff Hostetler pisze:quoted
+test_expect_success pre_initial_commit_0 ' + printf "## branch: (initial) master\n" >expected && + printf "?? actual\n" >>expected && + printf "?? dir1/\n" >>expected && + printf "?? expected\n" >>expected && + printf "?? file_x\n" >>expected && + printf "?? file_y\n" >>expected && + printf "?? file_z\n" >>expected &&Why not use heredoc syntax (cat <<\EOF), or prepare a file with expected output in the testsuite?The tests involving renames needed to embed a tab character in the output and hiding a tab character in a heredoc seemed error prone. So to be consistent I made them all printf-style.Ah, so that's the case for series of printf. I think in some other cases the Git testsuite simply uses HT variable for the TAB character.
Yeah, it would be more pleasant to read echo >expected <<-EOF ## branch: (initial) master ?? actual ?? dir1/ ?? expected ?? file_x ?? file_y ?? file_z EOF And it is also easy to use $HT in there (unless you want to use <<-\EOF). Actually, even if you want to use \EOF, you can easily use `sed` to expand, say, "Q" to tabs, such as was done here: https://github.com/git/git/blob/v2.9.2/t/t4213-log-tabexpand.sh#L88-L92 Ciao, Dscho