[Pdbg] [PATCH 5/5] tests: Log stderr output (if any) on test failure

Alistair Popple alistair at popple.id.au
Fri Nov 9 13:51:12 AEDT 2018


On Thursday, 8 November 2018 3:13:11 PM AEDT Amitay Isaacs wrote:
> Signed-off-by: Amitay Isaacs <amitay at ozlabs.org>
> ---
>  tests/driver.sh | 9 +++++++--
>  1 file changed, 7 insertions(+), 2 deletions(-)
> 
> diff --git a/tests/driver.sh b/tests/driver.sh
> index 16d6b71..9a68305 100644
> --- a/tests/driver.sh
> +++ b/tests/driver.sh
> @@ -370,9 +370,9 @@ test_run ()
>  		output_mismatch=1
>  	fi
> 
> +	output_stderr_raw=$(cat "$stderr_file")
> +	output_stderr=$(cat "$stderr_file" | result_filter)
>  	if [ $test_stderr -eq 1 ] ; then
> -		output_stderr_raw=$(cat "$stderr_file")
> -		output_stderr=$(cat "$stderr_file" | result_filter)
>  		if [ "$output_stderr" != "$required_output_stderr" ] ; then
>  			test_log "expected stderr:"
>  			test_log "$required_output_stderr"
> @@ -384,6 +384,11 @@ test_run ()
>  			fi
>  			output_mismatch=1
>  		fi
> +	else
> +		if [ -n "$output_stderr_raw" ] ; then
> +			test_log "output stderr:"
> +			test_log "$output_stderr_raw"
> +		fi

Would it make sense to consolidate the above logic by removing the stderr 
logging from the failure branch to make it bit easier to follow? It seems we 
could just do:

			test_log "output stderr:"
			test_log "$output_stderr"

And then just output stderr_raw in case of mistmatch regardless of if we're 
testing stderr. In fact doesn't this always log stderr except if we're testing 
stderr in which case it only gets logged if that's the cause of the mismatch? 
Or am I missing something here?

- Alistair

>  	fi
> 
>  	rm -f "$stderr_file"




More information about the Pdbg mailing list