Browse Source
This test just checks that old clients can clone and fetch from a newer git-daemon. The opposite should also be true, but it's hard to test ancient versions of git-daemon because they lack basic options like "--listen". Note that we have to make a slight tweak to the lib-git-daemon helper from the regular tests, so that it starts the daemon with our correct git.a version. Signed-off-by: Jeff King <peff@peff.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>maint
Jeff King
8 years ago
committed by
Junio C Hamano
2 changed files with 43 additions and 1 deletions
@ -0,0 +1,41 @@
@@ -0,0 +1,41 @@
|
||||
#!/bin/sh |
||||
|
||||
VERSION_A=. |
||||
VERSION_B=v1.0.0 |
||||
|
||||
: ${LIB_GIT_DAEMON_PORT:=5500} |
||||
LIB_GIT_DAEMON_COMMAND='git.a daemon' |
||||
|
||||
test_description='clone and fetch by older client' |
||||
. ./interop-lib.sh |
||||
. "$TEST_DIRECTORY"/lib-git-daemon.sh |
||||
|
||||
start_git_daemon --export-all |
||||
|
||||
repo=$GIT_DAEMON_DOCUMENT_ROOT_PATH/repo |
||||
|
||||
test_expect_success "create repo served by $VERSION_A" ' |
||||
git.a init "$repo" && |
||||
git.a -C "$repo" commit --allow-empty -m one |
||||
' |
||||
|
||||
test_expect_success "clone with $VERSION_B" ' |
||||
git.b clone "$GIT_DAEMON_URL/repo" child && |
||||
echo one >expect && |
||||
git.a -C child log -1 --format=%s >actual && |
||||
test_cmp expect actual |
||||
' |
||||
|
||||
test_expect_success "fetch with $VERSION_B" ' |
||||
git.a -C "$repo" commit --allow-empty -m two && |
||||
( |
||||
cd child && |
||||
git.b fetch |
||||
) && |
||||
echo two >expect && |
||||
git.a -C child log -1 --format=%s FETCH_HEAD >actual && |
||||
test_cmp expect actual |
||||
' |
||||
|
||||
stop_git_daemon |
||||
test_done |
Loading…
Reference in new issue