Some little python code to visualize an LDAP structure.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

54 lines
2.0 KiB

import unittest
import mock
from os.path import dirname, realpath
from sys import argv, path
path.append(dirname(dirname(realpath(__file__))) + '/lib')
from Event.Event import Event
from Event.EventDispatcher import EventDispatcher
class TestEventDisptcher(unittest.TestCase):
def setUp(self):
self._dispatcher = EventDispatcher()
self._handler_mock1 = mock.Mock()
self._handler_mock2 = mock.Mock()
self._handler_mock1.getHandledIds.return_value = [1, 2]
self._handler_mock2.getHandledIds.return_value = [1, 3]
def testRegisterHandler(self):
self._dispatcher.registerHandler(self._handler_mock1)
self._dispatcher.registerHandler(self._handler_mock2)
self._handler_mock1.getHandledIds.called_once()
self._handler_mock2.getHandledIds.called_once()
self._handler_mock1.setDispatcher.called_once()
self._handler_mock2.setDispatcher.called_once()
self.assertIn(1, self._dispatcher._handler)
self.assertIn(2, self._dispatcher._handler)
self.assertIn(3, self._dispatcher._handler)
self.assertNotIn(4, self._dispatcher._handler)
self.assertIn(self._handler_mock1, self._dispatcher._handler[1])
self.assertIn(self._handler_mock2, self._dispatcher._handler[1])
self.assertIn(self._handler_mock1, self._dispatcher._handler[2])
self.assertNotIn(self._handler_mock2, self._dispatcher._handler[2])
self.assertIn(self._handler_mock2, self._dispatcher._handler[3])
def testSetHeartbeat(self):
self._dispatcher.setHeartbeat(None)
self.assertEqual(self._dispatcher._heartbeat, None)
self.assertEqual(self._dispatcher._nextbeat, 0.0)
self._dispatcher.setHeartbeat(1.0)
self.assertEqual(self._dispatcher._heartbeat, 1.0)
self.assertNotEqual(self._dispatcher._nextbeat, 0.0)
def suite():
return unittest.TestLoader().loadTestsFromTestCase(TestEventDisptcher)
if __name__ == '__main__':
unittest.TextTestRunner(verbosity=2).run(suite())
# vim: set ft=python et ts=8 sw=4 sts=4: