[CalendarServer-changes] [11276] CalendarServer/trunk/twext/python/test/test_log.py

source_changes at macosforge.org source_changes at macosforge.org
Thu May 30 14:30:41 PDT 2013


Revision: 11276
          http://trac.calendarserver.org//changeset/11276
Author:   wsanchez at apple.com
Date:     2013-05-30 14:30:41 -0700 (Thu, 30 May 2013)
Log Message:
-----------
Add test_setLevelOnLogger, test_legacy_msg

Modified Paths:
--------------
    CalendarServer/trunk/twext/python/test/test_log.py

Modified: CalendarServer/trunk/twext/python/test/test_log.py
===================================================================
--- CalendarServer/trunk/twext/python/test/test_log.py	2013-05-30 20:42:52 UTC (rev 11275)
+++ CalendarServer/trunk/twext/python/test/test_log.py	2013-05-30 21:30:41 UTC (rev 11276)
@@ -22,7 +22,7 @@
 from twext.python.log import logLevelsByNamespace, logLevelForNamespace
 from twext.python.log import setLogLevelForNamespace, clearLogLevels
 from twext.python.log import pythonLogLevelMapping
-from twext.python.log import Logger
+from twext.python.log import Logger, LegacyLogger
 
 from twistedcaldav.test.util import TestCase
 
@@ -32,14 +32,14 @@
 
 
 
-class TestLogger(Logger):
+class TestLoggerMixIn(object):
     def emit(self, level, message=None, **kwargs):
         def observer(eventDict):
             self.eventDict = eventDict
 
         twistedLogging.addObserver(observer)
 
-        super(TestLogger, self).emit(level, message, **kwargs)
+        Logger.emit(self, level, message, **kwargs)
 
         twistedLogging.removeObserver(observer)
 
@@ -50,7 +50,16 @@
         }
 
 
+class TestLogger(TestLoggerMixIn, Logger):
+    pass
 
+
+
+class TestLegacyLogger(TestLoggerMixIn, LegacyLogger):
+    pass
+
+
+
 class LogComposedObject(object):
     """
     Just a regular object.
@@ -175,7 +184,7 @@
 
     def test_conflicting_kwargs(self):
         """
-        Make sure that conflicting kwargs don't pass through.
+        Make sure that kwargs conflicting with args don't pass through.
         """
         log = TestLogger()
 
@@ -256,6 +265,18 @@
         self.assertEquals(logLevelForNamespace("twext.web2.dav.test1.test2"), defaultLogLevel)
 
 
+    def test_setLevelOnLogger(self):
+        """
+        Set level on the logger directly.
+        """
+        log = Logger()
+
+        for level in (LogLevel.error, LogLevel.info):
+            log.setLevel(level)
+            self.assertIdentical(level, log.level())
+            self.assertIdentical(level, logLevelForNamespace(log.namespace))
+
+
     def test_willLogAtLevel(self):
         """
         willLogAtLevel()
@@ -282,3 +303,25 @@
                 self.assertTrue(log.willLogAtLevel(level))
             else:
                 self.assertFalse(log.willLogAtLevel(level))
+
+
+    def test_legacy_msg(self):
+        """
+        Test LegacyLogger's log.msg()
+        """
+        log = TestLegacyLogger()
+
+        message = "Hi, there."
+        kwargs = { "foo": "bar", "obj": object() }
+
+        log.msg(message, **kwargs)
+
+        self.assertIdentical(LogLevel.info, log.emitted["level"])
+        self.assertEquals(message, log.emitted["message"]) # log.msg() is (weird,)
+
+        for key, value in kwargs.items():
+            self.assertIdentical(log.emitted["kwargs"][key], value)
+
+        log.msg(foo="")
+
+        self.assertIdentical(log.emitted["message"], None)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/calendarserver-changes/attachments/20130530/a7f25c4d/attachment.html>


More information about the calendarserver-changes mailing list