Andrew Pimlott <and...@pimlott.net> writes:

> In order to test this, I wrote a helper function to dump the rebase -i
> todo list.  Would you like this introduced in its own patch, or
> combined?  See below.

Depends on how involved the addition of the tests that actually use
the helper, but in general it would be a good idea to add it in the
first patch that actually uses it.  Unused code added in a separate
patch will not point at that patch when bisecting, if that unused
code was broken from the beginning (not that I see anything
immediately broken in the code the following adds).


> ---8<---
> Subject: [PATCH] lib-rebase: set_cat_todo_editor
>
> Add a helper for testing rebase -i todo lists.  This can be used to verify
> the expected user experience, even for todo list changes that do not affect
> the outcome of rebase.
>
> Signed-off-by: Andrew Pimlott <and...@pimlott.net>
> ---
>  t/lib-rebase.sh |   13 +++++++++++++
>  1 file changed, 13 insertions(+)
>
> diff --git a/t/lib-rebase.sh b/t/lib-rebase.sh
> index 4b74ae4..d118dd6 100644
> --- a/t/lib-rebase.sh
> +++ b/t/lib-rebase.sh
> @@ -66,6 +66,19 @@ EOF
>       chmod a+x fake-editor.sh
>  }
>  
> +# After set_cat_todo_editor, rebase -i will write the todo list (ignoring
> +# blank lines and comments) to stdout, and exit failure.
> +
> +set_cat_todo_editor () {
> +     echo "#!$SHELL_PATH" >fake-editor.sh
> +     cat >> fake-editor.sh <<\EOF
> +grep "^[^#]" "$1"
> +exit 1
> +EOF
> +     chmod a+x fake-editor.sh

These days we should use write_script to do this kind of thing, I
think.

> +     test_set_editor "$(pwd)/fake-editor.sh"
> +}
> +
>  # checks that the revisions in "$2" represent a linear range with the
>  # subjects in "$1"
>  test_linear_range () {
--
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