Michael Merickel
2013-11-07 8f3bf659488c1a946af2cb74c7a1fd4179c350de
handle static urls generated with a query string
2 files modified
12 ■■■■■ changed files
pyramid/config/views.py 2 ●●● patch | view | raw | blame | history
pyramid/tests/test_config/test_views.py 10 ●●●●● patch | view | raw | blame | history
pyramid/config/views.py
@@ -1913,7 +1913,7 @@
                    if '_query' in kw:
                        query = kw.pop('_query')
                        if isinstance(query, text_type):
                            result += '?' + native_(query)
                            result += '?' + quote_plus(query)
                        elif query:
                            result += '?' + urlencode(query, doseq=True)
                    if '_anchor' in kw:
pyramid/tests/test_config/test_views.py
@@ -3820,6 +3820,16 @@
        result = inst.generate('package:path/abc def', request, a=1)
        self.assertEqual(result, 'http://example.com/abc%20def')
    def test_generate_url_with_custom_query(self):
        inst = self._makeOne()
        registrations = [('http://example.com/', 'package:path/', None)]
        inst._get_registrations = lambda *x: registrations
        request = self._makeRequest()
        result = inst.generate('package:path/abc def', request, a=1,
                               _query='(openlayers)')
        self.assertEqual(result,
                         'http://example.com/abc%20def?%28openlayers%29')
    def test_generate_url_with_custom_anchor(self):
        inst = self._makeOne()
        registrations = [('http://example.com/', 'package:path/', None)]