diff options
| author | Sebastian Thiel <byronimo@gmail.com> | 2011-05-05 19:43:22 +0200 |
|---|---|---|
| committer | Sebastian Thiel <byronimo@gmail.com> | 2011-05-05 19:43:22 +0200 |
| commit | 4177eefd7bdaea96a529b00ba9cf751924ede202 (patch) | |
| tree | 958614c21bd97267e0d06f71bb18d4215ddd87b5 /git/test/db/test_loose.py | |
| parent | f54546a9b857ae728033482f3c5c18c9ff3393c3 (diff) | |
| download | GitPython-4177eefd7bdaea96a529b00ba9cf751924ede202.tar.gz GitPython-4177eefd7bdaea96a529b00ba9cf751924ede202.zip | |
Added all code from gitdb to gitpython. Next is to make it generally work. Then the tests will need some work
Diffstat (limited to 'git/test/db/test_loose.py')
| -rw-r--r-- | git/test/db/test_loose.py | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/git/test/db/test_loose.py b/git/test/db/test_loose.py new file mode 100644 index 00000000..b1d33fd6 --- /dev/null +++ b/git/test/db/test_loose.py @@ -0,0 +1,34 @@ +# Copyright (C) 2010, 2011 Sebastian Thiel (byronimo@gmail.com) and contributors +# +# This module is part of GitDB and is released under +# the New BSD License: http://www.opensource.org/licenses/bsd-license.php +from lib import * +from gitdb.db.py import PureLooseObjectODB +from gitdb.exc import BadObject +from gitdb.util import bin_to_hex + +class TestLooseDB(TestDBBase): + + @with_rw_directory + def test_basics(self, path): + ldb = PureLooseObjectODB(path) + + # write data + self._assert_object_writing(ldb) + self._assert_object_writing_async(ldb) + + # verify sha iteration and size + shas = list(ldb.sha_iter()) + assert shas and len(shas[0]) == 20 + + assert len(shas) == ldb.size() + + # verify find short object + long_sha = bin_to_hex(shas[-1]) + for short_sha in (long_sha[:20], long_sha[:5]): + assert bin_to_hex(ldb.partial_to_complete_sha_hex(short_sha)) == long_sha + # END for each sha + + self.failUnlessRaises(BadObject, ldb.partial_to_complete_sha_hex, '0000') + # raises if no object could be foudn + |
