diff -r df0b2de62cec -r 9af22f2c0c4c devtools/__init__.py --- a/devtools/__init__.py Thu Oct 21 09:34:21 2010 +0200 +++ b/devtools/__init__.py Fri Oct 22 13:10:27 2010 +0200 @@ -111,7 +111,14 @@ }), )) - def __init__(self, appid, log_threshold=logging.CRITICAL+10): + def __init__(self, appid, apphome=None, log_threshold=logging.CRITICAL+10): + # must be set before calling parent __init__ + if apphome is None: + if exists(self.appid): + apphome = abspath(self.appid) + else: # cube test + apphome = abspath('..') + self._apphome = apphome ServerConfiguration.__init__(self, appid) self.init_log(log_threshold, force=True) # need this, usually triggered by cubicweb-ctl @@ -121,10 +128,7 @@ @property def apphome(self): - if exists(self.appid): - return abspath(self.appid) - # cube test - return abspath('..') + return self._apphome appdatahome = apphome def load_configuration(self): @@ -196,8 +200,10 @@ # XXX merge with BaseApptestConfiguration ? class ApptestConfiguration(BaseApptestConfiguration): - def __init__(self, appid, log_threshold=logging.CRITICAL, sourcefile=None): - BaseApptestConfiguration.__init__(self, appid, log_threshold=log_threshold) + def __init__(self, appid, apphome=None, + log_threshold=logging.CRITICAL, sourcefile=None): + BaseApptestConfiguration.__init__(self, appid, apphome, + log_threshold=log_threshold) self.init_repository = sourcefile is None self.sourcefile = sourcefile