Beispiel #1
0
def send_echo(controller, switch):
    """Send echo request to a datapath.

    Keep the connection alive through symmetric echoes.
    """
    echo = EchoRequest(data=b'kytosd_13')
    emit_message_out(controller, switch.connection, echo)
Beispiel #2
0
    def test_handle_echo_request(self):
        """Test handling echo request message."""
        event_name = 'kytos/of_core.v0x04.messages.in.ofpt_echo_request'
        switch = get_switch_mock()
        switch.connection = get_connection_mock(
            0x04, get_switch_mock("00:00:00:00:00:00:00:02"))

        data = b'\x04\x02\x00\x0c\x00\x00\x00\x00\x68\x6f\x67\x65'
        echo_request = EchoRequest()
        echo_request.unpack(data)

        event = KytosEvent(name=event_name,
                           content={
                               'source': switch.connection,
                               'message': echo_request
                           })
        self.napp.handle_echo_request(event)
        of_event = self.napp.controller.buffers.msg_out.get()
        self.assertEqual(of_event.name,
                         'kytos/of_core.v0x04.messages.out.ofpt_echo_reply')