All pastes #22022 Raw Edit

Untitled

public text v1 · immutable
#22022 ·published 2005-09-03 03:48 UTC
rendered paste body
#draft TestCase.run code that does not use wait()

def run(self, test_result):
  def afterTearDown(deferred, result):
    if result.error(self.FailureClass):
      test_result.addFailure(self, result.error())
    elif result.error():
      test_result.addError(self, result.error())
    else:
      test_result.addSuccess():
    test_tesult.stopTest(self)
    self.__nextTest.fire()

  def afterMethod(deferred, result):
    if result.error(self.FailureClass):
      test_result.addFailure(self, result.error())
      self._passed = False
    elif result.error():
      test_result.addError(self, result.error())
      self._passed = False
    else:
      self._passed = True
    deferred = self.tearDown()
    deferred.addCallbacks(afterTearDown, afterTearDown)
    
  def afterSetup(deferred, result):
    if result.error():
      test_result.addError(self, result.error())
    try:
      deferred = self._testfunc()
      deferred.addCallbacks(afterMethod, afterMethod)
    except Exception:
      ...