def test_events_publication(self, monkeypatch, cfg): def mock_get_object(channel): self.evtmgr_svc[channel] = svc = MockEventManagerService() return svc def mock_config_read(*args, **kwargs): pass monkeypatch.setattr('pycstbox.evtmgr.get_object', mock_get_object) monkeypatch.setattr('pycstbox.wisdom.mqtt.gs', {'system_id': 'cbx-unittests'}) # monkeypatch.setattr('pycstbox.mqtt.core.MQTTConnector.run', mock_run) # monkeypatch.setattr('pycstbox.mqtt.core.MQTTConnector.publish', mock_publish) so = MQTTGatewayServiceObject(cfg) assert so so.start() assert len(self.evtmgr_svc) != 0 sensor_bus = self.evtmgr_svc['sensor'] sensor_bus.handler(so, int(time.time() * 1000), 'usage', 'water_kitchen', {'value': True}) so.stop()