X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;f=t%2Fmoe%2Fpipeline.py;h=1b2d98a581fbf9e24a94120e273ec27a5d520900;hb=9f4eaf4234e6a7074fca72a3a9229d75035daac8;hp=bffca80ffc408e4a900a9c1835b3fe504bdfc3d9;hpb=a249fb797c925052e3ad692d887eb2004d66c455;p=moe.git diff --git a/t/moe/pipeline.py b/t/moe/pipeline.py index bffca80..1b2d98a 100644 --- a/t/moe/pipeline.py +++ b/t/moe/pipeline.py @@ -22,11 +22,20 @@ class Pipeline: self.name = name self.skip_to = skip_to - def insert(self, pri, name, fun): - "Insert callable `fun` to time `pri`, `name` is only informative." + def insert(self, pri, fun, desc='', name=None): + """Insert callable `fun` to time `pri`, + `desc` is optional description, + `name` is the "module.function" name, guessed by default. + """ assert(isinstance(pri, int)) assert(callable(fun)) - triple = (pri, name, fun) + if name is None: + name = fun.__module__ + '.' + fun.__name__ + if desc: + desc += ' ' + desc += '[' + name + ']' + + triple = (pri, desc, fun) pos = bisect.bisect(self.pipe, triple) if pos <= self.index: raise MoePipeError, "Pipeline %r at time %d: Insert cannot alter the past (time %d)" \ @@ -38,9 +47,10 @@ class Pipeline: Debugging dump of the pipe. Returns a list of lines. """ - l=["%s >>> Pipeline %s\n" % (prefix, self.name)] + l=["%s >>> Pipeline %s" % (prefix, self.name)] for pri, name, fun in self.pipe: - l.append("%s% 3d %s, %s\n" % (prefix, pri, name, fun)) + l.append("%s% 3d %s" % (prefix, pri, name)) + return l def run(self, *args, **kwargs): self.index = 0 @@ -48,14 +58,14 @@ class Pipeline: while self.index < len(self.pipe): (pri,name,fun) = self.pipe[self.index] if pri >= min_pri: - self.e.log.debug("Pipeline %r:%d running: %s\n" % (self.name, pri, name)) + self.e.log.debug("Pipeline %r:%d running: %s" % (self.name, pri, name)) try: fun(*args, **kwargs) except MoeAbortPipeline, err: min_pri = self.skip_to else: - self.e.log.debug("Pipeline %r:d skipping: %s\n" % (self.name, pri, name)) + self.e.log.debug("Pipeline %r:d skipping: %s" % (self.name, pri, name)) self.index += 1 self.index = -1 - self.e.log.debug("Pipeline %r finished\n" % (self.name)) + self.e.log.debug("Pipeline %r finished" % (self.name))