Modify the interface between LogSources and LogSinks such that log
messages are keyed dictionaries as opposed to tuples.
This commit is contained in:
parent
a1165e3f90
commit
6add99aeef
|
@ -288,7 +288,12 @@ class LogSource(object):
|
||||||
|
|
||||||
self.log_sinks.append(log_sink)
|
self.log_sinks.append(log_sink)
|
||||||
for message in self.buffered_messages:
|
for message in self.buffered_messages:
|
||||||
log_sink.log(message)
|
log_sink.log({
|
||||||
|
'log_level': message[0],
|
||||||
|
'time': message[1],
|
||||||
|
'name': message[2],
|
||||||
|
'message': message[3]
|
||||||
|
})
|
||||||
|
|
||||||
def log_debug(self, message, name=None):
|
def log_debug(self, message, name=None):
|
||||||
"""Logs a message at DEBUG log level.
|
"""Logs a message at DEBUG log level.
|
||||||
|
@ -388,7 +393,12 @@ class LogSource(object):
|
||||||
"""
|
"""
|
||||||
if self.log_sinks:
|
if self.log_sinks:
|
||||||
for log_sink in self.log_sinks:
|
for log_sink in self.log_sinks:
|
||||||
log_sink.log(message)
|
log_sink.log({
|
||||||
|
'log_level': message[0],
|
||||||
|
'time': message[1],
|
||||||
|
'name': message[2],
|
||||||
|
'message': message[3]
|
||||||
|
})
|
||||||
else:
|
else:
|
||||||
self.buffered_messages.append(message)
|
self.buffered_messages.append(message)
|
||||||
|
|
||||||
|
|
|
@ -16,6 +16,14 @@ from anvil import enums
|
||||||
from anvil import util
|
from anvil import util
|
||||||
|
|
||||||
|
|
||||||
|
def _message(log_level, time, name, message):
|
||||||
|
return {
|
||||||
|
'log_level': log_level,
|
||||||
|
'time': time,
|
||||||
|
'name': name,
|
||||||
|
'message': message
|
||||||
|
}
|
||||||
|
|
||||||
class WorkUnitTest(unittest2.TestCase):
|
class WorkUnitTest(unittest2.TestCase):
|
||||||
|
|
||||||
def testRecordWorkUnits(self):
|
def testRecordWorkUnits(self):
|
||||||
|
@ -220,10 +228,10 @@ class LogSourceTest(unittest2.TestCase):
|
||||||
log_sink = MagicMock()
|
log_sink = MagicMock()
|
||||||
log_source.add_log_sink(log_sink)
|
log_source.add_log_sink(log_sink)
|
||||||
expected = [
|
expected = [
|
||||||
call.log((enums.LogLevel.DEBUG, 1, 'bar', '[DEBUG] debug')),
|
call.log(_message(enums.LogLevel.DEBUG, 1, 'bar', '[DEBUG] debug')),
|
||||||
call.log((enums.LogLevel.INFO, 2, 'bar', '[INFO] info')),
|
call.log(_message(enums.LogLevel.INFO, 2, 'bar', '[INFO] info')),
|
||||||
call.log((enums.LogLevel.WARNING, 3, 'foo', '[WARNING] warning')),
|
call.log(_message(enums.LogLevel.WARNING, 3, 'foo', '[WARNING] warning')),
|
||||||
call.log((enums.LogLevel.ERROR, 4, 'foo', '[ERROR] error'))
|
call.log(_message(enums.LogLevel.ERROR, 4, 'foo', '[ERROR] error'))
|
||||||
]
|
]
|
||||||
self.assertEquals(expected, log_sink.mock_calls)
|
self.assertEquals(expected, log_sink.mock_calls)
|
||||||
|
|
||||||
|
@ -232,7 +240,7 @@ class LogSourceTest(unittest2.TestCase):
|
||||||
mock_timer.side_effect = [5]
|
mock_timer.side_effect = [5]
|
||||||
log_source.log_debug('debug', 'bar')
|
log_source.log_debug('debug', 'bar')
|
||||||
expected = [
|
expected = [
|
||||||
call.log((enums.LogLevel.DEBUG, 5, 'bar', '[DEBUG] debug'))
|
call.log(_message(enums.LogLevel.DEBUG, 5, 'bar', '[DEBUG] debug'))
|
||||||
]
|
]
|
||||||
self.assertEquals(expected, log_sink.mock_calls)
|
self.assertEquals(expected, log_sink.mock_calls)
|
||||||
|
|
||||||
|
@ -247,7 +255,7 @@ class LogSourceTest(unittest2.TestCase):
|
||||||
mock_timer.side_effect = [1]
|
mock_timer.side_effect = [1]
|
||||||
child_source.log_debug('debug', 'foo')
|
child_source.log_debug('debug', 'foo')
|
||||||
expected = [
|
expected = [
|
||||||
call.log((enums.LogLevel.DEBUG, 1, 'foo', '[DEBUG] debug'))
|
call.log(_message(enums.LogLevel.DEBUG, 1, 'foo', '[DEBUG] debug'))
|
||||||
]
|
]
|
||||||
self.assertEquals(expected, log_sink.mock_calls)
|
self.assertEquals(expected, log_sink.mock_calls)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue