def test_authHardwareSendsMessage(self): wsmock = WebsocketMock() connector = ThingsConectorBase("testid", "node", "descr", 1) connector.ws = wsmock connector.authHardware() self.assertTrue(wsmock.message == '{"data": {"nodeid": "testid", "key": "secretkey"}, "messagetype": "authHardware"}')
def test_MessageTypeRefresh(self): """Checks if Refresh message calls prepareRefresh""" mock = FunctionMock() message = {"messagetype" : "Refresh", "data" : ""} connector = ThingsConectorBase("testid", "node", "descr", 1) connector.prepareRefresh = mock.mockRefresh connector.parseJsonMessage(None, message) self.assertTrue(mock.mockCalled)
def test_MessageTypeLogonResult_setsAuthenticated(self): """Checks if authenticated property is set to true""" mock = FunctionMock() message = {"messagetype" : "LogonResult", "data" : {"success": True}} connector = ThingsConectorBase("testid", "node", "descr", 1) connector.cutConnection = mock.mockDummy self.assertFalse(connector.authenticated) connector.sendNodeInfo = mock.mockSendHandwareInfo connector.parseJsonMessage(None, message) self.assertTrue(connector.authenticated)
def test_MessageTypeUIMessage(self): """Checks if UI-Message calls handleUiMessage.""" mock = FunctionMock() connector = ThingsConectorBase("testid", "node", "descr", 1) connector.cutConnection = mock.mockDummy message = {"messagetype" : "UI-Message", "data" : ""} connector.handleUIMessage = mock.mockHandleUIMessage self.assertFalse(mock.mockCalled) connector.parseJsonMessage(None, message) self.assertTrue(mock.mockCalled)
def test_HandleLogonResultCalls_SendHardwareInfo(self): """Checks if handleLogonResult calls sendHardwareInfo().""" mock = FunctionMock() connector = ThingsConectorBase("testid", "node", "descr", 1) message = {"messagetype" : "LogonResult", "data" : {"success": True}} connector.cutConnection = mock.mockDummy connector.sendNodeInfo = mock.mockSendHandwareInfo self.assertFalse(mock.mockSendHandwareInfoCalled) connector.handleLogonResult(None, message) self.assertTrue(mock.mockSendHandwareInfoCalled)
def test_MessageTypeLogonResult_cuts_Connection(self): """Checks if message LogonResult calls cut connection if authentication fails.""" mock = FunctionMock() message = {"messagetype" : "LogonResult", "data" : {"success": False}} connector = ThingsConectorBase("testid", "node", "descr", 1) connector.cutConnection = mock.mockDummy self.assertFalse(connector.authenticated) connector.parseJsonMessage(None, message) # check if authenticated is false self.assertFalse(connector.authenticated) # check if cutConnection() was called self.assertTrue(mock.dummyCalled)
def test_sendNodeInfo(self): """Checks if sendNodeInfo works.""" mock = FunctionMock() wsmock = WebsocketMock() connector = ThingsConectorBase("nodeid", "nodename", "nodedescr", 1) connector.ws = wsmock testItem = ThingsItemBase("testid", "type1", "descr") connector.addItem(testItem) connector.sendNodeInfo() message = json.loads(wsmock.message.encode('utf-8')) self.assertTrue(message["messagetype"] == 'nodeinfo')
def test_sendNodeInfoSendsNodeId(self): mock = FunctionMock() wsmock = WebsocketMock() connector = ThingsConectorBase("nodeid", "nodename", "nodedescr", 1) connector.ws = wsmock testItem = ThingsItemBase("testid", "type1", "descr") connector.addItem(testItem) connector.sendNodeInfo() message = json.loads(wsmock.message.encode('utf-8')) data = message["data"] self.assertEqual(data['nodeid'], "nodeid") self.assertEqual(data['description'], "nodedescr")