summaryrefslogtreecommitdiff
path: root/git/test/test_db.py
diff options
context:
space:
mode:
authorSebastian Thiel <sebastian.thiel@icloud.com>2020-07-12 18:04:26 +0800
committerSebastian Thiel <sebastian.thiel@icloud.com>2020-07-12 18:04:26 +0800
commitd5f0d48745727684473cf583a002e2c31174de2d (patch)
tree2c499fe4cb719e8b95d74449363bc20cf280bcce /git/test/test_db.py
parentfe65adc904f3e3ebf74e983e91b4346d5bacc468 (diff)
downloadgitpython-d5f0d48745727684473cf583a002e2c31174de2d.tar.gz
Revert moving tests out of 'git' folder, related to #1030
Diffstat (limited to 'git/test/test_db.py')
-rw-r--r--git/test/test_db.py27
1 files changed, 27 insertions, 0 deletions
diff --git a/git/test/test_db.py b/git/test/test_db.py
new file mode 100644
index 00000000..bd16452d
--- /dev/null
+++ b/git/test/test_db.py
@@ -0,0 +1,27 @@
+# test_repo.py
+# Copyright (C) 2008, 2009 Michael Trier (mtrier@gmail.com) and contributors
+#
+# This module is part of GitPython and is released under
+# the BSD License: http://www.opensource.org/licenses/bsd-license.php
+from git.db import GitCmdObjectDB
+from git.exc import BadObject
+from git.test.lib import TestBase
+from git.util import bin_to_hex
+
+import os.path as osp
+
+
+class TestDB(TestBase):
+
+ def test_base(self):
+ gdb = GitCmdObjectDB(osp.join(self.rorepo.git_dir, 'objects'), self.rorepo.git)
+
+ # partial to complete - works with everything
+ hexsha = bin_to_hex(gdb.partial_to_complete_sha_hex("0.1.6"))
+ assert len(hexsha) == 40
+
+ assert bin_to_hex(gdb.partial_to_complete_sha_hex(hexsha[:20])) == hexsha
+
+ # fails with BadObject
+ for invalid_rev in ("0000", "bad/ref", "super bad"):
+ self.assertRaises(BadObject, gdb.partial_to_complete_sha_hex, invalid_rev)