Re: [PATCH v2 03/12] t5520: test work tree fast-forward when fetch updates head
On Thu, May 7, 2015 at 1:43 AM, Paul Tan <pyokagan@gmail.com> wrote:
Show 46 quoted lines
> Since commit b10ac50f (Fix pulling into the same branch), git-pull,
> upon detecting that git-fetch updated the current head, will
> fast-forward the working tree to the updated head commit.
>
> Implement tests to ensure that the fast-forward occurs in such a case,
> as well as to ensure that the user-friendly advice is printed upon
> failure.
>
> Signed-off-by: Paul Tan <pyokagan@gmail.com>
> ---
>
> Notes:
> * Ensure that on fast-forward failure, if there is a conflict, the work
> tree should not be touched.
>
> t/t5520-pull.sh | 22 ++++++++++++++++++++++
> 1 file changed, 22 insertions(+)
>
> diff --git a/t/t5520-pull.sh b/t/t5520-pull.sh
> index 37ff45f..99b6f67 100755
> --- a/t/t5520-pull.sh
> +++ b/t/t5520-pull.sh
> @@ -185,6 +185,28 @@ test_expect_success 'fail if the index has unresolved entries' '
> test_cmp expected file
> '
>
> +test_expect_success 'fast-forwards working tree if branch head is updated' '
> + git checkout -b third master^ &&
> + test_when_finished "git checkout -f copy && git branch -D third" &&
> + echo file >expected &&
> + test_cmp expected file &&
> + git pull . second:third 2>out &&
> + test_i18ngrep "fetch updated the current branch head" out &&
> + echo modified >expected &&
> + test_cmp expected file
> +'
> +
> +test_expect_success 'fast-forward fails with conflicting work tree' '
> + git checkout -b third master^ &&
> + test_when_finished "git checkout -f copy && git branch -D third" &&
> + echo file >expected &&
> + test_cmp expected file &&
> + echo conflict >file &&
> + test_must_fail git pull . second:third 2>out &&
> + test_i18ngrep "Cannot fast-forward your working tree" out &&
> + test `cat file` = conflict
same comments as in patch 1 apply here.
Show 8 quoted lines
> +'
> +
> test_expect_success '--rebase' '
> git branch to-rebase &&
> echo modified again > file &&
> --
> 2.1.4
>