summaryrefslogtreecommitdiff
path: root/git/db/cmd
diff options
context:
space:
mode:
authorSebastian Thiel <byronimo@gmail.com>2011-05-30 13:06:37 +0200
committerSebastian Thiel <byronimo@gmail.com>2011-05-30 13:06:37 +0200
commit024adf37acddd6a5d8293b6b5d15795c59a142c0 (patch)
tree3610b99168f984acb0eefe3a995295f4d3b1d096 /git/db/cmd
parent112bb1672d6b28f203e7839e320b985486636800 (diff)
downloadgitpython-024adf37acddd6a5d8293b6b5d15795c59a142c0.tar.gz
Fixed tests far enough to allow basic repository tests to be applied to any of the new database types. This reduces code duplication to the mere minimum, but allows custom tests to be added on top easily and flexibly
Diffstat (limited to 'git/db/cmd')
-rw-r--r--git/db/cmd/__init__.py6
-rw-r--r--git/db/cmd/base.py2
-rw-r--r--git/db/cmd/complex.py20
3 files changed, 20 insertions, 8 deletions
diff --git a/git/db/cmd/__init__.py b/git/db/cmd/__init__.py
index 968d8c11..8a681e42 100644
--- a/git/db/cmd/__init__.py
+++ b/git/db/cmd/__init__.py
@@ -1,2 +1,4 @@
-
-from complex import *
+# 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
diff --git a/git/db/cmd/base.py b/git/db/cmd/base.py
index 0025e9b0..6a2473a3 100644
--- a/git/db/cmd/base.py
+++ b/git/db/cmd/base.py
@@ -15,7 +15,7 @@ from git.util import (
bin_to_hex,
hex_to_bin
)
-from git.db.compat import RepoCompatInterface
+from git.db.compat import RepoCompatibilityInterface
from git.util import RemoteProgress
from git.db.interface import FetchInfo as GitdbFetchInfo
from git.db.interface import PushInfo as GitdbPushInfo
diff --git a/git/db/cmd/complex.py b/git/db/cmd/complex.py
index 9c26a8fa..3e6804f5 100644
--- a/git/db/cmd/complex.py
+++ b/git/db/cmd/complex.py
@@ -1,17 +1,27 @@
"""Module with our own git implementation - it uses the git command"""
-from git.db.compat import RepoCompatInterface
+from git.db.compat import RepoCompatibilityInterface
from git.db.py.complex import PureGitDB
from base import *
-__all__ = ['GitCmdDB', 'CmdCompatibilityGitDB']
+__all__ = ['GitCmdDB', 'CmdCompatibilityGitDB', 'CmdPartialGitDB']
-class CmdGitDB( GitCommandMixin, CmdObjectDBRMixin, CmdTransportMixin,
- CmdHighLevelRepository, PureGitDB):
+class CmdPartialGitDB( GitCommandMixin, CmdObjectDBRMixin, CmdTransportMixin,
+ CmdHighLevelRepository ):
+ """Utility repository which only partially implements all required methods.
+ It cannot be reliably used alone, but is provided to allow mixing it with other
+ implementations"""
pass
-class CmdCompatibilityGitDB(CmdGitDB, RepoCompatInterface):
+
+class CmdGitDB(CmdPartialGitDB, PureGitDB):
+ """A database which fills in its missing implementation using the pure python
+ implementation"""
+ pass
+
+
+class CmdCompatibilityGitDB(CmdGitDB, RepoCompatibilityInterface):
"""Command git database with the compatabilty interface added for 0.3x code"""