def test_sendMessageWithArgs(self):
        parentConnection, childConnection = multiprocessing.Pipe()
        objectProxy = ObjectProxy(ProxyMessageSender(parentConnection))
        objectProxy.sendMessage('someFunction', tuple([1, 2]))

        assert self.receiveMessageFromPipe(childConnection) == RequestMessage(
            "someFunction", tuple([1, 2]))
    def test_receiveMessageWithArgs(self):
        parentConnection, childConnection = multiprocessing.Pipe()
        self.sendMessageToPipe(childConnection, "someMessage", 1, 2)
        messageReceiver = ProxyListenerMessageReceiver(parentConnection)
        receivedMessage = messageReceiver.receive()

        assert isinstance(receivedMessage, RequestMessage)
        assert receivedMessage == RequestMessage("someMessage", args=tuple([1, 2]))
 def sendMessageToPipe(self, conn, message, *args):
     # type: (multiprocessing.Connection, str) -> None
     request = RequestMessage(message, args)
     conn.send(request)
Exemple #4
0
 def sendMessage(self, functionName, args):
     """Creates a Request and sends it. Always expects a reply"""
     request = RequestMessage(functionName, args)
     reply = self.proxyMessageSender.sendMessage(request)
     assert isinstance(reply, ReplyMessage)
     return reply.getContent()