def test_failer_immediate(): failer = testutil.Failer(fail=lambda e: True, message="Expected failure.", engine=None) with raises(AssertionError): failer.on_idle(Idle(0.0), lambda x: None)
def test_failer(): failer = testutil.Failer(fail=lambda e: True, message="Expected failure.") with raises(AssertionError): failer.activate(None) failer = testutil.Failer(fail=lambda e: False, message="Should time out", run_time=0.1) last_tick = monotonic() run_time = 0 with raises(AssertionError) as e: while True: failer.activate(None) tick = monotonic() run_time += tick - last_tick last_tick = tick if run_time >= 0.11: break assert e.value.args[0] == "Test ran too long."
def test_failer_timed(): failer = testutil.Failer(fail=lambda e: False, message="Should time out", run_time=0.1, engine=None) start_time = monotonic() while True: try: failer.__event__(Idle(0.0), lambda x: None) except AssertionError as e: if e.args[0] == "Test ran too long.": end_time = monotonic() break else: raise run_time = end_time - start_time assert abs(run_time - 0.1) <= 0.011