blob: a40666e192848a79182b5f52f46131faa54b7fea [file] [log] [blame]
import sys
import os
from paste.exceptions.reporter import *
from paste.exceptions import collector
def setup_file(fn, content=None):
dir = os.path.join(os.path.dirname(__file__), 'reporter_output')
fn = os.path.join(dir, fn)
if os.path.exists(dir):
if os.path.exists(fn):
os.unlink(fn)
else:
os.mkdir(dir)
if content is not None:
f = open(fn, 'wb')
f.write(content)
f.close()
return fn
def test_logger():
fn = setup_file('test_logger.log')
rep = LogReporter(
filename=fn,
show_hidden_frames=False)
try:
int('a')
except:
exc_data = collector.collect_exception(*sys.exc_info())
else:
assert 0
rep.report(exc_data)
content = open(fn).read()
assert len(content.splitlines()) == 4, len(content.splitlines())
assert 'ValueError' in content
assert 'int' in content
assert 'test_reporter.py' in content
assert 'test_logger' in content
try:
1 / 0
except:
exc_data = collector.collect_exception(*sys.exc_info())
else:
assert 0
rep.report(exc_data)
content = open(fn).read()
print(content)
assert len(content.splitlines()) == 8
assert 'ZeroDivisionError' in content