123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- """Tests for revision spec parsing."""
- from dulwich.objects import (
- Blob,
- )
- from dulwich.objectspec import (
- parse_object,
- parse_commit_range,
- )
- from dulwich.repo import MemoryRepo
- from dulwich.tests import (
- TestCase,
- )
- from dulwich.tests.utils import (
- build_commit_graph,
- skipIfPY3,
- )
- @skipIfPY3
- class ParseObjectTests(TestCase):
- """Test parse_object."""
- def test_nonexistent(self):
- r = MemoryRepo()
- self.assertRaises(KeyError, parse_object, r, "thisdoesnotexist")
- def test_blob_by_sha(self):
- r = MemoryRepo()
- b = Blob.from_string("Blah")
- r.object_store.add_object(b)
- self.assertEqual(b, parse_object(r, b.id))
- @skipIfPY3
- class ParseCommitRangeTests(TestCase):
- """Test parse_commit_range."""
- def test_nonexistent(self):
- r = MemoryRepo()
- self.assertRaises(KeyError, parse_commit_range, r, "thisdoesnotexist")
- def test_commit_by_sha(self):
- r = MemoryRepo()
- c1, c2, c3 = build_commit_graph(r.object_store, [[1], [2, 1],
- [3, 1, 2]])
- self.assertEqual([c1], list(parse_commit_range(r, c1.id)))
|