""" | |
Test the logger module. | |
""" | |
# Author: Gael Varoquaux <gael dot varoquaux at normalesup dot org> | |
# Copyright (c) 2009 Gael Varoquaux | |
# License: BSD Style, 3 clauses. | |
import re | |
from joblib.logger import PrintTime | |
def test_print_time(tmpdir, capsys): | |
# A simple smoke test for PrintTime. | |
logfile = tmpdir.join("test.log").strpath | |
print_time = PrintTime(logfile=logfile) | |
print_time("Foo") | |
# Create a second time, to smoke test log rotation. | |
print_time = PrintTime(logfile=logfile) | |
print_time("Foo") | |
# And a third time | |
print_time = PrintTime(logfile=logfile) | |
print_time("Foo") | |
out_printed_text, err_printed_text = capsys.readouterr() | |
# Use regexps to be robust to time variations | |
match = r"Foo: 0\..s, 0\..min\nFoo: 0\..s, 0..min\nFoo: " + r".\..s, 0..min\n" | |
if not re.match(match, err_printed_text): | |
raise AssertionError("Excepted %s, got %s" % (match, err_printed_text)) | |