view test/test_rlog.py @ 2467:76ead526113d

client instances may be used as translation engines. any backend translator may be passed as constructor argument or via setTranslator() method. by default, templating.translationService is used. use this engine to translate client messages.
author Alexander Smishlajev <a1s@users.sourceforge.net>
date Tue, 15 Jun 2004 09:19:49 +0000
parents fa50e1347397
children 6fe75dcb0b34
line wrap: on
line source

import unittest, StringIO

from roundup import rlog

class LoggingTestCase(unittest.TestCase):
    def setUp(self):
        self.logging = rlog.BasicLogging()
        self.file = StringIO.StringIO()
        self.logging.setFile(self.file)
    def testLevels(self):
        logger = self.logging.getLogger('test')
        v1 = self.file.getvalue()
        logger.debug('test')
        v2 = self.file.getvalue()
        self.assertEqual(v1, v2, 'Logged when should not have')

        v1 = self.file.getvalue()
        logger.info('test')
        v2 = self.file.getvalue()
        self.assertNotEqual(v1, v2, 'Nothing logged')

        v1 = self.file.getvalue()
        logger.warning('test')
        v2 = self.file.getvalue()
        self.assertNotEqual(v1, v2, 'Nothing logged')

        v1 = self.file.getvalue()
        logger.error('test')
        v2 = self.file.getvalue()
        self.assertNotEqual(v1, v2, 'Nothing logged')

        v1 = self.file.getvalue()
        try:
            1/0
        except:
            logger.exception('test')
        v2 = self.file.getvalue()
        self.assertNotEqual(v1, v2, 'Nothing logged')

def test_suite():
    suite = unittest.TestSuite()
    suite.addTest(unittest.makeSuite(LoggingTestCase))
    return suite

if __name__ == '__main__':
    runner = unittest.TextTestRunner()
    unittest.main(testRunner=runner)


Roundup Issue Tracker: http://roundup-tracker.org/