예제 #1
0
class TestMockLog(object):
    """
    Nose unit test suite for Probe MockLog.
    
    .. versionadded:: 0.2.0
    """
    def setup(self):
        """
        Set up the unit test suite.
        
        .. versionadded:: 0.2.0
        """
        self.log = MockLog()
        self.message = 'test_message'
    
    def teardown(self):
        """
        Tear down the unit test suite.
        
        .. versionadded:: 0.2.0
        """
        pass
    
    def test_init(self):
        """
        Test that the mock log object is initialised correctly.
        
        .. versionadded:: 0.2.0
        """
        # make sure the required message logs are present
        assert_true(self.log.messages.has_key('info'))
        assert_true(self.log.messages.has_key('error'))
        assert_true(self.log.messages.has_key('exception'))
        assert_true(self.log.messages.has_key('debug'))
        assert_true(self.log.messages.has_key('warn'))

        # make sure all the message logs are empty!
        assert_equals(self.log.messages['info'], [])
        assert_equals(self.log.messages['error'], [])
        assert_equals(self.log.messages['exception'], [])
        assert_equals(self.log.messages['debug'], [])
        assert_equals(self.log.messages['warn'], [])
        
    def test_info(self):
        """
        Test that the mock log object correctly records an info message.
        
        .. versionadded:: 0.2.0
        """
        assert_equals(self.log.messages['info'], [])
        self.log.info(self.message)
        assert_equals(self.log.messages['info'], [self.message])

        # the other message logs should be empty
        assert_equals(self.log.messages['error'], [])
        assert_equals(self.log.messages['exception'], [])
        assert_equals(self.log.messages['debug'], [])
        assert_equals(self.log.messages['warn'], [])
        
    def test_error(self):
        """
        Test that the mock log object correctly records an error message.
        
        .. versionadded:: 0.2.0
        """
        assert_equals(self.log.messages['error'], [])
        self.log.error(self.message)
        assert_equals(self.log.messages['error'], [self.message])

        # the other message logs should be empty
        assert_equals(self.log.messages['info'], [])
        assert_equals(self.log.messages['exception'], [])
        assert_equals(self.log.messages['debug'], [])
        assert_equals(self.log.messages['warn'], [])
        
    def test_exception(self):
        """
        Test that the mock log object correctly records an exception message.
        
        .. versionadded:: 0.2.0
        """
        assert_equals(self.log.messages['exception'], [])
        self.log.exception(self.message)
        assert_equals(self.log.messages['exception'], [self.message])

        # the other message logs should be empty
        assert_equals(self.log.messages['info'], [])
        assert_equals(self.log.messages['error'], [])
        assert_equals(self.log.messages['debug'], [])
        assert_equals(self.log.messages['warn'], [])
        
    def test_debug(self):
        """
        Test that the mock log object correctly records a debug message.
        
        .. versionadded:: 0.2.0
        """
        assert_equals(self.log.messages['debug'], [])
        self.log.debug(self.message)
        assert_equals(self.log.messages['debug'], [self.message])

        # the other message logs should be empty
        assert_equals(self.log.messages['info'], [])
        assert_equals(self.log.messages['error'], [])
        assert_equals(self.log.messages['exception'], [])
        assert_equals(self.log.messages['warn'], [])
        
    def test_warn(self):
        """
        Test that the mock log object correctly records a warning message.
        
        .. versionadded:: 0.2.0
        """
        assert_equals(self.log.messages['warn'], [])
        self.log.warn(self.message)
        assert_equals(self.log.messages['warn'], [self.message])

        # the other message logs should be empty
        assert_equals(self.log.messages['info'], [])
        assert_equals(self.log.messages['error'], [])
        assert_equals(self.log.messages['exception'], [])
        assert_equals(self.log.messages['debug'], [])
        
    def test_clear(self):
        """
        Test that the clear() method correctly empties the mock log instance.
        
        .. versionadded:: 0.2.0
        """
        self.log.info(self.message)
        self.log.error(self.message)
        self.log.exception(self.message)
        self.log.debug(self.message)
        self.log.warn(self.message)
        
        self.log.clear()
        
        # make sure all the message logs are empty!
        assert_equals(self.log.messages['info'], [])
        assert_equals(self.log.messages['error'], [])
        assert_equals(self.log.messages['exception'], [])
        assert_equals(self.log.messages['debug'], [])
        assert_equals(self.log.messages['warn'], [])
