Loading django/utils/functional.py +4 −0 Original line number Diff line number Diff line Loading @@ -95,6 +95,7 @@ def lazy(func, *resultclasses): cls.__str__ = cls.__text_cast else: cls.__unicode__ = cls.__text_cast cls.__str__ = cls.__bytes_cast_encoded elif cls._delegate_bytes: if six.PY3: cls.__bytes__ = cls.__bytes_cast Loading @@ -117,6 +118,9 @@ def lazy(func, *resultclasses): def __bytes_cast(self): return bytes(func(*self.__args, **self.__kw)) def __bytes_cast_encoded(self): return func(*self.__args, **self.__kw).encode('utf-8') def __cast(self): if self._delegate_bytes: return self.__bytes_cast() Loading tests/urlpatterns_reverse/tests.py +11 −0 Original line number Diff line number Diff line Loading @@ -318,6 +318,17 @@ class ReverseLazyTest(TestCase): response = self.client.get('/login_required_view/') self.assertEqual(response.status_code, 200) def test_inserting_reverse_lazy_into_string(self): self.assertEqual( 'Some URL: %s' % reverse_lazy('some-login-page'), 'Some URL: /login/' ) if six.PY2: self.assertEqual( b'Some URL: %s' % reverse_lazy('some-login-page'), 'Some URL: /login/' ) class ReverseLazySettingsTest(AdminScriptTestCase): """ Loading Loading
django/utils/functional.py +4 −0 Original line number Diff line number Diff line Loading @@ -95,6 +95,7 @@ def lazy(func, *resultclasses): cls.__str__ = cls.__text_cast else: cls.__unicode__ = cls.__text_cast cls.__str__ = cls.__bytes_cast_encoded elif cls._delegate_bytes: if six.PY3: cls.__bytes__ = cls.__bytes_cast Loading @@ -117,6 +118,9 @@ def lazy(func, *resultclasses): def __bytes_cast(self): return bytes(func(*self.__args, **self.__kw)) def __bytes_cast_encoded(self): return func(*self.__args, **self.__kw).encode('utf-8') def __cast(self): if self._delegate_bytes: return self.__bytes_cast() Loading
tests/urlpatterns_reverse/tests.py +11 −0 Original line number Diff line number Diff line Loading @@ -318,6 +318,17 @@ class ReverseLazyTest(TestCase): response = self.client.get('/login_required_view/') self.assertEqual(response.status_code, 200) def test_inserting_reverse_lazy_into_string(self): self.assertEqual( 'Some URL: %s' % reverse_lazy('some-login-page'), 'Some URL: /login/' ) if six.PY2: self.assertEqual( b'Some URL: %s' % reverse_lazy('some-login-page'), 'Some URL: /login/' ) class ReverseLazySettingsTest(AdminScriptTestCase): """ Loading