Exemplo n.º 1
0
    def test_address(self):
        self.mock_proxy_server.return_value.address = ('somehost', 12345)
        proxy = MitmProxy('somehost', 12345, {
            'request_storage_base_dir': '/some/dir',
        })

        self.assertEqual(('somehost', 12345), proxy.address())
Exemplo n.º 2
0
    def test_shutdown(self):
        proxy = MitmProxy('somehost', 12345, {
            'request_storage_base_dir': '/some/dir',
        })

        proxy.shutdown()

        self.mock_master.return_value.shutdown.assert_called_once_with()
        self.mock_storage.return_value.cleanup.assert_called_once_with()
Exemplo n.º 3
0
    def test_serve_forever(self):
        self.mock_asyncio.get_event_loop.return_value.is_closed.return_value = False
        proxy = MitmProxy('somehost', 12345, {
            'request_storage_base_dir': '/some/dir',
        })

        proxy.serve_forever()

        self.mock_asyncio.set_event_loop.assert_called_once_with(
            proxy._event_loop)
        self.mock_master.return_value.run_loop.assert_called_once_with(
            proxy._event_loop.run_forever)
Exemplo n.º 4
0
    def test_creates_storage(self):
        proxy = MitmProxy('somehost', 12345, {
            'request_storage_base_dir': '/some/dir',
        })

        self.assertEqual(self.mock_storage.return_value, proxy.storage)
        self.mock_storage.assert_called_once_with(base_dir='/some/dir')
Exemplo n.º 5
0
    def test_get_event_loop(self):
        self.mock_asyncio.get_event_loop.return_value.is_closed.return_value = False
        proxy = MitmProxy('somehost', 12345, {
            'request_storage_base_dir': '/some/dir',
        })

        self.assertEqual(self.mock_asyncio.get_event_loop.return_value,
                         proxy._event_loop)
        self.mock_asyncio.get_event_loop.assert_called_once_with()
Exemplo n.º 6
0
 def test_upstream_proxy_different(self):
     with self.assertRaises(ValueError):
         MitmProxy(
             'somehost', 12345, {
                 'request_storage_base_dir': '/some/dir',
                 'proxy': {
                     'http': 'http://proxyserver1:8080',
                     'https': 'https://proxyserver2:8080'
                 }
             })
Exemplo n.º 7
0
    def test_update_mitmproxy_options(self):
        MitmProxy('somehost', 12345, {
            'request_storage_base_dir': '/some/dir',
            'mitm_test': 'foobar'
        })

        self.mock_options.return_value.update.has_calls([
            call(
                confdir='~/.mitmproxy',
                ssl_insecure=True,
                upstream_cert=False,
                stream_websockets=True,
            ),
            call(test='foobar')
        ])
Exemplo n.º 8
0
    def test_upstream_proxy_single(self):
        MitmProxy(
            'somehost', 12345, {
                'request_storage_base_dir': '/some/dir',
                'proxy': {
                    'http': 'http://proxyserver:8080',
                }
            })

        self.mock_options.return_value.update.has_calls([
            call(confdir='~/.mitmproxy',
                 ssl_insecure=True,
                 upstream_cert=False,
                 stream_websockets=True,
                 mode='upstream:http://proxyserver:8080'),
            call()
        ])
Exemplo n.º 9
0
 def test_creates_master(self):
     proxy = MitmProxy('somehost', 12345, {
         'request_storage_base_dir': '/some/dir',
     })
     self.assertEqual(self.mock_master.return_value, proxy._master)
     self.mock_options.assert_called_once_with(listen_host='somehost',
                                               listen_port=12345)
     self.mock_master.assert_called_once_with(
         self.mock_options.return_value)
     self.assertEqual(self.mock_proxy_server.return_value,
                      self.mock_master.return_value.server)
     self.mock_proxy_config.assert_called_once_with(
         self.mock_options.return_value)
     self.mock_proxy_server.assert_called_once_with(
         self.mock_proxy_config.return_value)
     self.mock_master.return_value.addons.add.assert_has_calls([
         call(),
         call(self.mock_logger.return_value),
         call(self.mock_handler.return_value)
     ])
     self.mock_addons.default_addons.assert_called_once_with()
     self.mock_handler.assert_called_once_with(proxy)