class TestMockLog(object):
    """
    Nose unit test suite for Probe MockLog.
    
    .. versionadded:: 0.2.0
    """
    def setup(self):
        """
        Set up the unit test suite.
        
        .. versionadded:: 0.2.0
        """
        self.log = MockLog()
        self.message = 'test_message'

    def teardown(self):
        """
        Tear down the unit test suite.
        
        .. versionadded:: 0.2.0
        """
        pass

    def test_init(self):
        """
        Test that the mock log object is initialised correctly.
        
        .. versionadded:: 0.2.0
        """
        # make sure the required message logs are present
        assert_true(self.log.messages.has_key('info'))
        assert_true(self.log.messages.has_key('error'))
        assert_true(self.log.messages.has_key('exception'))
        assert_true(self.log.messages.has_key('debug'))
        assert_true(self.log.messages.has_key('warn'))

        # make sure all the message logs are empty!
        assert_equals(self.log.messages['info'], [])
        assert_equals(self.log.messages['error'], [])
        assert_equals(self.log.messages['exception'], [])
        assert_equals(self.log.messages['debug'], [])
        assert_equals(self.log.messages['warn'], [])

    def test_info(self):
        """
        Test that the mock log object correctly records an info message.
        
        .. versionadded:: 0.2.0
        """
        assert_equals(self.log.messages['info'], [])
        self.log.info(self.message)
        assert_equals(self.log.messages['info'], [self.message])

        # the other message logs should be empty
        assert_equals(self.log.messages['error'], [])
        assert_equals(self.log.messages['exception'], [])
        assert_equals(self.log.messages['debug'], [])
        assert_equals(self.log.messages['warn'], [])

    def test_error(self):
        """
        Test that the mock log object correctly records an error message.
        
        .. versionadded:: 0.2.0
        """
        assert_equals(self.log.messages['error'], [])
        self.log.error(self.message)
        assert_equals(self.log.messages['error'], [self.message])

        # the other message logs should be empty
        assert_equals(self.log.messages['info'], [])
        assert_equals(self.log.messages['exception'], [])
        assert_equals(self.log.messages['debug'], [])
        assert_equals(self.log.messages['warn'], [])

    def test_exception(self):
        """
        Test that the mock log object correctly records an exception message.
        
        .. versionadded:: 0.2.0
        """
        assert_equals(self.log.messages['exception'], [])
        self.log.exception(self.message)
        assert_equals(self.log.messages['exception'], [self.message])

        # the other message logs should be empty
        assert_equals(self.log.messages['info'], [])
        assert_equals(self.log.messages['error'], [])
        assert_equals(self.log.messages['debug'], [])
        assert_equals(self.log.messages['warn'], [])

    def test_debug(self):
        """
        Test that the mock log object correctly records a debug message.
        
        .. versionadded:: 0.2.0
        """
        assert_equals(self.log.messages['debug'], [])
        self.log.debug(self.message)
        assert_equals(self.log.messages['debug'], [self.message])

        # the other message logs should be empty
        assert_equals(self.log.messages['info'], [])
        assert_equals(self.log.messages['error'], [])
        assert_equals(self.log.messages['exception'], [])
        assert_equals(self.log.messages['warn'], [])

    def test_warn(self):
        """
        Test that the mock log object correctly records a warning message.
        
        .. versionadded:: 0.2.0
        """
        assert_equals(self.log.messages['warn'], [])
        self.log.warn(self.message)
        assert_equals(self.log.messages['warn'], [self.message])

        # the other message logs should be empty
        assert_equals(self.log.messages['info'], [])
        assert_equals(self.log.messages['error'], [])
        assert_equals(self.log.messages['exception'], [])
        assert_equals(self.log.messages['debug'], [])

    def test_clear(self):
        """
        Test that the clear() method correctly empties the mock log instance.
        
        .. versionadded:: 0.2.0
        """
        self.log.info(self.message)
        self.log.error(self.message)
        self.log.exception(self.message)
        self.log.debug(self.message)
        self.log.warn(self.message)

        self.log.clear()

        # make sure all the message logs are empty!
        assert_equals(self.log.messages['info'], [])
        assert_equals(self.log.messages['error'], [])
        assert_equals(self.log.messages['exception'], [])
        assert_equals(self.log.messages['debug'], [])
        assert_equals(self.log.messages['warn'], [])