test_repository.py 1.1 KB

123456789101112131415161718192021222324252627282930313233343536
  1. import os
  2. import unittest
  3. from git.repository import Repository
  4. class RepositoryTests(unittest.TestCase):
  5. def open_repo(self, name):
  6. return Repository(os.path.join(os.path.dirname(__file__),
  7. 'data/repos', name, '.git'))
  8. def test_simple_props(self):
  9. r = self.open_repo('a')
  10. basedir = os.path.join(os.path.dirname(__file__), 'data/repos/a/.git')
  11. self.assertEqual(r.basedir(), basedir)
  12. self.assertEqual(r.object_dir(), os.path.join(basedir, 'objects'))
  13. def test_ref(self):
  14. r = self.open_repo('a')
  15. self.assertEqual(r.ref('master'),
  16. 'a90fa2d900a17e99b433217e988c4eb4a2e9a097')
  17. def test_head(self):
  18. r = self.open_repo('a')
  19. self.assertEqual(r.head(), 'a90fa2d900a17e99b433217e988c4eb4a2e9a097')
  20. def test_get_object(self):
  21. r = self.open_repo('a')
  22. obj = r.get_object(r.head())
  23. self.assertEqual(obj._type, 'commit')
  24. def test_get_object_non_existant(self):
  25. r = self.open_repo('a')
  26. obj = r.get_object('b91fa4d900g17e99b433218e988c4eb4a3e9a097')
  27. self.assertEqual(obj, None)