def test_connection_request_is_able_to_accept_accept_header( self, mock_host_resolver, mock_auth, success_requests_session): connection = Connection(mock_host_resolver, mock_auth, success_requests_session) connection.put(URL, data='{"foo":"bar"}', headers={"Accept": "*/*"}) request = success_requests_session.prepare_request.call_args[0][0] assert request.headers["Accept"] == "*/*"
def test_connection_request_when_not_give_accept_header_sets_accept_to_application_json( self, mock_host_resolver, mock_auth, success_requests_session): connection = Connection(mock_host_resolver, mock_auth, success_requests_session) connection.put(URL, data='{"foo":"bar"}') request = success_requests_session.prepare_request.call_args[0][0] assert request.headers["Accept"] == "application/json"
def test_connection_request_when_has_data_includes_content_type_header( self, mock_host_resolver, mock_auth, success_requests_session): connection = Connection(mock_host_resolver, mock_auth, success_requests_session) connection.put(URL, data='{"foo":"bar"}') request = success_requests_session.prepare_request.call_args[0][0] assert request.headers["Content-Type"] == "application/json"
def test_connection_request_includes_user_agent_header( self, mock_host_resolver, mock_auth, success_requests_session): connection = Connection(mock_host_resolver, mock_auth, success_requests_session) connection.put(URL) request = success_requests_session.prepare_request.call_args[0][0] assert request.headers["User-Agent"] is not None
def test_connection_request_when_no_data_does_not_include_content_type_header( self, mock_host_resolver, mock_auth, success_requests_session): connection = Connection(mock_host_resolver, mock_auth, success_requests_session) connection.put(URL) request = success_requests_session.prepare_request.call_args[0][0] assert request.headers.get("Content-Type") is None
def test_connection_put_calls_requests_with_put( self, mock_host_resolver, mock_auth, success_requests_session ): connection = Connection(mock_host_resolver, mock_auth, success_requests_session) connection.put(URL, data="testdata") expected = MockPreparedRequest("PUT", HOST_ADDRESS + URL, "testdata") success_requests_session.prepare_request.assert_called_once_with(expected)
def test_connection_request_when_given_header_as_param_does_not_persist_header( self, mock_host_resolver, mock_auth, success_requests_session): connection = Connection(mock_host_resolver, mock_auth, success_requests_session) connection.put(URL, data='{"foo":"bar"}', headers={"Foo": "Bar"}) connection.get(URL) request = success_requests_session.prepare_request.call_args[0][0] assert request.headers.get("Foo") is None
def test_connection_request_when_has_data_does_not_use_header_on_following_request_that_does_not_have_data( self, mock_host_resolver, mock_auth, success_requests_session ): connection = Connection(mock_host_resolver, mock_auth, success_requests_session) connection.put(URL, data='{"foo":"bar"}') # Content-Type: application/json connection.get(URL) request = success_requests_session.prepare_request.call_args[0][0] assert request.headers.get("Content-Type") is None
def test_connection_request_uses_given_headers( self, mock_host_resolver, mock_auth, success_requests_session ): connection = Connection(mock_host_resolver, mock_auth, success_requests_session) connection.put( URL, data='{"foo":"bar"}', headers={"Header1": "Foo", "Header2": "Bar"} ) request = success_requests_session.prepare_request.call_args[0][0] assert request.headers["Header1"] == "Foo" assert request.headers["Header2"] == "Bar"
def test_connection_request_when_proxies_set_passes_proxies_arg_to_session_send( self, proxy_set, mock_host_resolver, mock_auth, success_requests_session): connection = Connection(mock_host_resolver, mock_auth, session=success_requests_session) url = "https://example.com" connection.get(url) connection.post(url) connection.options(url) connection.put(url) connection.patch(url) connection.head(url) connection.delete(url) for call in success_requests_session.send.call_args_list: assert call[1]["proxies"] == {"https": "http://localhost:9999"}