[tor-commits] [ooni-probe/master] Do not attach both an errback and callback in runner for better debugging
art at torproject.org
art at torproject.org
Sun Dec 9 00:06:26 UTC 2012
commit 45a1e07dbd226cc35919e78c97267dfca7e357a9
Author: Arturo Filastò <art at fuffa.org>
Date: Sun Dec 9 00:49:30 2012 +0100
Do not attach both an errback and callback in runner for better debugging
* Call finish on the yaml reporter once it has done it's run
---
ooni/oonicli.py | 8 +++++++-
ooni/reporter.py | 2 +-
ooni/runner.py | 1 +
3 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/ooni/oonicli.py b/ooni/oonicli.py
index 44334f0..b06bde9 100644
--- a/ooni/oonicli.py
+++ b/ooni/oonicli.py
@@ -87,6 +87,10 @@ def testsEnded(*arg, **kw):
try: reactor.stop()
except: pass
+def testFailed(failure):
+ log.err("Failed in running a test inside a test list")
+ failure.printTraceback()
+
def runTestList(none, test_list):
"""
none: is always None.
@@ -102,7 +106,8 @@ def runTestList(none, test_list):
deck_dl.append(d1)
d2 = defer.DeferredList(deck_dl)
- d2.addBoth(testsEnded)
+ d2.addCallback(testsEnded)
+ d2.addErrback(testFailed)
# Print every 5 second the list of current tests running
l = task.LoopingCall(updateStatusBar)
@@ -110,6 +115,7 @@ def runTestList(none, test_list):
return d2
def errorRunningTests(failure):
+ log.err("There was an error in running a test")
failure.printTraceback()
def run():
diff --git a/ooni/reporter.py b/ooni/reporter.py
index b5de29f..728c3f5 100644
--- a/ooni/reporter.py
+++ b/ooni/reporter.py
@@ -171,7 +171,7 @@ class OReporter(object):
"""
raise NotImplemented
- def finish():
+ def finish(self):
pass
def testDone(self, test, test_name):
diff --git a/ooni/runner.py b/ooni/runner.py
index 77d7e7d..4ebfa0b 100644
--- a/ooni/runner.py
+++ b/ooni/runner.py
@@ -451,6 +451,7 @@ def runTestCases(test_cases, options, cmd_line_options):
except Exception:
log.exception("Problem in running test")
+ yaml_reporter.finish()
class UnableToStartTor(Exception):
pass
More information about the tor-commits
mailing list