9f82b2a6a7
Use 'test_atexit' to run cleanup commands to stop 'git-daemon' at the end of the test script or upon interrupt or failure, as it is shorter, simpler, and more robust than registering such cleanup commands in the trap on EXIT in the test scripts. Note that in 't5570-git-daemon.sh' the daemon is stopped and then re-started in the middle of the test script; take care that the cleanup functions to stop the daemon are only registered once. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: SZEDER Gábor <szeder.dev@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
41 lines
854 B
Bash
Executable File
41 lines
854 B
Bash
Executable File
#!/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
|
|
'
|
|
|
|
test_done
|