def test_stdlib_methods_support(self, method): """ PrintLogger implements methods of stdlib loggers. """ sio = StringIO() getattr(PrintLogger(sio), method)('hello') assert 'hello' in sio.getvalue()
def test_writesOnlyMessageWithLF(self): sio = StringIO() PlainFileLogObserver(sio)({ 'system': 'some system', 'message': ('hello', ) }) assert 'hello\n' == sio.getvalue()
def _format_exception(exc_info): """ Prettyprint an `exc_info` tuple. Shamelessly stolen from stdlib's logging module. """ sio = StringIO() traceback.print_exception(exc_info[0], exc_info[1], exc_info[2], None, sio) s = sio.getvalue() sio.close() if s[-1:] == "\n": s = s[:-1] return s
def test_lock(self): """ Creating a logger adds a lock to WRITE_LOCKS. """ sio = StringIO() assert sio not in WRITE_LOCKS PrintLogger(sio) assert sio in WRITE_LOCKS
def _format_stack(frame): """ Pretty-print the stack of `frame` like logging would. """ sio = StringIO() sio.write('Stack (most recent call last):\n') traceback.print_stack(frame, file=sio) sinfo = sio.getvalue() if sinfo[-1] == '\n': sinfo = sinfo[:-1] sio.close() return sinfo
def test_writesOnlyMessageWithLF(self): sio = StringIO() PlainFileLogObserver(sio)({"system": "some system", "message": ("hello",)}) assert "hello\n" == sio.getvalue()
def test_writesOnlyMessageWithLF(self): sio = StringIO() PlainFileLogObserver(sio)({'system': 'some system', 'message': ('hello',)}) assert 'hello\n' == sio.getvalue()
def test_isLogObserver(self): assert ILogObserver.providedBy(PlainFileLogObserver(StringIO()))
def sio(): return StringIO()