def testOnkyo(self): self._log.debug( "\ntestOnkyo" ) self.loader = EventRouterLoader() self.loader.loadHandlers( getDictFromXmlString(testConfigOnkyo) ) self.loader.start() # all tasks self.router = self.loader.getEventRouter() self.router.publish( EventAgent("testVolume"), evtOnkyoVolume0 ) # time events are not in the log. self.assert_(TestEventLogger.expectNevents(2)) self.assertEqual( TestEventLogger._events[0].getSource(), "webbrick/1/100" ) evt = TestEventLogger._events[1] self.assertEqual( evt.getType(), "avamplifier/volume/current" ) self.assertEqual( evt.getSource(), "avamplifier/1/volume/main/current" ) evtod = evt.getPayload() self.assert_( evtod.has_key("val") ) self.assertEqual( evtod["val"], 0 ) self.router.publish( EventAgent("testVolume"), evtOnkyoVolume50 ) self.assert_(TestEventLogger.expectNevents(4)) self.router.publish( EventAgent("testVolume"), evtOnkyoVolume100 ) self.assert_(TestEventLogger.expectNevents(6)) TestEventLogger.logEvents()
def testReadLogFile2(self): self.loader = EventRouterLoader() self.loader.loadHandlers( getDictFromXmlString(testConfig) ) self.loader.start() # all tasks self.router = self.loader.getEventRouter() ReadLogFileSendEvents( "resources/EventLog.log", self.router ) TestEventLogger.expectNevents(9) self.assertEqual( TestEventLogger._events[0].getSource(), "temperature/outside" ) self.assertEqual( TestEventLogger._events[1].getSource(), "webbrick/3/1" ) self.assertEqual( TestEventLogger._events[2].getSource(), "webbrick/3/1" ) self.assertEqual( TestEventLogger._events[3].getSource(), "webbrick/6" ) self.assertEqual( TestEventLogger._events[4].getSource(), "webbrick/2" ) self.assertEqual( TestEventLogger._events[5].getSource(), "webbrick/7" ) self.assertEqual( TestEventLogger._events[6].getSource(), "webbrick/4" ) self.assertEqual( TestEventLogger._events[7].getSource(), "webbrick/9/CT/3" ) self.assertEqual( TestEventLogger._events[8].getSource(), "webbrick/9/AI/0" )
def testDataset(self): """ Test the data set creator """ self._log.debug( "\ntestDataset" ) logHandler = testLogHandler() addTestLogHandler(logHandler,"Dataset") self.loader = EventRouterLoader() self.loader.loadHandlers( getDictFromXmlString(testConfigDataset) ) self.loader.start() # all tasks self.router = self.loader.getEventRouter() self.router.publish( EventAgent("TestLogEvent"), Events.evtAI_1_50 ) self.router.publish( EventAgent("TestLogEvent"), Events.evtCT_1_25 ) self.router.publish( EventAgent("TestLogEvent"), Events.evtMinute1 ) time.sleep(1.0) self.assertEqual( logHandler.count(), 2 ) TestEventLogger.expectNevents(4) TestEventLogger.logEvents() removeTestLogHandler(logHandler,"Dataset")
def testStartupAtHome(self): self._log.debug( "\ntestStartupAtHome" ) self.loader = EventRouterLoader() self.loader.loadHandlers( getDictFromXmlString(testCalendarConfig) ) self.loader.start() # all tasks self.router = self.loader.getEventRouter() self.router.publish( EventAgent("TestCalendarEvent"), evtMinuteAtHome ) self.assert_( TestEventLogger.expectNevents(2), "Expected 2 events only seen %s" % (len(TestEventLogger._events)) ) # first is subscribe event self.assertEqual( TestEventLogger._events[0].getSource(), "time/minute" ) self.assertEqual( TestEventLogger._events[1].getSource(), "occupants/home" ) self.assertEqual( TestEventLogger._events[1].getPayload()["val"], 1 )
def test8BitChecksum(self): self._log.debug( "\ntest8BitChecksum" ) self.loader = EventRouterLoader() self.loader.loadHandlers( getDictFromXmlString(test8bitchecksum) ) self.loader.start() # all tasks self.router = self.loader.getEventRouter() self.router.publish( EventAgent("testVolume"), evt8bitchecksum ) # time events are not in the log. self.assert_(TestEventLogger.expectNevents(2)) self.assertEqual( TestEventLogger._events[0].getSource(), "webbrick/1/100" ) evt = TestEventLogger._events[1] self.assertEqual( evt.getType(), "avamplifier/volume/current" ) self.assertEqual( evt.getSource(), "avamplifier/1/volume/main/current" ) evtod = evt.getPayload() self.assert_( evtod.has_key("val") ) self.assertEqual( evtod["val"], '20;20;84;55;55;50;2;227:' ) TestEventLogger.logEvents()