浏览代码

Add test for overwriting SymrefLoop.

Jelmer Vernooij 2 年之前
父节点
当前提交
d97210e4b3
共有 1 个文件被更改,包括 8 次插入0 次删除
  1. 8 0
      dulwich/tests/test_refs.py

+ 8 - 0
dulwich/tests/test_refs.py

@@ -521,6 +521,14 @@ class DiskRefsContainerTests(RefsContainerTests, TestCase):
         )
         )
         self.assertRaises(SymrefLoop, self._refs.follow, b"refs/heads/loop")
         self.assertRaises(SymrefLoop, self._refs.follow, b"refs/heads/loop")
 
 
+    def test_set_overwrite_loop(self):
+        self.assertRaises(SymrefLoop, self._refs.follow, b"refs/heads/loop")
+        self._refs[b'refs/heads/loop'] = (
+            b"42d06bd4b77fed026b154d16493e5deab78f02ec")
+        self.assertEqual(
+            ([b'refs/heads/loop'], b'42d06bd4b77fed026b154d16493e5deab78f02ec'),
+            self._refs.follow(b"refs/heads/loop"))
+
     def test_delitem(self):
     def test_delitem(self):
         RefsContainerTests.test_delitem(self)
         RefsContainerTests.test_delitem(self)
         ref_file = os.path.join(self._refs.path, b"refs", b"heads", b"master")
         ref_file = os.path.join(self._refs.path, b"refs", b"heads", b"master")