Re: [PATCH] t5537: re-drop http tests

2014-05-30 Thread Junio C Hamano
Jeff King  writes:

> And a final side note. If you retry the merge by:
>
>   m=1ddb4d7
>   git checkout $m^1
>   git merge $m^2
>
> you can see the resulting conflict is quite tricky to understand
> Viewing it with diff3 conflict-style makes it much more obvious.

Yes, that was a clear mismerge on my side; thanks for catching it.

>
>  t/t5537-fetch-shallow.sh | 28 
>  1 file changed, 28 deletions(-)
>
> diff --git a/t/t5537-fetch-shallow.sh b/t/t5537-fetch-shallow.sh
> index be951a4..a980574 100755
> --- a/t/t5537-fetch-shallow.sh
> +++ b/t/t5537-fetch-shallow.sh
> @@ -173,33 +173,6 @@ EOF
>   )
>  '
>  
> -if test -n "$NO_CURL" -o -z "$GIT_TEST_HTTPD"; then
> - say 'skipping remaining tests, git built without http support'
> - test_done
> -fi
> -
> -LIB_HTTPD_PORT=${LIB_HTTPD_PORT-'5537'}
> -. "$TEST_DIRECTORY"/lib-httpd.sh
> -start_httpd
> -
> -test_expect_success 'clone http repository' '
> - git clone --bare --no-local shallow 
> "$HTTPD_DOCUMENT_ROOT_PATH/repo.git" &&
> - git clone $HTTPD_URL/smart/repo.git clone &&
> - (
> - cd clone &&
> - git fsck &&
> - git log --format=%s origin/master >actual &&
> - cat  -7
> -6
> -5
> -4
> -3
> -EOF
> - test_cmp expect actual
> - )
> -'
> -
>  test_expect_success POSIXPERM,SANITY 'shallow fetch from a read-only repo' '
>   cp -R .git read-only.git &&
>   find read-only.git -print | xargs chmod -w &&
> @@ -213,5 +186,4 @@ EOF
>   test_cmp expect actual
>  '
>  
> -stop_httpd
>  test_done
--
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


[PATCH] t5537: re-drop http tests

2014-05-29 Thread Jeff King
These were originally removed by 0232852 (t5537: move
http tests out to t5539, 2014-02-13). However, they were
accidentally re-added in 1ddb4d7 (Merge branch
'nd/upload-pack-shallow', 2014-03-21).

This looks like an error in manual conflict resolution.
Here's what happened:

  1. v1.9.0 shipped with the http tests in t5537.

  2. We realized that this caused problems, and built
 0232852 on top to move the tests to their own file.
 This fix made it into v1.9.1.

  3. We later had another fix in nd/upload-pack-shallow that
 also touched t5537. It was built directly on v1.9.0.

When we merged nd/upload-pack-shallow to master, we got a
conflict; it was built on a version with the http tests, but
we had since removed them. The correct resolution was to
drop the http tests and keep the new ones, but instead we
kept everything.

Signed-off-by: Jeff King 
---
This is a regression in running "make test" in v2.0.0 for people who do
not have apache installed, so it would be nice to hit maint for 2.0.1.

I had a very hard time finding the merge to blame, because the
combined-diff code is convinced this isn't an interesting hunk (because
we kept no content from the other side, as there was none to keep!). I
eventually tracked it down with "git log --first-parent -m t/t5537*".

And a final side note. If you retry the merge by:

  m=1ddb4d7
  git checkout $m^1
  git merge $m^2

you can see the resulting conflict is quite tricky to understand. You
can tell from the blank "ours" side that _something_ was removed
(otherwise there would not have been a conflict), but there is no way to
tell what, or that the same something is part of the "theirs" side.
Viewing it with diff3 conflict-style makes it much more obvious.

 t/t5537-fetch-shallow.sh | 28 
 1 file changed, 28 deletions(-)

diff --git a/t/t5537-fetch-shallow.sh b/t/t5537-fetch-shallow.sh
index be951a4..a980574 100755
--- a/t/t5537-fetch-shallow.sh
+++ b/t/t5537-fetch-shallow.sh
@@ -173,33 +173,6 @@ EOF
)
 '
 
-if test -n "$NO_CURL" -o -z "$GIT_TEST_HTTPD"; then
-   say 'skipping remaining tests, git built without http support'
-   test_done
-fi
-
-LIB_HTTPD_PORT=${LIB_HTTPD_PORT-'5537'}
-. "$TEST_DIRECTORY"/lib-httpd.sh
-start_httpd
-
-test_expect_success 'clone http repository' '
-   git clone --bare --no-local shallow 
"$HTTPD_DOCUMENT_ROOT_PATH/repo.git" &&
-   git clone $HTTPD_URL/smart/repo.git clone &&
-   (
-   cd clone &&
-   git fsck &&
-   git log --format=%s origin/master >actual &&
-   cat