summaryrefslogtreecommitdiff
path: root/git/test/db/py/test_ref.py
diff options
context:
space:
mode:
Diffstat (limited to 'git/test/db/py/test_ref.py')
-rw-r--r--git/test/db/py/test_ref.py32
1 files changed, 15 insertions, 17 deletions
diff --git a/git/test/db/py/test_ref.py b/git/test/db/py/test_ref.py
index dfaf9644..4b5dd134 100644
--- a/git/test/db/py/test_ref.py
+++ b/git/test/db/py/test_ref.py
@@ -6,16 +6,17 @@ from git.test.db.lib import *
from git.db.py.ref import PureReferenceDB
from git.util import (
- NULL_BIN_SHA,
- hex_to_bin
- )
+ NULL_BIN_SHA,
+ hex_to_bin
+)
import os
-
+
+
class TestPureReferenceDB(TestDBBase):
-
+
needs_ro_repo = False
-
+
def make_alt_file(self, alt_path, alt_list):
"""Create an alternates file which contains the given alternates.
The list can be empty"""
@@ -23,40 +24,37 @@ class TestPureReferenceDB(TestDBBase):
for alt in alt_list:
alt_file.write(alt + "\n")
alt_file.close()
-
+
@with_rw_directory
def test_writing(self, path):
- NULL_BIN_SHA = '\0' * 20
-
+ NULL_BIN_SHA = '\0' * 20
+
alt_path = os.path.join(path, 'alternates')
rdb = PureReferenceDB(alt_path)
assert len(rdb.databases()) == 0
assert rdb.size() == 0
assert len(list(rdb.sha_iter())) == 0
-
+
# try empty, non-existing
assert not rdb.has_object(NULL_BIN_SHA)
-
-
+
# setup alternate file
# add two, one is invalid
own_repo_path = fixture_path('../../../.git/objects') # use own repo
self.make_alt_file(alt_path, [own_repo_path, "invalid/path"])
rdb.update_cache()
assert len(rdb.databases()) == 1
-
+
# we should now find a default revision of ours
git_sha = hex_to_bin("5aebcd5cb3340fb31776941d7e4d518a712a8655")
assert rdb.has_object(git_sha)
-
+
# remove valid
self.make_alt_file(alt_path, ["just/one/invalid/path"])
rdb.update_cache()
assert len(rdb.databases()) == 0
-
+
# add valid
self.make_alt_file(alt_path, [own_repo_path])
rdb.update_cache()
assert len(rdb.databases()) == 1
-
-