def test_resetconsole_error(caplog): error_msg = "Doesn't work." def f(): raise Exception(error_msg) with utils.obj_in_module(callbacks, 'consolereset', f),\ caplog.at_level(logging.ERROR, logger='callbacks.logger'): caplog.clear() callbacks._consolereset() assert len(caplog.record_tuples) > 0 for x in caplog.record_tuples: assert x == ('rpy2.rinterface_lib.callbacks', logging.ERROR, (callbacks._RESETCONSOLE_EXCEPTION_LOG % error_msg))
def testSetResetConsole(): def make_callback(): reset = 0 def f(): nonlocal reset reset += 1 return f f = make_callback() with utils.obj_in_module(callbacks, 'consolereset', f): callbacks._consolereset() assert f.__closure__[0].cell_contents == 1