summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--morphlib/app.py4
-rw-r--r--morphlib/morphologyfactory.py9
-rw-r--r--morphlib/morphologyfactory_tests.py8
3 files changed, 7 insertions, 14 deletions
diff --git a/morphlib/app.py b/morphlib/app.py
index c3c9c970..c4d45aae 100644
--- a/morphlib/app.py
+++ b/morphlib/app.py
@@ -350,8 +350,8 @@ class Morph(cliapp.Application):
system_filenames, lrc, rrc, update=True,
visit=lambda rn, rf, fn, arf, m: None,
definitions_original_ref=None):
- morph_factory = morphlib.morphologyfactory.MorphologyFactory(lrc, rrc,
- self)
+ morph_factory = morphlib.morphologyfactory.MorphologyFactory(
+ lrc, rrc, self.status)
definitions_queue = collections.deque(system_filenames)
chunk_in_definitions_repo_queue = []
chunk_in_source_repo_queue = []
diff --git a/morphlib/morphologyfactory.py b/morphlib/morphologyfactory.py
index b0a0528d..dad7238e 100644
--- a/morphlib/morphologyfactory.py
+++ b/morphlib/morphologyfactory.py
@@ -41,14 +41,13 @@ class MorphologyFactory(object):
'''A way of creating morphologies which will provide a default'''
- def __init__(self, local_repo_cache, remote_repo_cache=None, app=None):
+ def __init__(self, local_repo_cache, remote_repo_cache=None,
+ status_cb=None):
self._lrc = local_repo_cache
self._rrc = remote_repo_cache
- self._app = app
- def status(self, *args, **kwargs): # pragma: no cover
- if self._app is not None:
- self._app.status(*args, **kwargs)
+ null_status_function = lambda **kwargs: None
+ self.status = status_cb or null_status_function
def get_morphology(self, reponame, sha1, filename):
morph_name = os.path.splitext(os.path.basename(filename))[0]
diff --git a/morphlib/morphologyfactory_tests.py b/morphlib/morphologyfactory_tests.py
index 52d5f598..41d06480 100644
--- a/morphlib/morphologyfactory_tests.py
+++ b/morphlib/morphologyfactory_tests.py
@@ -144,19 +144,13 @@ class FakeLocalRepoCache(object):
return self.lr
-class FakeApp(object):
-
- def status(self, **kwargs):
- pass
-
-
class MorphologyFactoryTests(unittest.TestCase):
def setUp(self):
self.lr = FakeLocalRepo()
self.lrc = FakeLocalRepoCache(self.lr)
self.rrc = FakeRemoteRepoCache()
- self.mf = MorphologyFactory(self.lrc, self.rrc, app=FakeApp())
+ self.mf = MorphologyFactory(self.lrc, self.rrc)
self.lmf = MorphologyFactory(self.lrc, None)
def nolocalfile(self, *args):