Matthieu Moy <matthieu....@imag.fr> writes:

> At least GNU echo interprets backslashes in its arguments.
>
> This triggered at least one bug: the error message of "rebase -i" was
> turning \t in commit messages into actual tabulations. There may be
> others.
>
> Using "printf '%s\n'" instead avoids this bad behavior, and is the form
> used by the "say" function.
>
> Noticed-by: David Kastrup <d...@gnu.org>
> Signed-off-by: Matthieu Moy <matthieu....@imag.fr>
[...]
> +test_expect_success 'rebase -i error on commits with \ in message' '
> +     current_head=$(git rev-parse HEAD)
> +     test_when_finished "git rebase --abort; git reset --hard $current_head; 
> rm -f error" &&
> +     test_commit TO-REMOVE will-conflict old-content &&
> +     test_commit "\temp" will-conflict new-content dummy &&
> +     (
> +     EDITOR=true &&
> +     export EDITOR &&
> +     test_must_fail git rebase -i HEAD^ --onto HEAD^^ 2>error
> +     ) &&
> +     grep -v "       " error

Umm, doesn't that only test that _some_ line in the error does not
contain a tab?

Whereas you need to test that _no_ line contains <TAB>emp, or some
such.  Perhaps as

  ! grep -v "   emp" error

> +'
> +
>  test_done

-- 
Thomas Rast
trast@{inf,student}.ethz.ch
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to