X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;f=t%2Fmoe%2Fstatus.py;h=518fb1bc5dcb2089f3496c920c354bd707e69221;hb=5ad8b4f69ab4fdf4d75f5a56fc72ef2988f1da1f;hp=936659e6408a907650d8aea60887e6ec5ded5370;hpb=919b5d82c3dfeeec89ecb753d64c703b83c6f156;p=eval.git diff --git a/t/moe/status.py b/t/moe/status.py index 936659e..518fb1b 100644 --- a/t/moe/status.py +++ b/t/moe/status.py @@ -26,6 +26,9 @@ class MoeStatus: def __setitem__(self, k, v): self.stat[k] = v + def keys(self): + return self.stat.keys() + def get_list(self, k): m = self.stat if not m.has_key(k): @@ -34,6 +37,21 @@ class MoeStatus: m[k] = [m[k]] return m[k] + def str_lines(self, indent=""): + "Return a list of lines, `indent` is indent prefix." + l = [] + for k,v in self.stat.items(): + if type(v) == types.ListType: vals = v + else: vals = [v] + for w in vals: + if isinstance(w, MoeStatus): + l.append("\t" * indent + k + "(\n") + l.extend(self.str_lines(indent+" ")) + l.append("\t" * indent + ")\n") + else: + l.append("\t" * indent + k + ":" + str(w) + "\n") + return l + def write(self, file=None, name=None): if file is None: if name is not None: