Re: [PATCH 6/7] merge hook tests: fix and update tests
- From
Eric Sunshine <sunshine@sunshineco.com>
- Date
- Mar 10, 2014, 20:27 UTC
- Message-ID
- <CAPig+cRsFTNAAzAD99v+A1KCVRNTUOaSyuf_gqPZa8-MLMyoBQ@mail.gmail.com>
- In-Reply-To
- <1394477377-10994-7-git-send-email-benoit.pierre@gmail.com>
On Mon, Mar 10, 2014 at 2:49 PM, Benoit Pierre <benoit.pierre@gmail.com> wrote:
> - update 'no editor' hook test and add 'editor' hook test > - make sure the tree is reset to a clean state after running a test > (using test_when_finished) so later tests are not impacted
As conceptually distinct changes, it might make sense to split these into two patches, one a purely cleanup patch adding test_when_finished, and the second introducing your new test. Doing so would ease the review process and make the intended changes more obvious.
Show 76 quoted lines
> Signed-off-by: Benoit Pierre <benoit.pierre@gmail.com>
> ---
> t/t7505-prepare-commit-msg-hook.sh | 27 +++++++++++++++++++++------
> 1 file changed, 21 insertions(+), 6 deletions(-)
>
> diff --git a/t/t7505-prepare-commit-msg-hook.sh b/t/t7505-prepare-commit-msg-hook.sh
> index 5531abb..03dce09 100755
> --- a/t/t7505-prepare-commit-msg-hook.sh
> +++ b/t/t7505-prepare-commit-msg-hook.sh
> @@ -134,14 +134,26 @@ test_expect_success 'with hook (-c)' '
>
> test_expect_success 'with hook (merge)' '
>
> - head=`git rev-parse HEAD` &&
> - git checkout -b other HEAD@{1} &&
> - echo "more" >> file &&
> + test_when_finished "git checkout -f master" &&
> + git checkout -B other HEAD@{1} &&
> + echo "more" >>file &&
> + git add file &&
> + git commit -m other &&
> + git checkout - &&
> + git merge --no-ff other &&
> + test "`git log -1 --pretty=format:%s`" = "merge (no editor)"
> +'
> +
> +test_expect_success 'with hook and editor (merge)' '
> +
> + test_when_finished "git checkout -f master" &&
> + git checkout -B other HEAD@{1} &&
> + echo "more" >>file &&
> git add file &&
> git commit -m other &&
> git checkout - &&
> - git merge other &&
> - test "`git log -1 --pretty=format:%s`" = merge
> + env GIT_EDITOR="\"\$FAKE_EDITOR\"" git merge --no-ff -e other &&
> + test "`git log -1 --pretty=format:%s`" = "merge"
> '
>
> cat > "$HOOK" <<'EOF'
> @@ -151,6 +163,7 @@ EOF
>
> test_expect_success 'with failing hook' '
>
> + test_when_finished "git checkout -f master" &&
> head=`git rev-parse HEAD` &&
> echo "more" >> file &&
> git add file &&
> @@ -160,6 +173,7 @@ test_expect_success 'with failing hook' '
>
> test_expect_success 'with failing hook (--no-verify)' '
>
> + test_when_finished "git checkout -f master" &&
> head=`git rev-parse HEAD` &&
> echo "more" >> file &&
> git add file &&
> @@ -169,6 +183,7 @@ test_expect_success 'with failing hook (--no-verify)' '
>
> test_expect_success 'with failing hook (merge)' '
>
> + test_when_finished "git checkout -f master" &&
> git checkout -B other HEAD@{1} &&
> echo "more" >> file &&
> git add file &&
> @@ -178,7 +193,7 @@ test_expect_success 'with failing hook (merge)' '
> exit 1
> EOF
> git checkout - &&
> - test_must_fail git merge other
> + test_must_fail git merge --no-ff other
>
> '
>
> --
> 1.9.0