Example #1
0
    def test_add_success(self):
        port_config = get_port_config([])

        upnpc = MagicMock()
        upnpc.port_open_on_router = MagicMock(return_value=False)

        mapper = PortMapper(port_config, upnpc)
        mapping = mapper.add(80)

        self.assertIsNotNone(mapping)
        self.assertEquals(80, mapping.local_port)
        self.assertEquals(80, mapping.external_port)
        self.assertTrue(upnpc.add.called)

        read = port_config.get(80)
        self.assertEquals(80, read.external_port)
Example #2
0
    def test_add_success_after_first_failed(self):
        port_config = get_port_config([])

        upnpc = FailingUpnpc(2)
        upnpc.port_open_on_router = MagicMock(return_value=False)
        upnpc.external_ip = MagicMock()
        upnpc.mapped_external_ports = MagicMock()

        mapper = PortMapper(port_config, upnpc)
        mapping = mapper.add(80)

        self.assertIsNotNone(mapping)
        self.assertEquals(80, mapping.local_port)
        self.assertEquals(2001, mapping.external_port)

        read = port_config.get(80)
        self.assertEquals(2001, read.external_port)