Просмотр исходного кода

add a unittest for is_per_worktree_ref

Saugat Pachhai (सौगात) 5 месяцев назад
Родитель
Сommit
6cc749a793
1 измененных файлов с 20 добавлено и 0 удалено
  1. 20 0
      tests/test_refs.py

+ 20 - 0
tests/test_refs.py

@@ -36,6 +36,7 @@ from dulwich.refs import (
     SymrefLoop,
     _split_ref_line,
     check_ref_format,
+    is_per_worktree_ref,
     parse_remote_ref,
     parse_symref_value,
     read_packed_refs,
@@ -839,6 +840,25 @@ class DiskRefsContainerTests(RefsContainerTests, TestCase):
         self._refs[ref_name] = ref_value
 
 
+class IsPerWorktreeRefsTests(TestCase):
+    def test(self) -> None:
+        cases = [
+            (b"HEAD", True),
+            (b"refs/bisect/good", True),
+            (b"refs/worktree/foo", True),
+            (b"refs/rewritten/onto", True),
+            (b"refs/stash", False),
+            (b"refs/heads/main", False),
+            (b"refs/tags/v1.0", False),
+            (b"refs/remotes/origin/main", False),
+            (b"refs/custom/foo", False),
+            (b"refs/replace/aaaaaa", False),
+        ]
+        for ref, expected in cases:
+            with self.subTest(ref=ref, expected=expected):
+                self.assertEqual(is_per_worktree_ref(ref), expected)
+
+
 class DiskRefsContainerWorktreeRefsTest(TestCase):
     def setUp(self) -> None:
         # Create temporary directories