From 754b5b4a4c9c63e894ff15d9fc8383fc2a390532 Mon Sep 17 00:00:00 2001 From: Stefan Sperling Date: Wed, 30 Oct 2024 15:40:39 +0000 Subject: [PATCH] add compat test case which verifies behaviour with a non-default symref --- tests/compat/test_client.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/tests/compat/test_client.py b/tests/compat/test_client.py index 8b22a3d8f..8c54a1ae7 100644 --- a/tests/compat/test_client.py +++ b/tests/compat/test_client.py @@ -234,6 +234,21 @@ def test_fetch_pack(self): dest.refs.set_if_equals(r[0], None, r[1]) self.assertDestEqualsSrc() + def test_fetch_pack_with_nondefault_symref(self): + c = self._client() + src = repo.Repo(os.path.join(self.gitroot, "server_new.export")) + src.refs.add_if_new(b"refs/heads/main", src.refs[b"refs/heads/master"]) + src.refs.set_symbolic_ref(b"HEAD", b"refs/heads/main") + with repo.Repo(os.path.join(self.gitroot, "dest")) as dest: + result = c.fetch(self._build_path("/server_new.export"), dest) + self.assertEqual( + {b"HEAD": b"refs/heads/main"}, + result.symrefs, + ) + for r in result.refs.items(): + dest.refs.set_if_equals(r[0], None, r[1]) + self.assertDestEqualsSrc() + def test_fetch_pack_depth(self): c = self._client() with repo.Repo(os.path.join(self.gitroot, "dest")) as dest: