diff options
Diffstat (limited to 'git/test/performance/lib.py')
-rw-r--r-- | git/test/performance/lib.py | 49 |
1 files changed, 23 insertions, 26 deletions
diff --git a/git/test/performance/lib.py b/git/test/performance/lib.py index 6beff617..985e3637 100644 --- a/git/test/performance/lib.py +++ b/git/test/performance/lib.py @@ -3,6 +3,7 @@ import os from git.test.lib import * import shutil import tempfile +import logging from git.db import ( GitCmdObjectDB, @@ -18,18 +19,6 @@ k_env_git_repo = "GIT_PYTHON_TEST_GIT_REPO_BASE" #} END invariants -#{ Utilities -def resolve_or_fail(env_var): - """:return: resolved environment variable or raise EnvironmentError""" - try: - return os.environ[env_var] - except KeyError: - raise EnvironmentError("Please set the %r envrionment variable and retry" % env_var) - # END exception handling - -#} END utilities - - #{ Base Classes class TestBigRepoR(TestBase): @@ -51,12 +40,19 @@ class TestBigRepoR(TestBase): head_sha_50 = '32347c375250fd470973a5d76185cac718955fd5' #} END invariants - @classmethod - def setUp(cls): - super(TestBigRepoR, cls).setUp() - repo_path = resolve_or_fail(k_env_git_repo) - cls.gitrorepo = Repo(repo_path, odbt=GitCmdObjectDB) - cls.puregitrorepo = Repo(repo_path, odbt=GitDB) + def setUp(self): + try: + super(TestBigRepoR, self).setUp() + except AttributeError: + pass + + repo_path = os.environ.get(k_env_git_repo) + if repo_path is None: + logging.info("You can set the %s environment variable to a .git repository of your choice - defaulting to the gitpython repository", k_env_git_repo) + repo_path = os.path.dirname(__file__) + # end set some repo path + self.gitrorepo = Repo(repo_path, odbt=GitCmdObjectDB) + self.puregitrorepo = Repo(repo_path, odbt=GitDB) class TestBigRepoRW(TestBigRepoR): @@ -65,16 +61,17 @@ class TestBigRepoRW(TestBigRepoR): Provides ``self.gitrwrepo`` and ``self.puregitrwrepo``""" - @classmethod - def setUp(cls): - super(TestBigRepoRW, cls).setUp() + def setUp(self): + try: + super(TestBigRepoRW, self).setUp() + except AttributeError: + pass dirname = tempfile.mktemp() os.mkdir(dirname) - cls.gitrwrepo = cls.gitrorepo.clone(dirname, shared=True, bare=True, odbt=GitCmdObjectDB) - cls.puregitrwrepo = Repo(dirname, odbt=GitDB) + self.gitrwrepo = self.gitrorepo.clone(dirname, shared=True, bare=True, odbt=GitCmdObjectDB) + self.puregitrwrepo = Repo(dirname, odbt=GitDB) - @classmethod - def tearDownAll(cls): - shutil.rmtree(cls.gitrwrepo.working_dir) + def tearDown(self): + shutil.rmtree(self.gitrwrepo.working_dir) #} END base classes |