From 6bf05b68a99daefbb7ce38e7f5000c09e4f7f6a2 Mon Sep 17 00:00:00 2001 From: Johannes Christ Date: Wed, 14 Aug 2019 20:48:42 +0200 Subject: Add a test case. --- pydis_site/apps/api/tests/test_dblogger.py | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 pydis_site/apps/api/tests/test_dblogger.py diff --git a/pydis_site/apps/api/tests/test_dblogger.py b/pydis_site/apps/api/tests/test_dblogger.py new file mode 100644 index 00000000..e774b1d6 --- /dev/null +++ b/pydis_site/apps/api/tests/test_dblogger.py @@ -0,0 +1,26 @@ +import logging +from datetime import datetime + +from django.test import TestCase + +from ..dblogger import DatabaseLogHandler +from ..models import LogEntry + + +class DatabaseLogHandlerTests(TestCase): + def test_logs_to_database(self): + logger = logging.getLogger(__file__) + logger.handlers = [DatabaseLogHandler()] + logger.warning("I am a test case!") + + # Ensure we only have a single record in the database + # after the logging call above. + [entry] = LogEntry.objects.all() + + self.assertEqual(entry.application, 'site') + self.assertEqual(entry.logger_name, __file__) + self.assertIsInstance(entry.timestamp, datetime) + self.assertEqual(entry.level, 'warning') + self.assertEqual(entry.module, 'test_dblogger') + self.assertIsInstance(entry.line, int) + self.assertEqual(entry.message, "I am a test case!") -- cgit v1.2.3