def test_it_returns_original_header_if_url_cannot_be_parsed(self):
        url = "http://["

        header, value = rewrite_location_header("Location", url, {"via.foo": "bar"})

        assert header == "Location"
        assert value == url
Beispiel #2
0
    def test_it_returns_original_header_if_url_cannot_be_parsed(self):
        url = "http://["

        header, value = rewrite_location_header("Location", url, {"via.foo": "bar"})

        assert header == "Location"
        assert value == url
Beispiel #3
0
    def test_it_ignores_non_location_headers(self):
        params = {"via.foo": "bar", "via.baz": "meep"}

        header, value = rewrite_location_header("Not-Location",
                                                "https://example.com", params)

        assert header == "Not-Location"
        assert value == "https://example.com"
Beispiel #4
0
    def test_it_preserves_rest_of_url_in_location_header(self):
        query_string = "empty_param=&non_empty_param=foo&q=one&q=two"
        url = "https://localhost:5000/a/path?{}#some_fragment".format(query_string)

        header, value = rewrite_location_header("Location", url, {})

        assert header == "Location"
        assert value == url
    def test_it_preserves_rest_of_url_in_location_header(self):
        query_string = "empty_param=&non_empty_param=foo&q=one&q=two"
        url = "https://localhost:5000/a/path?{}#some_fragment".format(query_string)

        header, value = rewrite_location_header("Location", url, {})

        assert header == "Location"
        assert value == url
Beispiel #6
0
    def test_it_returns_original_header_if_url_cannot_be_parsed(self):
        url = 'http://['

        header, value = rewrite_location_header('Location', url,
                                                {'via.foo': 'bar'})

        assert header == 'Location'
        assert value == url
Beispiel #7
0
    def test_it_ignores_non_location_headers(self):
        params = {'via.foo': 'bar', 'via.baz': 'meep'}

        header, value = rewrite_location_header('Not-Location',
                                                'https://example.com', params)

        assert header == 'Not-Location'
        assert value == 'https://example.com'
    def test_it_ignores_non_location_headers(self):
        params = {"via.foo": "bar", "via.baz": "meep"}

        header, value = rewrite_location_header(
            "Not-Location", "https://example.com", params
        )

        assert header == "Not-Location"
        assert value == "https://example.com"
Beispiel #9
0
    def test_it_adds_params_to_location_header(self, header_name):
        params = {'via.foo': 'bar', 'via.baz': 'meep'}

        header, value = rewrite_location_header(header_name,
                                                'https://example.com', params)

        assert header == header_name
        assert value == 'https://example.com?via.foo={}&via.baz={}'.format(
            params['via.foo'], params['via.baz'])
Beispiel #10
0
    def test_it_adds_params_to_location_header(self, header_name):
        params = {"via.foo": "bar", "via.baz": "meep"}

        header, value = rewrite_location_header(header_name,
                                                "https://example.com", params)
        parsed_value = urlparse.urlparse(value)
        parsed_qs = urlparse.parse_qs(parsed_value.query)

        assert header == header_name
        assert value.startswith("https://example.com?")
        assert parsed_qs == {"via.foo": ["bar"], "via.baz": ["meep"]}
Beispiel #11
0
    def test_it_adds_params_to_location_header(self, header_name):
        params = {"via.foo": "bar", "via.baz": "meep"}

        header, value = rewrite_location_header(
            header_name, "https://example.com", params
        )
        parsed_value = urlparse.urlparse(value)
        parsed_qs = urlparse.parse_qs(parsed_value.query)

        assert header == header_name
        assert value.startswith("https://example.com?")
        assert parsed_qs == {"via.foo": ["bar"], "via.baz": ["meep"]}