示例#1
0
    def test_forwards_two_new_nodes(self):
        test_port_2 = 32323
        test_files_2 = ["2_file_a.txt", "2_file_b.txt"]

        self.send_broadcast(broadcast_message(TEST_PORT, TEST_FILES))
        self.send_broadcast(broadcast_message(test_port_2, test_files_2))
        sleep(TEST_WAIT)

        self.receiver.tell.assert_any_call(remote_files_message(TEST_IP, TEST_PORT, TEST_FILES))
        self.receiver.tell.assert_any_call(remote_files_message(TEST_IP, test_port_2, test_files_2))
示例#2
0
    def test_forwards_two_new_nodes(self):
        test_port_2 = 32323
        test_files_2 = ["/2_file_a.txt", "/2_file_b.txt"]

        self.send_broadcast_message(broadcast_message(TEST_PORT, TEST_FILES))
        self.send_broadcast_message(
            broadcast_message(test_port_2, test_files_2))
        sleep(TEST_WAIT)

        self.receiver.tell.assert_any_call(
            remote_files_message(TEST_IP, TEST_PORT, TEST_FILES))
        self.receiver.tell.assert_any_call(
            remote_files_message(TEST_IP, test_port_2, test_files_2))
示例#3
0
    def test_doesnt_report_own_node(self):
        own_ip = socket.gethostbyname(socket.gethostname())
        self.send_broadcast_message(broadcast_message(TEST_PORT, TEST_FILES),
                                    own_ip)
        sleep(TEST_WAIT)

        self.receiver.tell.assert_not_called()
示例#4
0
    def test_broadcast_with_updated_files(self):
        files = ["/ann_file_1.txt", "/ann_file_2.txt"]
        self.announcer.tell(local_files_message(files))

        sleep(TEST_WAIT)
        received = self.mockedSocket.received_data()
        expected = broadcast_message(TEST_PORT, files)
        self.assertTrue(
            expected in received, "\n expected: [%s]"
            "\n received: [%s]" % (expected, received))
示例#5
0
    def test_broadcast_with_updated_files(self):
        files = ["ann_file_1.txt", "ann_file_2.txt"]
        self.announcer.tell(local_files_message(files))

        sleep(TEST_WAIT)
        received = self.mockedSocket.received()
        expected = broadcast_message(TEST_PORT, files)
        self.assertTrue(expected in received,
                        "\n expected: [%s]"
                        "\n received: [%s]" % (expected, received))
示例#6
0
    def test_no_reaction_on_unknown_message(self):
        payload = 'bla bla bla'
        udp_packet = IP(src=TEST_IP) / UDP(dport=self.broadcast_port) / payload
        sendrecv.send(udp_packet)

        sleep(TEST_WAIT)
        self.receiver.tell.assert_not_called()

        self.send_broadcast_message(broadcast_message(TEST_PORT, TEST_FILES))
        sleep(TEST_WAIT)

        self.receiver.tell.assert_called_with(
            remote_files_message(TEST_IP, TEST_PORT, TEST_FILES))
示例#7
0
    def test_received_broadcast(self):
        sleep(TEST_WAIT)
        received = self.mockedSocket.received_data()

        expected = broadcast_message(TEST_PORT, [])
        self.assertTrue(expected in received, received)
示例#8
0
    def test_received_broadcast(self):
        sleep(TEST_WAIT)
        received = self.mockedSocket.received()

        expected = broadcast_message(TEST_PORT, [])
        self.assertTrue(expected in received, received)
示例#9
0
    def test_forwards_new_node(self):
        self.send_broadcast_message(broadcast_message(TEST_PORT, TEST_FILES))
        sleep(TEST_WAIT)

        self.receiver.tell.assert_called_with(
            remote_files_message(TEST_IP, TEST_PORT, TEST_FILES))
示例#10
0
    def test_forwards_new_node(self):
        self.send_broadcast(broadcast_message(TEST_PORT, TEST_FILES))
        sleep(TEST_WAIT)

        self.receiver.tell.assert_called_with(remote_files_message(TEST_IP, TEST_PORT, TEST_FILES))