Subject: Re: [PATCH 1/1] t3420: remove progress lines before comparing output

From: Phillip Wood <[email-masked]>
Date: Tue, 2 Jul 2019 16:54:08 +0100

On 01/07/2019 22:01, Junio C Hamano wrote:
> "Phillip Wood via GitGitGadget" <[email-masked]> writes:
> 
>> progress output before comparing it to the expected output. We do this
>> by removing everything before the final "\r" on each line as we don't
>> care about the progress indicator, but we do care about what is printed
>> immediately after it.
> 
> As long as sed implementation used here does not do anything funny
> to CR, I think the approach to strip everything before the last CR
> on the line is sensible.  As I am not familiar with how Windows port
> of sed wants to treat a CR byte in the pattern, I am not sure about
> the precondition of the above statement, though.

I wondered about that too, but it passes the CI tests under windows.

> I also have to wonder if we can/want to do this without an extra
> printf process every time we sanitize the output, though I do not
> think I care too deeply about it.

I could add 're="$(printf ...)"' to the setup at the top of the file if 
you want

Best Wishes

Phillip

>> Signed-off-by: Phillip Wood <[email-masked]>
>> ---
>>   t/t3420-rebase-autostash.sh | 16 +++++++++-------
>>   1 file changed, 9 insertions(+), 7 deletions(-)
>>
>> diff --git a/t/t3420-rebase-autostash.sh b/t/t3420-rebase-autostash.sh
>> index 9186e90127..0454018584 100755
>> --- a/t/t3420-rebase-autostash.sh
>> +++ b/t/t3420-rebase-autostash.sh
>> @@ -48,8 +48,8 @@ create_expected_success_interactive () {
>>   	q_to_cr >expected <<-EOF
>>   	$(grep "^Created autostash: [0-9a-f][0-9a-f]*\$" actual)
>>   	HEAD is now at $(git rev-parse --short feature-branch) third commit
>> -	Rebasing (1/2)QRebasing (2/2)QApplied autostash.
>> -	Q                                                                                QSuccessfully rebased and updated refs/heads/rebased-feature-branch.
>> +	Applied autostash.
>> +	Successfully rebased and updated refs/heads/rebased-feature-branch.
>>   	EOF
>>   }
>>   
>> @@ -67,13 +67,13 @@ create_expected_failure_am () {
>>   }
>>   
>>   create_expected_failure_interactive () {
>> -	q_to_cr >expected <<-EOF
>> +	cat >expected <<-EOF
>>   	$(grep "^Created autostash: [0-9a-f][0-9a-f]*\$" actual)
>>   	HEAD is now at $(git rev-parse --short feature-branch) third commit
>> -	Rebasing (1/2)QRebasing (2/2)QApplying autostash resulted in conflicts.
>> +	Applying autostash resulted in conflicts.
>>   	Your changes are safe in the stash.
>>   	You can run "git stash pop" or "git stash drop" at any time.
>> -	Q                                                                                QSuccessfully rebased and updated refs/heads/rebased-feature-branch.
>> +	Successfully rebased and updated refs/heads/rebased-feature-branch.
>>   	EOF
>>   }
>>   
>> @@ -109,7 +109,8 @@ testrebase () {
>>   			suffix=interactive
>>   		fi &&
>>   		create_expected_success_$suffix &&
>> -		test_i18ncmp expected actual
>> +		sed "$(printf "s/.*\\r//")" <actual >actual2 &&
>> +		test_i18ncmp expected actual2
>>   	'
>>   
>>   	test_expect_success "rebase$type: dirty index, non-conflicting rebase" '
>> @@ -209,7 +210,8 @@ testrebase () {
>>   			suffix=interactive
>>   		fi &&
>>   		create_expected_failure_$suffix &&
>> -		test_i18ncmp expected actual
>> +		sed "$(printf "s/.*\\r//")" <actual >actual2 &&
>> +		test_i18ncmp expected actual2
>>   	'
>>   }