On Tue, Feb 13, 2018 at 01:36:01AM +0100, SZEDER Gábor wrote:

> 'git for-each-ref' should error out when invoked with more than one
> quoting style options.  The tests checking this have two issues:
> 
>   - They run 'git for-each-ref' upstream of a pipe, hiding its exit
>     code, thus don't actually checking that 'git for-each-ref' exits
>     with error code.
> 
>   - They check the error message in a rather roundabout way.
> 
> Ensure that 'git for-each-ref' exits with an error code using the
> 'test_must_fail' helper function, and check its error message by
> grepping its saved standard error.

Yeah, this looks much nicer than the original.

>  for i in "--perl --shell" "-s --python" "--python --tcl" "--tcl --perl"; do
>       test_expect_success "more than one quoting style: $i" "
> -             git for-each-ref $i 2>&1 | (read line &&
> -             case \$line in
> -             \"error: more than one quoting style\"*) : happy;;
> -             *) false
> -             esac)
> +             test_must_fail git for-each-ref $i 2>err &&
> +             grep '^error: more than one quoting style' err

I suspect in the long run this ought to be test_i18ngrep, but since it's
not localized yet, it makes sense to stop here with this patch.

-Peff

Reply via email to