Merge branch 'tb/filter-alternate-refs'
[gitweb.git] / t / t5702-protocol-v2.sh
index 11a84efffeb55940f1800d5552b7895d5995b9c2..8360188c01037abe45ef701561fd19ddac6e7ecb 100755 (executable)
@@ -79,6 +79,19 @@ test_expect_success 'fetch with git:// using protocol v2' '
        grep "fetch< version 2" log
 '
 
+test_expect_success 'fetch by hash without tag following with protocol v2 does not list refs' '
+       test_when_finished "rm -f log" &&
+
+       test_commit -C "$daemon_parent" two_a &&
+       git -C "$daemon_parent" rev-parse two_a >two_a_hash &&
+
+       GIT_TRACE_PACKET="$(pwd)/log" git -C daemon_child -c protocol.version=2 \
+               fetch --no-tags origin $(cat two_a_hash) &&
+
+       grep "fetch< version 2" log &&
+       ! grep "fetch> command=ls-refs" log
+'
+
 test_expect_success 'pull with git:// using protocol v2' '
        test_when_finished "rm -f log" &&
 
@@ -286,6 +299,10 @@ test_expect_success 'dynamically fetch missing object' '
        grep "version 2" trace
 '
 
+test_expect_success 'when dynamically fetching missing object, do not list refs' '
+       ! grep "git> command=ls-refs" trace
+'
+
 test_expect_success 'partial fetch' '
        rm -rf client "$(pwd)/trace" &&
        git init client &&
@@ -334,7 +351,7 @@ test_expect_success 'even with handcrafted request, filter does not work if not
        git -C server config uploadpack.allowfilter 0 &&
 
        # Custom request that tries to filter even though it is not advertised.
-       test-pkt-line pack >in <<-EOF &&
+       test-tool pkt-line pack >in <<-EOF &&
        command=fetch
        0001
        want $(git -C server rev-parse master)