def test_appropriate_logger_used(self, getLogger): event_type, event_name = 'test_type', 'test_name' event = reporting.ReportingEvent(event_type, event_name, 'description') reporting.LogHandler().publish_event(event) self.assertEqual( [mock.call( 'cloudinit.reporting.{0}.{1}'.format(event_type, event_name))], getLogger.call_args_list)
def test_as_dict(self): event_type, name, desc = 'test_type', 'test_name', 'test_desc' event = reporting.ReportingEvent(event_type, name, desc) self.assertEqual( { 'event_type': event_type, 'name': name, 'description': desc }, event.as_dict())
def test_as_string(self): event_type, name, description = 'test_type', 'test_name', 'test_desc' event = reporting.ReportingEvent(event_type, name, description) expected_string_representation = ': '.join( [event_type, name, description]) self.assertEqual(expected_string_representation, event.as_string())
def test_log_message_uses_event_as_string(self, getLogger): event = reporting.ReportingEvent('type', 'name', 'description') reporting.LogHandler().publish_event(event) self.assertIn(event.as_string(), getLogger.return_value.info.call_args[0][0])
def test_single_log_message_at_info_published(self, getLogger): event = reporting.ReportingEvent('type', 'name', 'description') reporting.LogHandler().publish_event(event) self.assertEqual(1, getLogger.return_value.info.call_count)