diff options
Diffstat (limited to 'tests')
68 files changed, 589 insertions, 580 deletions
diff --git a/tests/admin_changelist/urls.py b/tests/admin_changelist/urls.py index a5d927e20b..b73893b2ae 100644 --- a/tests/admin_changelist/urls.py +++ b/tests/admin_changelist/urls.py @@ -1,8 +1,8 @@ -from django.conf.urls import patterns, include +from django.conf.urls import include, url from . import admin -urlpatterns = patterns('', - (r'^admin/', include(admin.site.urls)), -) +urlpatterns = [ + url(r'^admin/', include(admin.site.urls)), +] diff --git a/tests/admin_custom_urls/models.py b/tests/admin_custom_urls/models.py index 121e03b860..51725d4253 100644 --- a/tests/admin_custom_urls/models.py +++ b/tests/admin_custom_urls/models.py @@ -35,7 +35,7 @@ class ActionAdmin(admin.ModelAdmin): def get_urls(self): # Add the URL of our custom 'add_view' view to the front of the URLs # list. Remove the existing one(s) first - from django.conf.urls import patterns, url + from django.conf.urls import url def wrap(view): def wrapper(*args, **kwargs): @@ -46,9 +46,9 @@ class ActionAdmin(admin.ModelAdmin): view_name = '%s_%s_add' % info - return patterns('', + return [ url(r'^!add/$', wrap(self.add_view), name=view_name), - ) + self.remove_url(view_name) + ] + self.remove_url(view_name) class Person(models.Model): diff --git a/tests/admin_custom_urls/urls.py b/tests/admin_custom_urls/urls.py index 5fe9ca89fb..1d14a09161 100644 --- a/tests/admin_custom_urls/urls.py +++ b/tests/admin_custom_urls/urls.py @@ -1,7 +1,7 @@ -from django.conf.urls import patterns, include +from django.conf.urls import include, url from django.contrib import admin -urlpatterns = patterns('', - (r'^admin/', include(admin.site.urls)), -) +urlpatterns = [ + url(r'^admin/', include(admin.site.urls)), +] diff --git a/tests/admin_docs/urls.py b/tests/admin_docs/urls.py index 48e7898d09..3fbfaff0c4 100644 --- a/tests/admin_docs/urls.py +++ b/tests/admin_docs/urls.py @@ -1,16 +1,16 @@ -from django.conf.urls import include, patterns, url +from django.conf.urls import include, url from django.contrib import admin from . import views -ns_patterns = patterns('', +ns_patterns = [ url(r'^xview/func/$', views.xview_dec(views.xview), name='func'), -) +] -urlpatterns = patterns('', - (r'^admin/', include(admin.site.urls)), - (r'^admindocs/', include('django.contrib.admindocs.urls')), - (r'^', include(ns_patterns, namespace='test')), - (r'^xview/func/$', views.xview_dec(views.xview)), - (r'^xview/class/$', views.xview_dec(views.XViewClass.as_view())), -) +urlpatterns = [ + url(r'^admin/', include(admin.site.urls)), + url(r'^admindocs/', include('django.contrib.admindocs.urls')), + url(r'^', include(ns_patterns, namespace='test')), + url(r'^xview/func/$', views.xview_dec(views.xview)), + url(r'^xview/class/$', views.xview_dec(views.XViewClass.as_view())), +] diff --git a/tests/admin_inlines/urls.py b/tests/admin_inlines/urls.py index a5d927e20b..b73893b2ae 100644 --- a/tests/admin_inlines/urls.py +++ b/tests/admin_inlines/urls.py @@ -1,8 +1,8 @@ -from django.conf.urls import patterns, include +from django.conf.urls import include, url from . import admin -urlpatterns = patterns('', - (r'^admin/', include(admin.site.urls)), -) +urlpatterns = [ + url(r'^admin/', include(admin.site.urls)), +] diff --git a/tests/admin_scripts/urls.py b/tests/admin_scripts/urls.py index a45dc3e9a6..ab17990322 100644 --- a/tests/admin_scripts/urls.py +++ b/tests/admin_scripts/urls.py @@ -1,11 +1,10 @@ import os -from django.conf.urls import patterns +from django.conf.urls import url from django.utils._os import upath here = os.path.dirname(upath(__file__)) -urlpatterns = patterns('', - (r'^custom_templates/(?P<path>.*)$', 'django.views.static.serve', { - 'document_root': os.path.join(here, 'custom_templates'), - }), -) +urlpatterns = [ + url(r'^custom_templates/(?P<path>.*)$', 'django.views.static.serve', { + 'document_root': os.path.join(here, 'custom_templates')}), +] diff --git a/tests/admin_views/admin.py b/tests/admin_views/admin.py index cd9ce2bf17..ba523265c2 100644 --- a/tests/admin_views/admin.py +++ b/tests/admin_views/admin.py @@ -11,7 +11,7 @@ from django.core.exceptions import ValidationError from django.core.files.storage import FileSystemStorage from django.core.mail import EmailMessage from django.core.servers.basehttp import FileWrapper -from django.conf.urls import patterns, url +from django.conf.urls import url from django.forms.models import BaseModelFormSet from django.http import HttpResponse, StreamingHttpResponse from django.contrib.admin import BooleanFieldListFilter @@ -617,11 +617,11 @@ class ReportAdmin(admin.ModelAdmin): def get_urls(self): # Corner case: Don't call parent implementation - return patterns('', + return [ url(r'^extra/$', self.extra, name='cable_extra'), - ) + ] class CustomTemplateBooleanFieldListFilter(BooleanFieldListFilter): diff --git a/tests/admin_views/customadmin.py b/tests/admin_views/customadmin.py index 560b4409c2..906fb871db 100644 --- a/tests/admin_views/customadmin.py +++ b/tests/admin_views/customadmin.py @@ -3,7 +3,7 @@ A second, custom AdminSite -- see tests.CustomAdminSiteTests. """ from __future__ import unicode_literals -from django.conf.urls import patterns +from django.conf.urls import url from django.contrib import admin from django.http import HttpResponse from django.contrib.auth.models import User @@ -26,9 +26,9 @@ class Admin2(admin.AdminSite): return super(Admin2, self).index(request, {'foo': '*bar*'}) def get_urls(self): - return patterns('', - (r'^my_view/$', self.admin_view(self.my_view)), - ) + super(Admin2, self).get_urls() + return [ + url(r'^my_view/$', self.admin_view(self.my_view)), + ] + super(Admin2, self).get_urls() def my_view(self, request): return HttpResponse("Django is a magical pony!") diff --git a/tests/admin_views/urls.py b/tests/admin_views/urls.py index d934173234..c0c59d34fc 100644 --- a/tests/admin_views/urls.py +++ b/tests/admin_views/urls.py @@ -1,14 +1,14 @@ -from django.conf.urls import patterns, include +from django.conf.urls import include, url from . import views, customadmin, admin -urlpatterns = patterns('', - (r'^test_admin/admin/doc/', include('django.contrib.admindocs.urls')), - (r'^test_admin/admin/secure-view/$', views.secure_view), - (r'^test_admin/admin/', include(admin.site.urls)), - (r'^test_admin/admin2/', include(customadmin.site.urls)), - (r'^test_admin/admin3/', include(admin.site.urls), dict(form_url='pony')), - (r'^test_admin/admin4/', include(customadmin.simple_site.urls)), - (r'^test_admin/admin5/', include(admin.site2.urls)), -) +urlpatterns = [ + url(r'^test_admin/admin/doc/', include('django.contrib.admindocs.urls')), + url(r'^test_admin/admin/secure-view/$', views.secure_view), + url(r'^test_admin/admin/', include(admin.site.urls)), + url(r'^test_admin/admin2/', include(customadmin.site.urls)), + url(r'^test_admin/admin3/', include(admin.site.urls), dict(form_url='pony')), + url(r'^test_admin/admin4/', include(customadmin.simple_site.urls)), + url(r'^test_admin/admin5/', include(admin.site2.urls)), +] diff --git a/tests/admin_widgets/urls.py b/tests/admin_widgets/urls.py index 94c841765f..3b3e9b1488 100644 --- a/tests/admin_widgets/urls.py +++ b/tests/admin_widgets/urls.py @@ -1,8 +1,8 @@ -from django.conf.urls import patterns, include +from django.conf.urls import include, url from . import widgetadmin -urlpatterns = patterns('', - (r'^', include(widgetadmin.site.urls)), -) +urlpatterns = [ + url(r'^', include(widgetadmin.site.urls)), +] diff --git a/tests/conditional_processing/urls.py b/tests/conditional_processing/urls.py index 1ed7b1264a..0ae4a6868b 100644 --- a/tests/conditional_processing/urls.py +++ b/tests/conditional_processing/urls.py @@ -1,12 +1,12 @@ -from django.conf.urls import patterns +from django.conf.urls import url from . import views -urlpatterns = patterns('', - ('^condition/$', views.index), - ('^condition/last_modified/$', views.last_modified_view1), - ('^condition/last_modified2/$', views.last_modified_view2), - ('^condition/etag/$', views.etag_view1), - ('^condition/etag2/$', views.etag_view2), -) +urlpatterns = [ + url('^condition/$', views.index), + url('^condition/last_modified/$', views.last_modified_view1), + url('^condition/last_modified2/$', views.last_modified_view2), + url('^condition/etag/$', views.etag_view1), + url('^condition/etag2/$', views.etag_view2), +] diff --git a/tests/contenttypes_tests/urls.py b/tests/contenttypes_tests/urls.py index 626b3ae8f7..bf038c93de 100644 --- a/tests/contenttypes_tests/urls.py +++ b/tests/contenttypes_tests/urls.py @@ -1,7 +1,8 @@ from __future__ import unicode_literals -from django.conf.urls import patterns +from django.conf.urls import url +from django.contrib.contenttypes import views -urlpatterns = patterns('', - (r'^shortcut/(\d+)/(.*)/$', 'django.contrib.contenttypes.views.shortcut'), -) +urlpatterns = [ + url(r'^shortcut/(\d+)/(.*)/$', views.shortcut), +] diff --git a/tests/context_processors/urls.py b/tests/context_processors/urls.py index 1b9f47c6b6..a7c0d1b4b0 100644 --- a/tests/context_processors/urls.py +++ b/tests/context_processors/urls.py @@ -1,8 +1,8 @@ -from django.conf.urls import patterns +from django.conf.urls import url from . import views -urlpatterns = patterns('', - (r'^request_attrs/$', views.request_processor), -) +urlpatterns = [ + url(r'^request_attrs/$', views.request_processor), +] diff --git a/tests/file_storage/urls.py b/tests/file_storage/urls.py index aefd8549e1..7d50ef46b8 100644 --- a/tests/file_storage/urls.py +++ b/tests/file_storage/urls.py @@ -1,7 +1,7 @@ -from django.conf.urls import patterns, url +from django.conf.urls import url from django.http import HttpResponse -urlpatterns = patterns('', +urlpatterns = [ url(r'^$', lambda req: HttpResponse('example view')), -) +] diff --git a/tests/file_uploads/urls.py b/tests/file_uploads/urls.py index a6f446bf55..ae20a2b79f 100644 --- a/tests/file_uploads/urls.py +++ b/tests/file_uploads/urls.py @@ -1,18 +1,18 @@ -from django.conf.urls import patterns +from django.conf.urls import url from . import views -urlpatterns = patterns('', - (r'^upload/$', views.file_upload_view), - (r'^verify/$', views.file_upload_view_verify), - (r'^unicode_name/$', views.file_upload_unicode_name), - (r'^echo/$', views.file_upload_echo), - (r'^echo_content_type_extra/$', views.file_upload_content_type_extra), - (r'^echo_content/$', views.file_upload_echo_content), - (r'^quota/$', views.file_upload_quota), - (r'^quota/broken/$', views.file_upload_quota_broken), - (r'^getlist_count/$', views.file_upload_getlist_count), - (r'^upload_errors/$', views.file_upload_errors), - (r'^filename_case/$', views.file_upload_filename_case_view), -) +urlpatterns = [ + url(r'^upload/$', views.file_upload_view), + url(r'^verify/$', views.file_upload_view_verify), + url(r'^unicode_name/$', views.file_upload_unicode_name), + url(r'^echo/$', views.file_upload_echo), + url(r'^echo_content_type_extra/$', views.file_upload_content_type_extra), + url(r'^echo_content/$', views.file_upload_echo_content), + url(r'^quota/$', views.file_upload_quota), + url(r'^quota/broken/$', views.file_upload_quota_broken), + url(r'^getlist_count/$', views.file_upload_getlist_count), + url(r'^upload_errors/$', views.file_upload_errors), + url(r'^filename_case/$', views.file_upload_filename_case_view), +] diff --git a/tests/forms_tests/urls.py b/tests/forms_tests/urls.py index 835e6507eb..bd5bc582a3 100644 --- a/tests/forms_tests/urls.py +++ b/tests/forms_tests/urls.py @@ -1,8 +1,8 @@ -from django.conf.urls import patterns, url +from django.conf.urls import url from .views import ArticleFormView -urlpatterns = patterns('', +urlpatterns = [ url(r'^model_form/(?P<pk>\d+)/$', ArticleFormView.as_view(), name="article_form"), -) +] diff --git a/tests/generic_inline_admin/urls.py b/tests/generic_inline_admin/urls.py index 8d68d6c922..bbabfc21a4 100644 --- a/tests/generic_inline_admin/urls.py +++ b/tests/generic_inline_admin/urls.py @@ -1,7 +1,7 @@ -from django.conf.urls import patterns, include +from django.conf.urls import include, url from . import admin -urlpatterns = patterns('', - (r'^generic_inline_admin/admin/', include(admin.site.urls)), -) +urlpatterns = [ + url(r'^generic_inline_admin/admin/', include(admin.site.urls)), +] diff --git a/tests/generic_views/urls.py b/tests/generic_views/urls.py index 1ecc0ec898..41417c6c49 100644 --- a/tests/generic_views/urls.py +++ b/tests/generic_views/urls.py @@ -1,4 +1,4 @@ -from django.conf.urls import patterns, url +from django.conf.urls import url from django.views.decorators.cache import cache_page from django.views.generic import TemplateView @@ -6,26 +6,22 @@ from . import models from . import views -urlpatterns = patterns('', - # base - #(r'^about/login-required/$', - # views.DecoratedAboutView()), - +urlpatterns = [ # TemplateView - (r'^template/no_template/$', + url(r'^template/no_template/$', TemplateView.as_view()), - (r'^template/simple/(?P<foo>\w+)/$', + url(r'^template/simple/(?P<foo>\w+)/$', TemplateView.as_view(template_name='generic_views/about.html')), - (r'^template/custom/(?P<foo>\w+)/$', + url(r'^template/custom/(?P<foo>\w+)/$', views.CustomTemplateView.as_view(template_name='generic_views/about.html')), - (r'^template/content_type/$', + url(r'^template/content_type/$', TemplateView.as_view(template_name='generic_views/robots.txt', content_type='text/plain')), - (r'^template/cached/(?P<foo>\w+)/$', + url(r'^template/cached/(?P<foo>\w+)/$', cache_page(2.0)(TemplateView.as_view(template_name='generic_views/about.html'))), # DetailView - (r'^detail/obj/$', + url(r'^detail/obj/$', views.ObjectDetail.as_view()), url(r'^detail/artist/(?P<pk>\d+)/$', views.ArtistDetail.as_view(), @@ -33,102 +29,102 @@ urlpatterns = patterns('', url(r'^detail/author/(?P<pk>\d+)/$', views.AuthorDetail.as_view(), name="author_detail"), - (r'^detail/author/bycustompk/(?P<foo>\d+)/$', + url(r'^detail/author/bycustompk/(?P<foo>\d+)/$', views.AuthorDetail.as_view(pk_url_kwarg='foo')), - (r'^detail/author/byslug/(?P<slug>[\w-]+)/$', + url(r'^detail/author/byslug/(?P<slug>[\w-]+)/$', views.AuthorDetail.as_view()), - (r'^detail/author/bycustomslug/(?P<foo>[\w-]+)/$', + url(r'^detail/author/bycustomslug/(?P<foo>[\w-]+)/$', views.AuthorDetail.as_view(slug_url_kwarg='foo')), - (r'^detail/author/(?P<pk>\d+)/template_name_suffix/$', + url(r'^detail/author/(?P<pk>\d+)/template_name_suffix/$', views.AuthorDetail.as_view(template_name_suffix='_view')), - (r'^detail/author/(?P<pk>\d+)/template_name/$', + url(r'^detail/author/(?P<pk>\d+)/template_name/$', views.AuthorDetail.as_view(template_name='generic_views/about.html')), - (r'^detail/author/(?P<pk>\d+)/context_object_name/$', + url(r'^detail/author/(?P<pk>\d+)/context_object_name/$', views.AuthorDetail.as_view(context_object_name='thingy')), - (r'^detail/author/(?P<pk>\d+)/dupe_context_object_name/$', + url(r'^detail/author/(?P<pk>\d+)/dupe_context_object_name/$', views.AuthorDetail.as_view(context_object_name='object')), - (r'^detail/page/(?P<pk>\d+)/field/$', + url(r'^detail/page/(?P<pk>\d+)/field/$', views.PageDetail.as_view()), - (r'^detail/author/invalid/url/$', + url(r'^detail/author/invalid/url/$', views.AuthorDetail.as_view()), - (r'^detail/author/invalid/qs/$', + url(r'^detail/author/invalid/qs/$', views.AuthorDetail.as_view(queryset=None)), - (r'^detail/nonmodel/1/$', + url(r'^detail/nonmodel/1/$', views.NonModelDetail.as_view()), - (r'^detail/doesnotexist/(?P<pk>\d+)/$', + url(r'^detail/doesnotexist/(?P<pk>\d+)/$', views.ObjectDoesNotExistDetail.as_view()), # FormView - (r'^contact/$', + url(r'^contact/$', views.ContactView.as_view()), # Create/UpdateView - (r'^edit/artists/create/$', + url(r'^edit/artists/create/$', views.ArtistCreate.as_view()), - (r'^edit/artists/(?P<pk>\d+)/update/$', + url(r'^edit/artists/(?P<pk>\d+)/update/$', views.ArtistUpdate.as_view()), - (r'^edit/authors/create/naive/$', + url(r'^edit/authors/create/naive/$', views.NaiveAuthorCreate.as_view()), - (r'^edit/authors/create/redirect/$', + url(r'^edit/authors/create/redirect/$', views.NaiveAuthorCreate.as_view(success_url='/edit/authors/create/')), - (r'^edit/authors/create/interpolate_redirect/$', + url(r'^edit/authors/create/interpolate_redirect/$', views.NaiveAuthorCreate.as_view(success_url='/edit/author/%(id)d/update/')), - (r'^edit/authors/create/restricted/$', + url(r'^edit/authors/create/restricted/$', views.AuthorCreateRestricted.as_view()), - (r'^edit/authors/create/$', + url(r'^edit/authors/create/$', views.AuthorCreate.as_view()), - (r'^edit/authors/create/special/$', + url(r'^edit/authors/create/special/$', views.SpecializedAuthorCreate.as_view()), - (r'^edit/author/(?P<pk>\d+)/update/naive/$', + url(r'^edit/author/(?P<pk>\d+)/update/naive/$', views.NaiveAuthorUpdate.as_view()), - (r'^edit/author/(?P<pk>\d+)/update/redirect/$', + url(r'^edit/author/(?P<pk>\d+)/update/redirect/$', views.NaiveAuthorUpdate.as_view(success_url='/edit/authors/create/')), - (r'^edit/author/(?P<pk>\d+)/update/interpolate_redirect/$', + url(r'^edit/author/(?P<pk>\d+)/update/interpolate_redirect/$', views.NaiveAuthorUpdate.as_view(success_url='/edit/author/%(id)d/update/')), - (r'^edit/author/(?P<pk>\d+)/update/$', + url(r'^edit/author/(?P<pk>\d+)/update/$', views.AuthorUpdate.as_view()), - (r'^edit/author/update/$', + url(r'^edit/author/update/$', views.OneAuthorUpdate.as_view()), - (r'^edit/author/(?P<pk>\d+)/update/special/$', + url(r'^edit/author/(?P<pk>\d+)/update/special/$', views.SpecializedAuthorUpdate.as_view()), - (r'^edit/author/(?P<pk>\d+)/delete/naive/$', + url(r'^edit/author/(?P<pk>\d+)/delete/naive/$', views.NaiveAuthorDelete.as_view()), - (r'^edit/author/(?P<pk>\d+)/delete/redirect/$', + url(r'^edit/author/(?P<pk>\d+)/delete/redirect/$', views.NaiveAuthorDelete.as_view(success_url='/edit/authors/create/')), - (r'^edit/author/(?P<pk>\d+)/delete/interpolate_redirect/$', + url(r'^edit/author/(?P<pk>\d+)/delete/interpolate_redirect/$', views.NaiveAuthorDelete.as_view(success_url='/edit/authors/create/?deleted=%(id)s')), - (r'^edit/author/(?P<pk>\d+)/delete/$', + url(r'^edit/author/(?P<pk>\d+)/delete/$', views.AuthorDelete.as_view()), - (r'^edit/author/(?P<pk>\d+)/delete/special/$', + url(r'^edit/author/(?P<pk>\d+)/delete/special/$', views.SpecializedAuthorDelete.as_view()), # ArchiveIndexView - (r'^dates/books/$', + url(r'^dates/books/$', views.BookArchive.as_view()), - (r'^dates/books/context_object_name/$', + url(r'^dates/books/context_object_name/$', views.BookArchive.as_view(context_object_name='thingies')), - (r'^dates/books/allow_empty/$', + url(r'^dates/books/allow_empty/$', views.BookArchive.as_view(allow_empty=True)), - (r'^dates/books/template_name/$', + url(r'^dates/books/template_name/$', views.BookArchive.as_view(template_name='generic_views/list.html')), - (r'^dates/books/template_name_suffix/$', + url(r'^dates/books/template_name_suffix/$', views.BookArchive.as_view(template_name_suffix='_detail')), - (r'^dates/books/invalid/$', + url(r'^dates/books/invalid/$', views.BookArchive.as_view(queryset=None)), - (r'^dates/books/paginated/$', + url(r'^dates/books/paginated/$', views.BookArchive.as_view(paginate_by=10)), - (r'^dates/books/reverse/$', + url(r'^dates/books/reverse/$', views.BookArchive.as_view(queryset=models.Book.objects.order_by('pubdate'))), - (r'^dates/books/by_month/$', + url(r'^dates/books/by_month/$', views.BookArchive.as_view(date_list_period='month')), - (r'^dates/booksignings/$', + url(r'^dates/booksignings/$', views.BookSigningArchive.as_view()), # ListView - (r'^list/dict/$', + url(r'^list/dict/$', views.DictList.as_view()), - (r'^list/dict/paginated/$', + url(r'^list/dict/paginated/$', views.DictList.as_view(paginate_by=1)), url(r'^list/artists/$', views.ArtistList.as_view(), @@ -136,130 +132,130 @@ urlpatterns = patterns('', url(r'^list/authors/$', views.AuthorList.as_view(), name="authors_list"), - (r'^list/authors/paginated/$', + url(r'^list/authors/paginated/$', views.AuthorList.as_view(paginate_by=30)), - (r'^list/authors/paginated/(?P<page>\d+)/$', + url(r'^list/authors/paginated/(?P<page>\d+)/$', views.AuthorList.as_view(paginate_by=30)), - (r'^list/authors/paginated-orphaned/$', + url(r'^list/authors/paginated-orphaned/$', views.AuthorList.as_view(paginate_by=30, paginate_orphans=2)), - (r'^list/authors/notempty/$', + url(r'^list/authors/notempty/$', views.AuthorList.as_view(allow_empty=False)), - (r'^list/authors/notempty/paginated/$', + url(r'^list/authors/notempty/paginated/$', views.AuthorList.as_view(allow_empty=False, paginate_by=2)), - (r'^list/authors/template_name/$', + url(r'^list/authors/template_name/$', views.AuthorList.as_view(template_name='generic_views/list.html')), - (r'^list/authors/template_name_suffix/$', + url(r'^list/authors/template_name_suffix/$', views.AuthorList.as_view(template_name_suffix='_objects')), - (r'^list/authors/context_object_name/$', + url(r'^list/authors/context_object_name/$', views.AuthorList.as_view(context_object_name='author_list')), - (r'^list/authors/dupe_context_object_name/$', + url(r'^list/authors/dupe_context_object_name/$', views.AuthorList.as_view(context_object_name='object_list')), - (r'^list/authors/invalid/$', + url(r'^list/authors/invalid/$', views.AuthorList.as_view(queryset=None)), - (r'^list/authors/paginated/custom_class/$', + url(r'^list/authors/paginated/custom_class/$', views.AuthorList.as_view(paginate_by=5, paginator_class=views.CustomPaginator)), - (r'^list/authors/paginated/custom_page_kwarg/$', + url(r'^list/authors/paginated/custom_page_kwarg/$', views.AuthorList.as_view(paginate_by=30, page_kwarg='pagina')), - (r'^list/authors/paginated/custom_constructor/$', + url(r'^list/authors/paginated/custom_constructor/$', views.AuthorListCustomPaginator.as_view()), # YearArchiveView # Mixing keyword and positional captures below is intentional; the views # ought to be able to accept either. - (r'^dates/books/(?P<year>\d{4})/$', + url(r'^dates/books/(?P<year>\d{4})/$', views.BookYearArchive.as_view()), - (r'^dates/books/(?P<year>\d{4})/make_object_list/$', + url(r'^dates/books/(?P<year>\d{4})/make_object_list/$', views.BookYearArchive.as_view(make_object_list=True)), - (r'^dates/books/(?P<year>\d{4})/allow_empty/$', + url(r'^dates/books/(?P<year>\d{4})/allow_empty/$', views.BookYearArchive.as_view(allow_empty=True)), - (r'^dates/books/(?P<year>\d{4})/allow_future/$', + url(r'^dates/books/(?P<year>\d{4})/allow_future/$', views.BookYearArchive.as_view(allow_future=True)), - (r'^dates/books/(?P<year>\d{4})/paginated/$', + url(r'^dates/books/(?P<year>\d{4})/paginated/$', views.BookYearArchive.as_view(make_object_list=True, paginate_by=30)), - (r'^dates/books/no_year/$', + url(r'^dates/books/no_year/$', views.BookYearArchive.as_view()), - (r'^dates/books/(?P<year>\d{4})/reverse/$', + url(r'^dates/books/(?P<year>\d{4})/reverse/$', views.BookYearArchive.as_view(queryset=models.Book.objects.order_by('pubdate'))), - (r'^dates/booksignings/(?P<year>\d{4})/$', + url(r'^dates/booksignings/(?P<year>\d{4})/$', views.BookSigningYearArchive.as_view()), # MonthArchiveView - (r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/$', + url(r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/$', views.BookMonthArchive.as_view()), - (r'^dates/books/(?P<year>\d{4})/(?P<month>\d{1,2})/$', + url(r'^dates/books/(?P<year>\d{4})/(?P<month>\d{1,2})/$', views.BookMonthArchive.as_view(month_format='%m')), - (r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/allow_empty/$', + url(r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/allow_empty/$', views.BookMonthArchive.as_view(allow_empty=True)), - (r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/allow_future/$', + url(r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/allow_future/$', views.BookMonthArchive.as_view(allow_future=True)), - (r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/paginated/$', + url(r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/paginated/$', views.BookMonthArchive.as_view(paginate_by=30)), - (r'^dates/books/(?P<year>\d{4})/no_month/$', + url(r'^dates/books/(?P<year>\d{4})/no_month/$', views.BookMonthArchive.as_view()), - (r'^dates/booksignings/(?P<year>\d{4})/(?P<month>[a-z]{3})/$', + url(r'^dates/booksignings/(?P<year>\d{4})/(?P<month>[a-z]{3})/$', views.BookSigningMonthArchive.as_view()), # WeekArchiveView - (r'^dates/books/(?P<year>\d{4})/week/(?P<week>\d{1,2})/$', + url(r'^dates/books/(?P<year>\d{4})/week/(?P<week>\d{1,2})/$', views.BookWeekArchive.as_view()), - (r'^dates/books/(?P<year>\d{4})/week/(?P<week>\d{1,2})/allow_empty/$', + url(r'^dates/books/(?P<year>\d{4})/week/(?P<week>\d{1,2})/allow_empty/$', views.BookWeekArchive.as_view(allow_empty=True)), - (r'^dates/books/(?P<year>\d{4})/week/(?P<week>\d{1,2})/allow_future/$', + url(r'^dates/books/(?P<year>\d{4})/week/(?P<week>\d{1,2})/allow_future/$', views.BookWeekArchive.as_view(allow_future=True)), - (r'^dates/books/(?P<year>\d{4})/week/(?P<week>\d{1,2})/paginated/$', + url(r'^dates/books/(?P<year>\d{4})/week/(?P<week>\d{1,2})/paginated/$', views.BookWeekArchive.as_view(paginate_by=30)), - (r'^dates/books/(?P<year>\d{4})/week/no_week/$', + url(r'^dates/books/(?P<year>\d{4})/week/no_week/$', views.BookWeekArchive.as_view()), - (r'^dates/books/(?P<year>\d{4})/week/(?P<week>\d{1,2})/monday/$', + url(r'^dates/books/(?P<year>\d{4})/week/(?P<week>\d{1,2})/monday/$', views.BookWeekArchive.as_view(week_format='%W')), - (r'^dates/booksignings/(?P<year>\d{4})/week/(?P<week>\d{1,2})/$', + url(r'^dates/booksignings/(?P<year>\d{4})/week/(?P<week>\d{1,2})/$', views.BookSigningWeekArchive.as_view()), # DayArchiveView - (r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\d{1,2})/$', + url(r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\d{1,2})/$', views.BookDayArchive.as_view()), - (r'^dates/books/(?P<year>\d{4})/(?P<month>\d{1,2})/(?P<day>\d{1,2})/$', + url(r'^dates/books/(?P<year>\d{4})/(?P<month>\d{1,2})/(?P<day>\d{1,2})/$', views.BookDayArchive.as_view(month_format='%m')), - (r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\d{1,2})/allow_empty/$', + url(r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\d{1,2})/allow_empty/$', views.BookDayArchive.as_view(allow_empty=True)), - (r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\d{1,2})/allow_future/$', + url(r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\d{1,2})/allow_future/$', views.BookDayArchive.as_view(allow_future=True)), - (r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\d{1,2})/allow_empty_and_future/$', + url(r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\d{1,2})/allow_empty_and_future/$', views.BookDayArchive.as_view(allow_empty=True, allow_future=True)), - (r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\d{1,2})/paginated/$', + url(r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\d{1,2})/paginated/$', views.BookDayArchive.as_view(paginate_by=True)), - (r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/no_day/$', + url(r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/no_day/$', views.BookDayArchive.as_view()), - (r'^dates/booksignings/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\d{1,2})/$', + url(r'^dates/booksignings/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\d{1,2})/$', views.BookSigningDayArchive.as_view()), # TodayArchiveView - (r'^dates/books/today/$', + url(r'^dates/books/today/$', views.BookTodayArchive.as_view()), - (r'^dates/books/today/allow_empty/$', + url(r'^dates/books/today/allow_empty/$', views.BookTodayArchive.as_view(allow_empty=True)), - (r'^dates/booksignings/today/$', + url(r'^dates/booksignings/today/$', views.BookSigningTodayArchive.as_view()), # DateDetailView - (r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\d{1,2})/(?P<pk>\d+)/$', + url(r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\d{1,2})/(?P<pk>\d+)/$', views.BookDetail.as_view()), - (r'^dates/books/(?P<year>\d{4})/(?P<month>\d{1,2})/(?P<day>\d{1,2})/(?P<pk>\d+)/$', + url(r'^dates/books/(?P<year>\d{4})/(?P<month>\d{1,2})/(?P<day>\d{1,2})/(?P<pk>\d+)/$', views.BookDetail.as_view(month_format='%m')), - (r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\d{1,2})/(?P<pk>\d+)/allow_future/$', + url(r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\d{1,2})/(?P<pk>\d+)/allow_future/$', views.BookDetail.as_view(allow_future=True)), - (r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\d{1,2})/nopk/$', + url(r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\d{1,2})/nopk/$', views.BookDetail.as_view()), - (r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\d{1,2})/byslug/(?P<slug>[\w-]+)/$', + url(r'^dates/books/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\d{1,2})/byslug/(?P<slug>[\w-]+)/$', views.BookDetail.as_view()), - (r'^dates/books/get_object_custom_queryset/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\d{1,2})/(?P<pk>\d+)/$', + url(r'^dates/books/get_object_custom_queryset/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\d{1,2})/(?P<pk>\d+)/$', views.BookDetailGetObjectCustomQueryset.as_view()), - (r'^dates/booksignings/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\d{1,2})/(?P<pk>\d+)/$', + url(r'^dates/booksignings/(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\d{1,2})/(?P<pk>\d+)/$', views.BookSigningDetail.as_view()), # Useful for testing redirects - (r'^accounts/login/$', 'django.contrib.auth.views.login') -) + url(r'^accounts/login/$', 'django.contrib.auth.views.login') +] diff --git a/tests/handlers/urls.py b/tests/handlers/urls.py index eaf764b00b..dd8895aa1a 100644 --- a/tests/handlers/urls.py +++ b/tests/handlers/urls.py @@ -1,13 +1,13 @@ from __future__ import unicode_literals -from django.conf.urls import patterns, url +from django.conf.urls import url from . import views -urlpatterns = patterns('', +urlpatterns = [ url(r'^regular/$', views.regular), url(r'^streaming/$', views.streaming), url(r'^in_transaction/$', views.in_transaction), url(r'^not_in_transaction/$', views.not_in_transaction), url(r'^suspicious/$', views.suspicious), -) +] diff --git a/tests/i18n/patterns/urls/default.py b/tests/i18n/patterns/urls/default.py index ff52e26227..416c4e854f 100644 --- a/tests/i18n/patterns/urls/default.py +++ b/tests/i18n/patterns/urls/default.py @@ -1,4 +1,4 @@ -from django.conf.urls import patterns, include, url +from django.conf.urls import include, url from django.conf.urls.i18n import i18n_patterns from django.utils.translation import ugettext_lazy as _ from django.views.generic import TemplateView @@ -6,14 +6,14 @@ from django.views.generic import TemplateView view = TemplateView.as_view(template_name='dummy.html') -urlpatterns = patterns('', +urlpatterns = [ url(r'^not-prefixed/$', view, name='not-prefixed'), url(r'^not-prefixed-include/', include('i18n.patterns.urls.included')), url(_(r'^translated/$'), view, name='no-prefix-translated'), url(_(r'^translated/(?P<slug>[\w-]+)/$'), view, name='no-prefix-translated-slug'), -) +] -urlpatterns += i18n_patterns('', +urlpatterns += i18n_patterns( url(r'^prefixed/$', view, name='prefixed'), url(r'^prefixed\.xml$', view, name='prefixed_xml'), url(_(r'^users/$'), view, name='users'), diff --git a/tests/i18n/patterns/urls/disabled.py b/tests/i18n/patterns/urls/disabled.py index 60fd222024..f5059dd852 100644 --- a/tests/i18n/patterns/urls/disabled.py +++ b/tests/i18n/patterns/urls/disabled.py @@ -4,6 +4,6 @@ from django.views.generic import TemplateView view = TemplateView.as_view(template_name='dummy.html') -urlpatterns = i18n_patterns('', +urlpatterns = i18n_patterns( url(r'^prefixed/$', view, name='prefixed'), ) diff --git a/tests/i18n/patterns/urls/included.py b/tests/i18n/patterns/urls/included.py index 3f3d1325dd..eb4631c087 100644 --- a/tests/i18n/patterns/urls/included.py +++ b/tests/i18n/patterns/urls/included.py @@ -1,9 +1,9 @@ -from django.conf.urls import patterns, url +from django.conf.urls import url from django.views.generic import TemplateView view = TemplateView.as_view(template_name='dummy.html') -urlpatterns = patterns('', +urlpatterns = [ url(r'^foo/$', view, name='not-prefixed-included-url'), -) +] diff --git a/tests/i18n/patterns/urls/namespace.py b/tests/i18n/patterns/urls/namespace.py index 3a2467b7b5..570a7572e6 100644 --- a/tests/i18n/patterns/urls/namespace.py +++ b/tests/i18n/patterns/urls/namespace.py @@ -1,11 +1,11 @@ -from django.conf.urls import patterns, url +from django.conf.urls import url from django.utils.translation import ugettext_lazy as _ from django.views.generic import TemplateView view = TemplateView.as_view(template_name='dummy.html') -urlpatterns = patterns('', +urlpatterns = [ url(_(r'^register/$'), view, name='register'), url(_(r'^register-without-slash$'), view, name='register-without-slash'), -) +] diff --git a/tests/i18n/patterns/urls/path_unused.py b/tests/i18n/patterns/urls/path_unused.py index 1254d16c4e..cd17527bf0 100644 --- a/tests/i18n/patterns/urls/path_unused.py +++ b/tests/i18n/patterns/urls/path_unused.py @@ -1,10 +1,9 @@ from django.conf.urls import url -from django.conf.urls import patterns from django.views.generic import TemplateView view = TemplateView.as_view(template_name='dummy.html') -urlpatterns = patterns('', +urlpatterns = [ url(r'^nl/foo/', view, name='not-translated'), -) +] diff --git a/tests/i18n/patterns/urls/wrong.py b/tests/i18n/patterns/urls/wrong.py index deed258909..fe948e0563 100644 --- a/tests/i18n/patterns/urls/wrong.py +++ b/tests/i18n/patterns/urls/wrong.py @@ -3,6 +3,6 @@ from django.conf.urls.i18n import i18n_patterns from django.utils.translation import ugettext_lazy as _ -urlpatterns = i18n_patterns('', +urlpatterns = i18n_patterns( url(_(r'^account/'), include('i18n.patterns.urls.wrong_namespace', namespace='account')), ) diff --git a/tests/i18n/patterns/urls/wrong_namespace.py b/tests/i18n/patterns/urls/wrong_namespace.py index 2f7105d637..f3b55b69fe 100644 --- a/tests/i18n/patterns/urls/wrong_namespace.py +++ b/tests/i18n/patterns/urls/wrong_namespace.py @@ -6,6 +6,6 @@ from django.views.generic import TemplateView view = TemplateView.as_view(template_name='dummy.html') -urlpatterns = i18n_patterns('', +urlpatterns = i18n_patterns( url(_(r'^register/$'), view, name='register'), ) diff --git a/tests/i18n/urls.py b/tests/i18n/urls.py index c7d01897f5..d225bff453 100644 --- a/tests/i18n/urls.py +++ b/tests/i18n/urls.py @@ -1,10 +1,17 @@ from __future__ import unicode_literals +import warnings from django.conf.urls.i18n import i18n_patterns from django.http import HttpResponse, StreamingHttpResponse from django.utils.translation import ugettext_lazy as _ -urlpatterns = i18n_patterns('', - (r'^simple/$', lambda r: HttpResponse()), - (r'^streaming/$', lambda r: StreamingHttpResponse([_("Yes"), "/", _("No")])), -) + +# test deprecated version of i18_patterns() function (with prefix). Remove it +# and convert to list of urls() in Django 2.0 +with warnings.catch_warnings(record=True): + warnings.filterwarnings('ignore', module='django.conf.urls.18n') + + urlpatterns = i18n_patterns('', + (r'^simple/$', lambda r: HttpResponse()), + (r'^streaming/$', lambda r: StreamingHttpResponse([_("Yes"), "/", _("No")])), + ) diff --git a/tests/logging_tests/urls.py b/tests/logging_tests/urls.py index c738bd565c..50f86cdbb2 100644 --- a/tests/logging_tests/urls.py +++ b/tests/logging_tests/urls.py @@ -1,10 +1,10 @@ from __future__ import unicode_literals -from django.conf.urls import patterns, url +from django.conf.urls import url from . import views -urlpatterns = patterns('', +urlpatterns = [ url(r'^suspicious/$', views.suspicious), url(r'^suspicious_spec/$', views.suspicious_spec), -) +] diff --git a/tests/middleware/cond_get_urls.py b/tests/middleware/cond_get_urls.py index 1dadd0d31a..a100cfdafb 100644 --- a/tests/middleware/cond_get_urls.py +++ b/tests/middleware/cond_get_urls.py @@ -1,6 +1,6 @@ -from django.conf.urls import patterns +from django.conf.urls import url from django.http import HttpResponse -urlpatterns = patterns('', - (r'^$', lambda request: HttpResponse('root is here')), -) +urlpatterns = [ + url(r'^$', lambda request: HttpResponse('root is here')), +] diff --git a/tests/middleware/extra_urls.py b/tests/middleware/extra_urls.py index c051296a74..3b1fb85604 100644 --- a/tests/middleware/extra_urls.py +++ b/tests/middleware/extra_urls.py @@ -1,7 +1,7 @@ -from django.conf.urls import patterns +from django.conf.urls import url -urlpatterns = patterns('', - (r'^customurlconf/noslash$', 'view'), - (r'^customurlconf/slash/$', 'view'), - (r'^customurlconf/needsquoting#/$', 'view'), -) +urlpatterns = [ + url(r'^customurlconf/noslash$', 'view'), + url(r'^customurlconf/slash/$', 'view'), + url(r'^customurlconf/needsquoting#/$', 'view'), +] diff --git a/tests/middleware/urls.py b/tests/middleware/urls.py index 217e3ae034..c429bb90fe 100644 --- a/tests/middleware/urls.py +++ b/tests/middleware/urls.py @@ -1,7 +1,7 @@ -from django.conf.urls import patterns +from django.conf.urls import url -urlpatterns = patterns('', - (r'^noslash$', 'view'), - (r'^slash/$', 'view'), - (r'^needsquoting#/$', 'view'), -) +urlpatterns = [ + url(r'^noslash$', 'view'), + url(r'^slash/$', 'view'), + url(r'^needsquoting#/$', 'view'), +] diff --git a/tests/middleware_exceptions/urls.py b/tests/middleware_exceptions/urls.py index fcef638553..6fde4fd942 100644 --- a/tests/middleware_exceptions/urls.py +++ b/tests/middleware_exceptions/urls.py @@ -1,14 +1,14 @@ -from django.conf.urls import patterns +from django.conf.urls import url from . import views -urlpatterns = patterns('', - (r'^middleware_exceptions/view/$', views.normal_view), - (r'^middleware_exceptions/not_found/$', views.not_found), - (r'^middleware_exceptions/error/$', views.server_error), - (r'^middleware_exceptions/null_view/$', views.null_view), - (r'^middleware_exceptions/permission_denied/$', views.permission_denied), +urlpatterns = [ + url(r'^middleware_exceptions/view/$', views.normal_view), + url(r'^middleware_exceptions/not_found/$', views.not_found), + url(r'^middleware_exceptions/error/$', views.server_error), + url(r'^middleware_exceptions/null_view/$', views.null_view), + url(r'^middleware_exceptions/permission_denied/$', views.permission_denied), - (r'^middleware_exceptions/template_response/$', views.template_response), - (r'^middleware_exceptions/template_response_error/$', views.template_response_error), -) + url(r'^middleware_exceptions/template_response/$', views.template_response), + url(r'^middleware_exceptions/template_response_error/$', views.template_response_error), +] diff --git a/tests/model_permalink/urls.py b/tests/model_permalink/urls.py index 409fc222c8..cbe50288b8 100644 --- a/tests/model_permalink/urls.py +++ b/tests/model_permalink/urls.py @@ -1,5 +1,5 @@ -from django.conf.urls import patterns, url +from django.conf.urls import url -urlpatterns = patterns('', +urlpatterns = [ url(r'^guitarists/(\w{1,50})/$', 'unimplemented_view_placeholder', name='guitarist_detail'), -) +] diff --git a/tests/proxy_models/urls.py b/tests/proxy_models/urls.py index 644a34f556..6fcf1e055b 100644 --- a/tests/proxy_models/urls.py +++ b/tests/proxy_models/urls.py @@ -1,7 +1,7 @@ -from django.conf.urls import patterns, include +from django.conf.urls import include, url from django.contrib import admin -urlpatterns = patterns('', - (r'^admin/', include(admin.site.urls)), -) +urlpatterns = [ + url(r'^admin/', include(admin.site.urls)), +] diff --git a/tests/resolve_url/urls.py b/tests/resolve_url/urls.py index f03ac1a412..eb3720a503 100644 --- a/tests/resolve_url/urls.py +++ b/tests/resolve_url/urls.py @@ -1,6 +1,6 @@ -from django.conf.urls import patterns +from django.conf.urls import url +from django.contrib.auth import views - -urlpatterns = patterns('', - (r'^accounts/logout/$', 'django.contrib.auth.views.logout') -) +urlpatterns = [ + url(r'^accounts/logout/$', views.logout), +] diff --git a/tests/servers/urls.py b/tests/servers/urls.py index 03393c30ec..002e604105 100644 --- a/tests/servers/urls.py +++ b/tests/servers/urls.py @@ -1,11 +1,11 @@ -from django.conf.urls import patterns, url +from django.conf.urls import url from . import views -urlpatterns = patterns('', +urlpatterns = [ url(r'^example_view/$', views.example_view), url(r'^model_view/$', views.model_view), url(r'^create_model_instance/$', views.create_model_instance), url(r'^environ_view/$', views.environ_view), -) +] diff --git a/tests/staticfiles_tests/urls/default.py b/tests/staticfiles_tests/urls/default.py index e50a9e2907..5931ebc3be 100644 --- a/tests/staticfiles_tests/urls/default.py +++ b/tests/staticfiles_tests/urls/default.py @@ -1,5 +1,6 @@ -from django.conf.urls import patterns, url +from django.conf.urls import url +from django.contrib.staticfiles import views -urlpatterns = patterns('', - url(r'^static/(?P<path>.*)$', 'django.contrib.staticfiles.views.serve'), -) +urlpatterns = [ + url(r'^static/(?P<path>.*)$', views.serve), +] diff --git a/tests/syndication_tests/urls.py b/tests/syndication_tests/urls.py index 1b5d77f2e1..3e50c098b0 100644 --- a/tests/syndication_tests/urls.py +++ b/tests/syndication_tests/urls.py @@ -1,24 +1,24 @@ -from django.conf.urls import patterns +from django.conf.urls import url from . import feeds -urlpatterns = patterns('django.contrib.syndication.views', - (r'^syndication/complex/(?P<foo>.*)/$', feeds.ComplexFeed()), - (r'^syndication/rss2/$', feeds.TestRss2Feed()), - (r'^syndication/rss2/guid_ispermalink_true/$', +urlpatterns = [ + url(r'^syndication/complex/(?P<foo>.*)/$', feeds.ComplexFeed()), + url(r'^syndication/rss2/$', feeds.TestRss2Feed()), + url(r'^syndication/rss2/guid_ispermalink_true/$', feeds.TestRss2FeedWithGuidIsPermaLinkTrue()), - (r'^syndication/rss2/guid_ispermalink_false/$', + url(r'^syndication/rss2/guid_ispermalink_false/$', feeds.TestRss2FeedWithGuidIsPermaLinkFalse()), - (r'^syndication/rss091/$', feeds.TestRss091Feed()), - (r'^syndication/no_pubdate/$', feeds.TestNoPubdateFeed()), - (r'^syndication/atom/$', feeds.TestAtomFeed()), - (r'^syndication/latest/$', feeds.TestLatestFeed()), - (r'^syndication/custom/$', feeds.TestCustomFeed()), - (r'^syndication/naive-dates/$', feeds.NaiveDatesFeed()), - (r'^syndication/aware-dates/$', feeds.TZAwareDatesFeed()), - (r'^syndication/feedurl/$', feeds.TestFeedUrlFeed()), - (r'^syndication/articles/$', feeds.ArticlesFeed()), - (r'^syndication/template/$', feeds.TemplateFeed()), - (r'^syndication/template_context/$', feeds.TemplateContextFeed()), -) + url(r'^syndication/rss091/$', feeds.TestRss091Feed()), + url(r'^syndication/no_pubdate/$', feeds.TestNoPubdateFeed()), + url(r'^syndication/atom/$', feeds.TestAtomFeed()), + url(r'^syndication/latest/$', feeds.TestLatestFeed()), + url(r'^syndication/custom/$', feeds.TestCustomFeed()), + url(r'^syndication/naive-dates/$', feeds.NaiveDatesFeed()), + url(r'^syndication/aware-dates/$', feeds.TZAwareDatesFeed()), + url(r'^syndication/feedurl/$', feeds.TestFeedUrlFeed()), + url(r'^syndication/articles/$', feeds.ArticlesFeed()), + url(r'^syndication/template/$', feeds.TemplateFeed()), + url(r'^syndication/template_context/$', feeds.TemplateContextFeed()), +] diff --git a/tests/template_tests/alternate_urls.py b/tests/template_tests/alternate_urls.py index 3c6a4e62f9..9b05aa619b 100644 --- a/tests/template_tests/alternate_urls.py +++ b/tests/template_tests/alternate_urls.py @@ -1,12 +1,12 @@ -from django.conf.urls import patterns, url +from django.conf.urls import url from . import views -urlpatterns = patterns('', +urlpatterns = [ # View returning a template response - (r'^template_response_view/$', views.template_response_view), + url(r'^template_response_view/$', views.template_response_view), # A view that can be hard to find... url(r'^snark/', views.snark, name='snark'), -) +] diff --git a/tests/template_tests/urls.py b/tests/template_tests/urls.py index f3720bbda7..2b7a313206 100644 --- a/tests/template_tests/urls.py +++ b/tests/template_tests/urls.py @@ -1,20 +1,19 @@ # coding: utf-8 from __future__ import unicode_literals -from django.conf.urls import patterns, url +from django.conf.urls import url from . import views -urlpatterns = patterns('', - +urlpatterns = [ # Test urls for testing reverse lookups - (r'^$', views.index), - (r'^client/([\d,]+)/$', views.client), - (r'^client/(?P<id>\d+)/(?P<action>[^/]+)/$', views.client_action), - (r'^client/(?P<client_id>\d+)/(?P<action>[^/]+)/$', views.client_action), + url(r'^$', views.index), + url(r'^client/([\d,]+)/$', views.client), + url(r'^client/(?P<id>\d+)/(?P<action>[^/]+)/$', views.client_action), + url(r'^client/(?P<client_id>\d+)/(?P<action>[^/]+)/$', views.client_action), url(r'^named-client/(\d+)/$', views.client2, name="named.client"), # Unicode strings are permitted everywhere. url(r'^Юникод/(\w+)/$', views.client2, name="метка_оператора"), url(r'^Юникод/(?P<tag>\S+)/$', 'template_tests.views.client2', name="метка_оператора_2"), -) +] diff --git a/tests/test_client/urls.py b/tests/test_client/urls.py index 83f6fede35..554c934fe7 100644 --- a/tests/test_client/urls.py +++ b/tests/test_client/urls.py @@ -1,37 +1,37 @@ -from django.conf.urls import patterns +from django.conf.urls import url from django.views.generic import RedirectView from . import views -urlpatterns = patterns('', - (r'^get_view/$', views.get_view), - (r'^post_view/$', views.post_view), - (r'^header_view/$', views.view_with_header), - (r'^raw_post_view/$', views.raw_post_view), - (r'^redirect_view/$', views.redirect_view), - (r'^secure_view/$', views.view_with_secure), - (r'^permanent_redirect_view/$', RedirectView.as_view(url='/get_view/')), - (r'^temporary_redirect_view/$', RedirectView.as_view(url='/get_view/', permanent=False)), - (r'^http_redirect_view/$', RedirectView.as_view(url='/secure_view/')), - (r'^https_redirect_view/$', RedirectView.as_view(url='https://testserver/secure_view/')), - (r'^double_redirect_view/$', views.double_redirect_view), - (r'^bad_view/$', views.bad_view), - (r'^form_view/$', views.form_view), - (r'^form_view_with_template/$', views.form_view_with_template), - (r'^formset_view/$', views.formset_view), - (r'^login_protected_view/$', views.login_protected_view), - (r'^login_protected_method_view/$', views.login_protected_method_view), - (r'^login_protected_view_custom_redirect/$', views.login_protected_view_changed_redirect), - (r'^permission_protected_view/$', views.permission_protected_view), - (r'^permission_protected_view_exception/$', views.permission_protected_view_exception), - (r'^permission_protected_method_view/$', views.permission_protected_method_view), - (r'^session_view/$', views.session_view), - (r'^broken_view/$', views.broken_view), - (r'^mail_sending_view/$', views.mail_sending_view), - (r'^mass_mail_sending_view/$', views.mass_mail_sending_view), - (r'^django_project_redirect/$', views.django_project_redirect), +urlpatterns = [ + url(r'^get_view/$', views.get_view), + url(r'^post_view/$', views.post_view), + url(r'^header_view/$', views.view_with_header), + url(r'^raw_post_view/$', views.raw_post_view), + url(r'^redirect_view/$', views.redirect_view), + url(r'^secure_view/$', views.view_with_secure), + url(r'^permanent_redirect_view/$', RedirectView.as_view(url='/get_view/')), + url(r'^temporary_redirect_view/$', RedirectView.as_view(url='/get_view/', permanent=False)), + url(r'^http_redirect_view/$', RedirectView.as_view(url='/secure_view/')), + url(r'^https_redirect_view/$', RedirectView.as_view(url='https://testserver/secure_view/')), + url(r'^double_redirect_view/$', views.double_redirect_view), + url(r'^bad_view/$', views.bad_view), + url(r'^form_view/$', views.form_view), + url(r'^form_view_with_template/$', views.form_view_with_template), + url(r'^formset_view/$', views.formset_view), + url(r'^login_protected_view/$', views.login_protected_view), + url(r'^login_protected_method_view/$', views.login_protected_method_view), + url(r'^login_protected_view_custom_redirect/$', views.login_protected_view_changed_redirect), + url(r'^permission_protected_view/$', views.permission_protected_view), + url(r'^permission_protected_view_exception/$', views.permission_protected_view_exception), + url(r'^permission_protected_method_view/$', views.permission_protected_method_view), + url(r'^session_view/$', views.session_view), + url(r'^broken_view/$', views.broken_view), + url(r'^mail_sending_view/$', views.mail_sending_view), + url(r'^mass_mail_sending_view/$', views.mass_mail_sending_view), + url(r'^django_project_redirect/$', views.django_project_redirect), - (r'^accounts/login/$', 'django.contrib.auth.views.login', {'template_name': 'login.html'}), - (r'^accounts/logout/$', 'django.contrib.auth.views.logout'), -) + url(r'^accounts/login/$', 'django.contrib.auth.views.login', {'template_name': 'login.html'}), + url(r'^accounts/logout/$', 'django.contrib.auth.views.logout'), +] diff --git a/tests/test_client_regress/urls.py b/tests/test_client_regress/urls.py index c789fed2e7..44bbebfcd8 100644 --- a/tests/test_client_regress/urls.py +++ b/tests/test_client_regress/urls.py @@ -1,40 +1,40 @@ -from django.conf.urls import patterns, url, include +from django.conf.urls import url, include from django.views.generic import RedirectView from . import views -urlpatterns = patterns('', - (r'', include('test_client.urls')), +urlpatterns = [ + url(r'', include('test_client.urls')), - (r'^no_template_view/$', views.no_template_view), - (r'^staff_only/$', views.staff_only_view), - (r'^get_view/$', views.get_view), - (r'^request_data/$', views.request_data), - (r'^request_data_extended/$', views.request_data, {'template': 'extended.html', 'data': 'bacon'}), + url(r'^no_template_view/$', views.no_template_view), + url(r'^staff_only/$', views.staff_only_view), + url(r'^get_view/$', views.get_view), + url(r'^request_data/$', views.request_data), + url(r'^request_data_extended/$', views.request_data, {'template': 'extended.html', 'data': 'bacon'}), url(r'^arg_view/(?P<name>.+)/$', views.view_with_argument, name='arg_view'), url(r'^nested_view/$', views.nested_view, name='nested_view'), - (r'^login_protected_redirect_view/$', views.login_protected_redirect_view), - (r'^redirects/$', RedirectView.as_view(url='/redirects/further/')), - (r'^redirects/further/$', RedirectView.as_view(url='/redirects/further/more/')), - (r'^redirects/further/more/$', RedirectView.as_view(url='/no_template_view/')), - (r'^redirect_to_non_existent_view/$', RedirectView.as_view(url='/non_existent_view/')), - (r'^redirect_to_non_existent_view2/$', RedirectView.as_view(url='/redirect_to_non_existent_view/')), - (r'^redirect_to_self/$', RedirectView.as_view(url='/redirect_to_self/')), - (r'^circular_redirect_1/$', RedirectView.as_view(url='/circular_redirect_2/')), - (r'^circular_redirect_2/$', RedirectView.as_view(url='/circular_redirect_3/')), - (r'^circular_redirect_3/$', RedirectView.as_view(url='/circular_redirect_1/')), - (r'^redirect_other_host/$', RedirectView.as_view(url='https://otherserver:8443/no_template_view/')), - (r'^set_session/$', views.set_session_view), - (r'^check_session/$', views.check_session_view), - (r'^request_methods/$', views.request_methods_view), - (r'^check_unicode/$', views.return_unicode), - (r'^check_binary/$', views.return_undecodable_binary), - (r'^parse_unicode_json/$', views.return_json_file), - (r'^check_headers/$', views.check_headers), - (r'^check_headers_redirect/$', RedirectView.as_view(url='/check_headers/')), - (r'^body/$', views.body), - (r'^read_all/$', views.read_all), - (r'^read_buffer/$', views.read_buffer), - (r'^request_context_view/$', views.request_context_view), -) + url(r'^login_protected_redirect_view/$', views.login_protected_redirect_view), + url(r'^redirects/$', RedirectView.as_view(url='/redirects/further/')), + url(r'^redirects/further/$', RedirectView.as_view(url='/redirects/further/more/')), + url(r'^redirects/further/more/$', RedirectView.as_view(url='/no_template_view/')), + url(r'^redirect_to_non_existent_view/$', RedirectView.as_view(url='/non_existent_view/')), + url(r'^redirect_to_non_existent_view2/$', RedirectView.as_view(url='/redirect_to_non_existent_view/')), + url(r'^redirect_to_self/$', RedirectView.as_view(url='/redirect_to_self/')), + url(r'^circular_redirect_1/$', RedirectView.as_view(url='/circular_redirect_2/')), + url(r'^circular_redirect_2/$', RedirectView.as_view(url='/circular_redirect_3/')), + url(r'^circular_redirect_3/$', RedirectView.as_view(url='/circular_redirect_1/')), + url(r'^redirect_other_host/$', RedirectView.as_view(url='https://otherserver:8443/no_template_view/')), + url(r'^set_session/$', views.set_session_view), + url(r'^check_session/$', views.check_session_view), + url(r'^request_methods/$', views.request_methods_view), + url(r'^check_unicode/$', views.return_unicode), + url(r'^check_binary/$', views.return_undecodable_binary), + url(r'^parse_unicode_json/$', views.return_json_file), + url(r'^check_headers/$', views.check_headers), + url(r'^check_headers_redirect/$', RedirectView.as_view(url='/check_headers/')), + url(r'^body/$', views.body), + url(r'^read_all/$', views.read_all), + url(r'^read_buffer/$', views.read_buffer), + url(r'^request_context_view/$', views.request_context_view), +] diff --git a/tests/test_utils/tests.py b/tests/test_utils/tests.py index d3c7aec1f3..f41c06e647 100644 --- a/tests/test_utils/tests.py +++ b/tests/test_utils/tests.py @@ -3,7 +3,7 @@ from __future__ import unicode_literals import unittest -from django.conf.urls import patterns, url +from django.conf.urls import url from django.core.urlresolvers import reverse from django.db import connection from django.forms import EmailField, IntegerField @@ -628,11 +628,11 @@ def fake_view(request): class FirstUrls: - urlpatterns = patterns('', url(r'first/$', fake_view, name='first')) + urlpatterns = [url(r'first/$', fake_view, name='first')] class SecondUrls: - urlpatterns = patterns('', url(r'second/$', fake_view, name='second')) + urlpatterns = [url(r'second/$', fake_view, name='second')] class OverrideSettingsTests(TestCase): diff --git a/tests/test_utils/urls.py b/tests/test_utils/urls.py index c3f2ec4e4b..4aade3d572 100644 --- a/tests/test_utils/urls.py +++ b/tests/test_utils/urls.py @@ -1,9 +1,9 @@ -from django.conf.urls import patterns +from django.conf.urls import url from . import views -urlpatterns = patterns('', - (r'^test_utils/get_person/(\d+)/$', views.get_person), - (r'^test_utils/no_template_used/$', views.no_template_used), -) +urlpatterns = [ + url(r'^test_utils/get_person/(\d+)/$', views.get_person), + url(r'^test_utils/no_template_used/$', views.no_template_used), +] diff --git a/tests/timezones/urls.py b/tests/timezones/urls.py index bb028d917a..1d1ec38f64 100644 --- a/tests/timezones/urls.py +++ b/tests/timezones/urls.py @@ -1,8 +1,8 @@ -from django.conf.urls import patterns, include +from django.conf.urls import include, url from django.contrib import admin from . import admin as tz_admin # NOQA: register tz_admin -urlpatterns = patterns('', - (r'^admin/', include(admin.site.urls)), -) +urlpatterns = [ + url(r'^admin/', include(admin.site.urls)), +] diff --git a/tests/urlpatterns_reverse/erroneous_urls.py b/tests/urlpatterns_reverse/erroneous_urls.py index ac6b6f7cb3..213642008d 100644 --- a/tests/urlpatterns_reverse/erroneous_urls.py +++ b/tests/urlpatterns_reverse/erroneous_urls.py @@ -1,6 +1,6 @@ -from django.conf.urls import patterns, url +from django.conf.urls import url -urlpatterns = patterns('', +urlpatterns = [ # View has erroneous import url(r'erroneous_inner/$', 'urlpatterns_reverse.views.erroneous_view'), # Module has erroneous import @@ -13,4 +13,4 @@ urlpatterns = patterns('', url(r'missing_outer/$', 'urlpatterns_reverse.missing_module.missing_view'), # Regex contains an error (refs #6170) url(r'(regex_error/$', 'regressiontestes.urlpatterns_reverse.views.empty_view'), -) +] diff --git a/tests/urlpatterns_reverse/extra_urls.py b/tests/urlpatterns_reverse/extra_urls.py index 94e225fb46..4eb2f02130 100644 --- a/tests/urlpatterns_reverse/extra_urls.py +++ b/tests/urlpatterns_reverse/extra_urls.py @@ -2,14 +2,14 @@ Some extra URL patterns that are included at the top level. """ -from django.conf.urls import patterns, url, include +from django.conf.urls import url, include from .views import empty_view -urlpatterns = patterns('', +urlpatterns = [ url(r'^e-places/(\d+)/$', empty_view, name='extra-places'), url(r'^e-people/(?P<name>\w+)/$', empty_view, name="extra-people"), url('', include('urlpatterns_reverse.included_urls2')), url(r'^prefix/(?P<prefix>\w+)/', include('urlpatterns_reverse.included_urls2')), -) +] diff --git a/tests/urlpatterns_reverse/included_named_urls.py b/tests/urlpatterns_reverse/included_named_urls.py index 14d2525114..d8a6a16481 100644 --- a/tests/urlpatterns_reverse/included_named_urls.py +++ b/tests/urlpatterns_reverse/included_named_urls.py @@ -1,11 +1,11 @@ -from django.conf.urls import patterns, url, include +from django.conf.urls import url, include from .views import empty_view -urlpatterns = patterns('', +urlpatterns = [ url(r'^$', empty_view, name="named-url3"), url(r'^extra/(?P<extra>\w+)/$', empty_view, name="named-url4"), url(r'^(?P<one>\d+)|(?P<two>\d+)/$', empty_view), - (r'^included/', include('urlpatterns_reverse.included_named_urls2')), -) + url(r'^included/', include('urlpatterns_reverse.included_named_urls2')), +] diff --git a/tests/urlpatterns_reverse/included_named_urls2.py b/tests/urlpatterns_reverse/included_named_urls2.py index 897d9e7487..cb8c893b48 100644 --- a/tests/urlpatterns_reverse/included_named_urls2.py +++ b/tests/urlpatterns_reverse/included_named_urls2.py @@ -1,10 +1,10 @@ -from django.conf.urls import patterns, url +from django.conf.urls import url from .views import empty_view -urlpatterns = patterns('', +urlpatterns = [ url(r'^$', empty_view, name="named-url5"), url(r'^extra/(?P<extra>\w+)/$', empty_view, name="named-url6"), url(r'^(?P<one>\d+)|(?P<two>\d+)/$', empty_view), -) +] diff --git a/tests/urlpatterns_reverse/included_namespace_urls.py b/tests/urlpatterns_reverse/included_namespace_urls.py index aaa1a03687..1b28552ade 100644 --- a/tests/urlpatterns_reverse/included_namespace_urls.py +++ b/tests/urlpatterns_reverse/included_namespace_urls.py @@ -1,3 +1,5 @@ +import warnings + from django.conf.urls import patterns, url, include from .namespace_urls import URLObject @@ -6,18 +8,22 @@ from .views import view_class_instance testobj3 = URLObject('testapp', 'test-ns3') -urlpatterns = patterns('urlpatterns_reverse.views', - url(r'^normal/$', 'empty_view', name='inc-normal-view'), - url(r'^normal/(?P<arg1>\d+)/(?P<arg2>\d+)/$', 'empty_view', name='inc-normal-view'), +# test deprecated patterns() function. convert to list of urls() in Django 2.0 +with warnings.catch_warnings(record=True) as w: + warnings.filterwarnings('ignore', module='django.conf.urls') + + urlpatterns = patterns('urlpatterns_reverse.views', + url(r'^normal/$', 'empty_view', name='inc-normal-view'), + url(r'^normal/(?P<arg1>\d+)/(?P<arg2>\d+)/$', 'empty_view', name='inc-normal-view'), - url(r'^\+\\\$\*/$', 'empty_view', name='inc-special-view'), + url(r'^\+\\\$\*/$', 'empty_view', name='inc-special-view'), - url(r'^mixed_args/(\d+)/(?P<arg2>\d+)/$', 'empty_view', name='inc-mixed-args'), - url(r'^no_kwargs/(\d+)/(\d+)/$', 'empty_view', name='inc-no-kwargs'), + url(r'^mixed_args/(\d+)/(?P<arg2>\d+)/$', 'empty_view', name='inc-mixed-args'), + url(r'^no_kwargs/(\d+)/(\d+)/$', 'empty_view', name='inc-no-kwargs'), - url(r'^view_class/(?P<arg1>\d+)/(?P<arg2>\d+)/$', view_class_instance, name='inc-view-class'), + url(r'^view_class/(?P<arg1>\d+)/(?P<arg2>\d+)/$', view_class_instance, name='inc-view-class'), - (r'^test3/', include(testobj3.urls)), - (r'^ns-included3/', include('urlpatterns_reverse.included_urls', namespace='inc-ns3')), - (r'^ns-included4/', include('urlpatterns_reverse.namespace_urls', namespace='inc-ns4')), -) + (r'^test3/', include(testobj3.urls)), + (r'^ns-included3/', include('urlpatterns_reverse.included_urls', namespace='inc-ns3')), + (r'^ns-included4/', include('urlpatterns_reverse.namespace_urls', namespace='inc-ns4')), + ) diff --git a/tests/urlpatterns_reverse/included_no_kwargs_urls.py b/tests/urlpatterns_reverse/included_no_kwargs_urls.py index e408487f9b..bed77f7a18 100644 --- a/tests/urlpatterns_reverse/included_no_kwargs_urls.py +++ b/tests/urlpatterns_reverse/included_no_kwargs_urls.py @@ -1,8 +1,8 @@ -from django.conf.urls import patterns, url +from django.conf.urls import url from .views import empty_view -urlpatterns = patterns('', +urlpatterns = [ url(r'^inner-no-kwargs/(\d+)/', empty_view, name="inner-no-kwargs") -) +] diff --git a/tests/urlpatterns_reverse/included_urls.py b/tests/urlpatterns_reverse/included_urls.py index af6b6882e0..bbc8537820 100644 --- a/tests/urlpatterns_reverse/included_urls.py +++ b/tests/urlpatterns_reverse/included_urls.py @@ -1,10 +1,10 @@ -from django.conf.urls import patterns, url +from django.conf.urls import url from .views import empty_view -urlpatterns = patterns('', +urlpatterns = [ url(r'^$', empty_view, name="inner-nothing"), url(r'^extra/(?P<extra>\w+)/$', empty_view, name="inner-extra"), url(r'^(?P<one>\d+)|(?P<two>\d+)/$', empty_view, name="inner-disjunction"), -) +] diff --git a/tests/urlpatterns_reverse/included_urls2.py b/tests/urlpatterns_reverse/included_urls2.py index 9dcafc8535..ac8c770e7f 100644 --- a/tests/urlpatterns_reverse/included_urls2.py +++ b/tests/urlpatterns_reverse/included_urls2.py @@ -5,12 +5,12 @@ each name to resolve and Django must distinguish the possibilities based on the argument list. """ -from django.conf.urls import patterns, url +from django.conf.urls import url from .views import empty_view -urlpatterns = patterns('', +urlpatterns = [ url(r'^part/(?P<value>\w+)/$', empty_view, name="part"), url(r'^part2/(?:(?P<value>\w+)/)?$', empty_view, name="part2"), -) +] diff --git a/tests/urlpatterns_reverse/named_urls.py b/tests/urlpatterns_reverse/named_urls.py index d4d35bac33..a4de1e1b87 100644 --- a/tests/urlpatterns_reverse/named_urls.py +++ b/tests/urlpatterns_reverse/named_urls.py @@ -1,11 +1,11 @@ -from django.conf.urls import patterns, url, include +from django.conf.urls import url, include from .views import empty_view -urlpatterns = patterns('', +urlpatterns = [ url(r'^$', empty_view, name="named-url1"), url(r'^extra/(?P<extra>\w+)/$', empty_view, name="named-url2"), url(r'^(?P<one>\d+)|(?P<two>\d+)/$', empty_view), - (r'^included/', include('urlpatterns_reverse.included_named_urls')), -) + url(r'^included/', include('urlpatterns_reverse.included_named_urls')), +] diff --git a/tests/urlpatterns_reverse/namespace_urls.py b/tests/urlpatterns_reverse/namespace_urls.py index 014bc65990..cb4453fe57 100644 --- a/tests/urlpatterns_reverse/namespace_urls.py +++ b/tests/urlpatterns_reverse/namespace_urls.py @@ -1,6 +1,6 @@ -from django.conf.urls import patterns, url, include +from django.conf.urls import url, include -from .views import view_class_instance +from . import views class URLObject(object): @@ -9,11 +9,11 @@ class URLObject(object): self.namespace = namespace def urls(self): - return patterns('', + return ([ url(r'^inner/$', 'empty_view', name='urlobject-view'), url(r'^inner/(?P<arg1>\d+)/(?P<arg2>\d+)/$', 'empty_view', name='urlobject-view'), url(r'^inner/\+\\\$\*/$', 'empty_view', name='urlobject-special-view'), - ), self.app_name, self.namespace + ], self.app_name, self.namespace) urls = property(urls) testobj1 = URLObject('testapp', 'test-ns1') @@ -23,35 +23,35 @@ default_testobj = URLObject('testapp', 'testapp') otherobj1 = URLObject('nodefault', 'other-ns1') otherobj2 = URLObject('nodefault', 'other-ns2') -urlpatterns = patterns('urlpatterns_reverse.views', - url(r'^normal/$', 'empty_view', name='normal-view'), - url(r'^normal/(?P<arg1>\d+)/(?P<arg2>\d+)/$', 'empty_view', name='normal-view'), - url(r'^resolver_match/$', 'pass_resolver_match_view', name='test-resolver-match'), +urlpatterns = [ + url(r'^normal/$', views.empty_view, name='normal-view'), + url(r'^normal/(?P<arg1>\d+)/(?P<arg2>\d+)/$', views.empty_view, name='normal-view'), + url(r'^resolver_match/$', views.pass_resolver_match_view, name='test-resolver-match'), - url(r'^\+\\\$\*/$', 'empty_view', name='special-view'), + url(r'^\+\\\$\*/$', views.empty_view, name='special-view'), - url(r'^mixed_args/(\d+)/(?P<arg2>\d+)/$', 'empty_view', name='mixed-args'), - url(r'^no_kwargs/(\d+)/(\d+)/$', 'empty_view', name='no-kwargs'), + url(r'^mixed_args/(\d+)/(?P<arg2>\d+)/$', views.empty_view, name='mixed-args'), + url(r'^no_kwargs/(\d+)/(\d+)/$', views.empty_view, name='no-kwargs'), - url(r'^view_class/(?P<arg1>\d+)/(?P<arg2>\d+)/$', view_class_instance, name='view-class'), + url(r'^view_class/(?P<arg1>\d+)/(?P<arg2>\d+)/$', views.view_class_instance, name='view-class'), - (r'^unnamed/normal/(?P<arg1>\d+)/(?P<arg2>\d+)/$', 'empty_view'), - (r'^unnamed/view_class/(?P<arg1>\d+)/(?P<arg2>\d+)/$', view_class_instance), + url(r'^unnamed/normal/(?P<arg1>\d+)/(?P<arg2>\d+)/$', views.empty_view), + url(r'^unnamed/view_class/(?P<arg1>\d+)/(?P<arg2>\d+)/$', views.view_class_instance), - (r'^test1/', include(testobj1.urls)), - (r'^test2/', include(testobj2.urls)), - (r'^default/', include(default_testobj.urls)), + url(r'^test1/', include(testobj1.urls)), + url(r'^test2/', include(testobj2.urls)), + url(r'^default/', include(default_testobj.urls)), - (r'^other1/', include(otherobj1.urls)), - (r'^other[246]/', include(otherobj2.urls)), + url(r'^other1/', include(otherobj1.urls)), + url(r'^other[246]/', include(otherobj2.urls)), - (r'^ns-included[135]/', include('urlpatterns_reverse.included_namespace_urls', namespace='inc-ns1')), - (r'^ns-included2/', include('urlpatterns_reverse.included_namespace_urls', namespace='inc-ns2')), + url(r'^ns-included[135]/', include('urlpatterns_reverse.included_namespace_urls', namespace='inc-ns1')), + url(r'^ns-included2/', include('urlpatterns_reverse.included_namespace_urls', namespace='inc-ns2')), - (r'^included/', include('urlpatterns_reverse.included_namespace_urls')), - (r'^inc(?P<outer>\d+)/', include('urlpatterns_reverse.included_urls', namespace='inc-ns5')), + url(r'^included/', include('urlpatterns_reverse.included_namespace_urls')), + url(r'^inc(?P<outer>\d+)/', include('urlpatterns_reverse.included_urls', namespace='inc-ns5')), - (r'^ns-outer/(?P<outer>\d+)/', include('urlpatterns_reverse.included_namespace_urls', namespace='inc-outer')), + url(r'^ns-outer/(?P<outer>\d+)/', include('urlpatterns_reverse.included_namespace_urls', namespace='inc-outer')), - (r'^\+\\\$\*/', include('urlpatterns_reverse.namespace_urls', namespace='special')), -) + url(r'^\+\\\$\*/', include('urlpatterns_reverse.namespace_urls', namespace='special')), +] diff --git a/tests/urlpatterns_reverse/reverse_lazy_urls.py b/tests/urlpatterns_reverse/reverse_lazy_urls.py index 0ef0a1f313..57358f6254 100644 --- a/tests/urlpatterns_reverse/reverse_lazy_urls.py +++ b/tests/urlpatterns_reverse/reverse_lazy_urls.py @@ -1,10 +1,10 @@ -from django.conf.urls import patterns, url +from django.conf.urls import url from .views import empty_view, LazyRedirectView, login_required_view -urlpatterns = patterns('', +urlpatterns = [ url(r'^redirected_to/$', empty_view, name='named-lazy-url-redirected-to'), url(r'^login/$', empty_view, name='some-login-page'), url(r'^login_required_view/$', login_required_view), url(r'^redirect/$', LazyRedirectView.as_view()), -) +] diff --git a/tests/urlpatterns_reverse/urlconf_inner.py b/tests/urlpatterns_reverse/urlconf_inner.py index 6d5cd27b35..d55c4dc650 100644 --- a/tests/urlpatterns_reverse/urlconf_inner.py +++ b/tests/urlpatterns_reverse/urlconf_inner.py @@ -1,4 +1,4 @@ -from django.conf.urls import patterns, url +from django.conf.urls import url from django.template import Template, Context from django.http import HttpResponse @@ -8,6 +8,6 @@ def inner_view(request): '{% url "inner" as inner_url %}inner:{{ inner_url }}').render(Context()) return HttpResponse(content) -urlpatterns = patterns('', +urlpatterns = [ url(r'^second_test/$', inner_view, name='inner'), -) +] diff --git a/tests/urlpatterns_reverse/urlconf_outer.py b/tests/urlpatterns_reverse/urlconf_outer.py index 20b9b09f98..36b6529efa 100644 --- a/tests/urlpatterns_reverse/urlconf_outer.py +++ b/tests/urlpatterns_reverse/urlconf_outer.py @@ -1,9 +1,9 @@ -from django.conf.urls import patterns, url, include +from django.conf.urls import url, include from . import urlconf_inner -urlpatterns = patterns('', +urlpatterns = [ url(r'^test/me/$', urlconf_inner.inner_view, name='outer'), url(r'^inner_urlconf/', include(urlconf_inner.__name__)) -) +] diff --git a/tests/urlpatterns_reverse/urls.py b/tests/urlpatterns_reverse/urls.py index 923d0c7558..cafcb63888 100644 --- a/tests/urlpatterns_reverse/urls.py +++ b/tests/urlpatterns_reverse/urls.py @@ -1,64 +1,70 @@ +import warnings + from django.conf.urls import patterns, url, include from .views import empty_view, absolute_kwargs_view -other_patterns = patterns('', +other_patterns = [ url(r'non_path_include/$', empty_view, name='non_path_include'), -) +] + +# test deprecated patterns() function. convert to list of urls() in Django 2.0 +with warnings.catch_warnings(record=True): + warnings.filterwarnings('ignore', module='django.conf.urls') -urlpatterns = patterns('', - url(r'^places/(\d+)/$', empty_view, name='places'), - url(r'^places?/$', empty_view, name="places?"), - url(r'^places+/$', empty_view, name="places+"), - url(r'^places*/$', empty_view, name="places*"), - url(r'^(?:places/)?$', empty_view, name="places2?"), - url(r'^(?:places/)+$', empty_view, name="places2+"), - url(r'^(?:places/)*$', empty_view, name="places2*"), - url(r'^places/(\d+|[a-z_]+)/', empty_view, name="places3"), - url(r'^places/(?P<id>\d+)/$', empty_view, name="places4"), - url(r'^people/(?P<name>\w+)/$', empty_view, name="people"), - url(r'^people/(?:name/)', empty_view, name="people2"), - url(r'^people/(?:name/(\w+)/)?', empty_view, name="people2a"), - url(r'^people/(?P<name>\w+)-(?P=name)/$', empty_view, name="people_backref"), - url(r'^optional/(?P<name>.*)/(?:.+/)?', empty_view, name="optional"), - url(r'^hardcoded/$', empty_view, name="hardcoded"), - url(r'^hardcoded/doc\.pdf$', empty_view, name="hardcoded2"), - url(r'^people/(?P<state>\w\w)/(?P<name>\w+)/$', empty_view, name="people3"), - url(r'^people/(?P<state>\w\w)/(?P<name>\d)/$', empty_view, name="people4"), - url(r'^people/((?P<state>\w\w)/test)?/(\w+)/$', empty_view, name="people6"), - url(r'^character_set/[abcdef0-9]/$', empty_view, name="range"), - url(r'^character_set/[\w]/$', empty_view, name="range2"), - url(r'^price/\$(\d+)/$', empty_view, name="price"), - url(r'^price/[$](\d+)/$', empty_view, name="price2"), - url(r'^price/[\$](\d+)/$', empty_view, name="price3"), - url(r'^product/(?P<product>\w+)\+\(\$(?P<price>\d+(\.\d+)?)\)/$', empty_view, name="product"), - url(r'^headlines/(?P<year>\d+)\.(?P<month>\d+)\.(?P<day>\d+)/$', empty_view, name="headlines"), - url(r'^windows_path/(?P<drive_name>[A-Z]):\\(?P<path>.+)/$', empty_view, name="windows"), - url(r'^special_chars/(?P<chars>.+)/$', empty_view, name="special"), - url(r'^(?P<name>.+)/\d+/$', empty_view, name="mixed"), - url(r'^repeats/a{1,2}/$', empty_view, name="repeats"), - url(r'^repeats/a{2,4}/$', empty_view, name="repeats2"), - url(r'^repeats/a{2}/$', empty_view, name="repeats3"), - url(r'^(?i)CaseInsensitive/(\w+)', empty_view, name="insensitive"), - url(r'^test/1/?', empty_view, name="test"), - url(r'^(?i)test/2/?$', empty_view, name="test2"), - url(r'^outer/(?P<outer>\d+)/', include('urlpatterns_reverse.included_urls')), - url(r'^outer-no-kwargs/(\d+)/', include('urlpatterns_reverse.included_no_kwargs_urls')), - url('', include('urlpatterns_reverse.extra_urls')), + urlpatterns = patterns('', + url(r'^places/(\d+)/$', empty_view, name='places'), + url(r'^places?/$', empty_view, name="places?"), + url(r'^places+/$', empty_view, name="places+"), + url(r'^places*/$', empty_view, name="places*"), + url(r'^(?:places/)?$', empty_view, name="places2?"), + url(r'^(?:places/)+$', empty_view, name="places2+"), + url(r'^(?:places/)*$', empty_view, name="places2*"), + url(r'^places/(\d+|[a-z_]+)/', empty_view, name="places3"), + url(r'^places/(?P<id>\d+)/$', empty_view, name="places4"), + url(r'^people/(?P<name>\w+)/$', empty_view, name="people"), + url(r'^people/(?:name/)', empty_view, name="people2"), + url(r'^people/(?:name/(\w+)/)?', empty_view, name="people2a"), + url(r'^people/(?P<name>\w+)-(?P=name)/$', empty_view, name="people_backref"), + url(r'^optional/(?P<name>.*)/(?:.+/)?', empty_view, name="optional"), + url(r'^hardcoded/$', empty_view, name="hardcoded"), + url(r'^hardcoded/doc\.pdf$', empty_view, name="hardcoded2"), + url(r'^people/(?P<state>\w\w)/(?P<name>\w+)/$', empty_view, name="people3"), + url(r'^people/(?P<state>\w\w)/(?P<name>\d)/$', empty_view, name="people4"), + url(r'^people/((?P<state>\w\w)/test)?/(\w+)/$', empty_view, name="people6"), + url(r'^character_set/[abcdef0-9]/$', empty_view, name="range"), + url(r'^character_set/[\w]/$', empty_view, name="range2"), + url(r'^price/\$(\d+)/$', empty_view, name="price"), + url(r'^price/[$](\d+)/$', empty_view, name="price2"), + url(r'^price/[\$](\d+)/$', empty_view, name="price3"), + url(r'^product/(?P<product>\w+)\+\(\$(?P<price>\d+(\.\d+)?)\)/$', empty_view, name="product"), + url(r'^headlines/(?P<year>\d+)\.(?P<month>\d+)\.(?P<day>\d+)/$', empty_view, name="headlines"), + url(r'^windows_path/(?P<drive_name>[A-Z]):\\(?P<path>.+)/$', empty_view, name="windows"), + url(r'^special_chars/(?P<chars>.+)/$', empty_view, name="special"), + url(r'^(?P<name>.+)/\d+/$', empty_view, name="mixed"), + url(r'^repeats/a{1,2}/$', empty_view, name="repeats"), + url(r'^repeats/a{2,4}/$', empty_view, name="repeats2"), + url(r'^repeats/a{2}/$', empty_view, name="repeats3"), + url(r'^(?i)CaseInsensitive/(\w+)', empty_view, name="insensitive"), + url(r'^test/1/?', empty_view, name="test"), + url(r'^(?i)test/2/?$', empty_view, name="test2"), + url(r'^outer/(?P<outer>\d+)/', include('urlpatterns_reverse.included_urls')), + url(r'^outer-no-kwargs/(\d+)/', include('urlpatterns_reverse.included_no_kwargs_urls')), + url('', include('urlpatterns_reverse.extra_urls')), - # This is non-reversible, but we shouldn't blow up when parsing it. - url(r'^(?:foo|bar)(\w+)/$', empty_view, name="disjunction"), + # This is non-reversible, but we shouldn't blow up when parsing it. + url(r'^(?:foo|bar)(\w+)/$', empty_view, name="disjunction"), - # Regression views for #9038. See tests for more details - url(r'arg_view/$', 'kwargs_view'), - url(r'arg_view/(?P<arg1>\d+)/$', 'kwargs_view'), - url(r'absolute_arg_view/(?P<arg1>\d+)/$', absolute_kwargs_view), - url(r'absolute_arg_view/$', absolute_kwargs_view), + # Regression views for #9038. See tests for more details + url(r'arg_view/$', 'kwargs_view'), + url(r'arg_view/(?P<arg1>\d+)/$', 'kwargs_view'), + url(r'absolute_arg_view/(?P<arg1>\d+)/$', absolute_kwargs_view), + url(r'absolute_arg_view/$', absolute_kwargs_view), - # Tests for #13154. Mixed syntax to test both ways of defining URLs. - url(r'defaults_view1/(?P<arg1>\d+)/', 'defaults_view', {'arg2': 1}, name='defaults'), - (r'defaults_view2/(?P<arg1>\d+)/', 'defaults_view', {'arg2': 2}, 'defaults'), + # Tests for #13154. Mixed syntax to test both ways of defining URLs. + url(r'defaults_view1/(?P<arg1>\d+)/', 'defaults_view', {'arg2': 1}, name='defaults'), + (r'defaults_view2/(?P<arg1>\d+)/', 'defaults_view', {'arg2': 2}, 'defaults'), - url('^includes/', include(other_patterns)), -) + url('^includes/', include(other_patterns)), + ) diff --git a/tests/urlpatterns_reverse/urls_error_handlers.py b/tests/urlpatterns_reverse/urls_error_handlers.py index 7146fdf43c..aee6bb91ae 100644 --- a/tests/urlpatterns_reverse/urls_error_handlers.py +++ b/tests/urlpatterns_reverse/urls_error_handlers.py @@ -1,8 +1,6 @@ # Used by the ErrorHandlerResolutionTests test case. -from django.conf.urls import patterns - -urlpatterns = patterns('') +urlpatterns = [] handler400 = 'urlpatterns_reverse.views.empty_view' handler404 = 'urlpatterns_reverse.views.empty_view' diff --git a/tests/urlpatterns_reverse/urls_error_handlers_callables.py b/tests/urlpatterns_reverse/urls_error_handlers_callables.py index 0900ec94ba..5fe8c728ff 100644 --- a/tests/urlpatterns_reverse/urls_error_handlers_callables.py +++ b/tests/urlpatterns_reverse/urls_error_handlers_callables.py @@ -1,11 +1,9 @@ # Used by the ErrorHandlerResolutionTests test case. -from django.conf.urls import patterns - from .views import empty_view -urlpatterns = patterns('') +urlpatterns = [] handler400 = empty_view handler404 = empty_view diff --git a/tests/urlpatterns_reverse/urls_without_full_import.py b/tests/urlpatterns_reverse/urls_without_full_import.py index c1dce5549c..5178a9cfe0 100644 --- a/tests/urlpatterns_reverse/urls_without_full_import.py +++ b/tests/urlpatterns_reverse/urls_without_full_import.py @@ -1,12 +1,12 @@ # A URLs file that doesn't use the default # from django.conf.urls import * # import pattern. -from django.conf.urls import patterns, url +from django.conf.urls import url from .views import empty_view, bad_view -urlpatterns = patterns('', +urlpatterns = [ url(r'^test_view/$', empty_view, name="test_view"), url(r'^bad_view/$', bad_view, name="bad_view"), -) +] diff --git a/tests/urls.py b/tests/urls.py index 34e3afcb83..bf9e5dc0fb 100644 --- a/tests/urls.py +++ b/tests/urls.py @@ -2,7 +2,6 @@ should be added within the test folders, and use TestCase.urls to set them. This helps the tests remain isolated. """ -from django.conf.urls import patterns -urlpatterns = patterns('') +urlpatterns = [] diff --git a/tests/view_tests/default_urls.py b/tests/view_tests/default_urls.py index 511689ccb1..1e202472f4 100644 --- a/tests/view_tests/default_urls.py +++ b/tests/view_tests/default_urls.py @@ -1,8 +1,8 @@ -from django.conf.urls import patterns, include, url +from django.conf.urls import include, url from django.contrib import admin -urlpatterns = patterns('', +urlpatterns = [ # This is the same as in the default project template url(r'^admin/', include(admin.site.urls)), -) +] diff --git a/tests/view_tests/generic_urls.py b/tests/view_tests/generic_urls.py index 4d6a2219ec..6d44468ce6 100644 --- a/tests/view_tests/generic_urls.py +++ b/tests/view_tests/generic_urls.py @@ -1,11 +1,11 @@ # -*- coding:utf-8 -*- from __future__ import unicode_literals -from django.conf.urls import patterns, url +from django.conf.urls import url from django.views.generic import RedirectView from .models import Article, DateArticle - +from . import views date_based_info_dict = { 'queryset': Article.objects.all(), @@ -26,38 +26,38 @@ numeric_days_info_dict = dict(date_based_info_dict, day_format='%d') date_based_datefield_info_dict = dict(date_based_info_dict, queryset=DateArticle.objects.all()) -urlpatterns = patterns('', - (r'^accounts/login/$', 'django.contrib.auth.views.login', {'template_name': 'login.html'}), - (r'^accounts/logout/$', 'django.contrib.auth.views.logout'), +urlpatterns = [ + url(r'^accounts/login/$', 'django.contrib.auth.views.login', {'template_name': 'login.html'}), + url(r'^accounts/logout/$', 'django.contrib.auth.views.logout'), # Special URLs for particular regression cases. url('^中文/$', 'view_tests.views.redirect'), url('^中文/target/$', 'view_tests.views.index_page'), -) +] # redirects, both temporary and permanent, with non-ASCII targets -urlpatterns += patterns('', - ('^nonascii_redirect/$', RedirectView.as_view( +urlpatterns += [ + url('^nonascii_redirect/$', RedirectView.as_view( url='/中文/target/', permanent=False)), - ('^permanent_nonascii_redirect/$', RedirectView.as_view( + url('^permanent_nonascii_redirect/$', RedirectView.as_view( url='/中文/target/', permanent=True)), -) - -urlpatterns += patterns('view_tests.views', - (r'^shortcuts/render_to_response/$', 'render_to_response_view'), - (r'^shortcuts/render_to_response/request_context/$', 'render_to_response_view_with_request_context'), - (r'^shortcuts/render_to_response/content_type/$', 'render_to_response_view_with_content_type'), - (r'^shortcuts/render_to_response/dirs/$', 'render_to_response_view_with_dirs'), - (r'^shortcuts/render/$', 'render_view'), - (r'^shortcuts/render/base_context/$', 'render_view_with_base_context'), - (r'^shortcuts/render/content_type/$', 'render_view_with_content_type'), - (r'^shortcuts/render/status/$', 'render_view_with_status'), - (r'^shortcuts/render/current_app/$', 'render_view_with_current_app'), - (r'^shortcuts/render/dirs/$', 'render_with_dirs'), - (r'^shortcuts/render/current_app_conflict/$', 'render_view_with_current_app_conflict'), -) +] + +urlpatterns += [ + url(r'^shortcuts/render_to_response/$', views.render_to_response_view), + url(r'^shortcuts/render_to_response/request_context/$', views.render_to_response_view_with_request_context), + url(r'^shortcuts/render_to_response/content_type/$', views.render_to_response_view_with_content_type), + url(r'^shortcuts/render_to_response/dirs/$', views.render_to_response_view_with_dirs), + url(r'^shortcuts/render/$', views.render_view), + url(r'^shortcuts/render/base_context/$', views.render_view_with_base_context), + url(r'^shortcuts/render/content_type/$', views.render_view_with_content_type), + url(r'^shortcuts/render/status/$', views.render_view_with_status), + url(r'^shortcuts/render/current_app/$', views.render_view_with_current_app), + url(r'^shortcuts/render/dirs/$', views.render_with_dirs), + url(r'^shortcuts/render/current_app_conflict/$', views.render_view_with_current_app_conflict), +] # json response -urlpatterns += patterns('view_tests.views', - (r'^json/response/$', 'json_response_view'), -) +urlpatterns += [ + url(r'^json/response/$', views.json_response_view), +] diff --git a/tests/view_tests/regression_21530_urls.py b/tests/view_tests/regression_21530_urls.py index 14248d872b..7a91ddebd7 100644 --- a/tests/view_tests/regression_21530_urls.py +++ b/tests/view_tests/regression_21530_urls.py @@ -1,5 +1,5 @@ -from django.conf.urls import patterns, url +from django.conf.urls import url -urlpatterns = patterns('', +urlpatterns = [ url(r'^index/$', 'view_tests.views.index_page', name='index'), -) +] diff --git a/tests/view_tests/urls.py b/tests/view_tests/urls.py index edf1bc56db..cefab5af25 100644 --- a/tests/view_tests/urls.py +++ b/tests/view_tests/urls.py @@ -1,8 +1,9 @@ # coding: utf-8 from os import path -from django.conf.urls import patterns, url, include +from django.conf.urls import url, include from django.utils._os import upath +from django.views import defaults, i18n from . import views @@ -41,38 +42,38 @@ js_info_dict_app5 = { 'packages': ('view_tests.app5',), } -urlpatterns = patterns('', - (r'^$', views.index_page), +urlpatterns = [ + url(r'^$', views.index_page), # Default views - (r'^non_existing_url/', 'django.views.defaults.page_not_found'), - (r'^server_error/', 'django.views.defaults.server_error'), + url(r'^non_existing_url/', defaults.page_not_found), + url(r'^server_error/', defaults.server_error), # a view that raises an exception for the debug view - (r'raises/$', views.raises), + url(r'raises/$', views.raises), - (r'raises400/$', views.raises400), - (r'raises403/$', views.raises403), - (r'raises404/$', views.raises404), - (r'raises500/$', views.raises500), + url(r'raises400/$', views.raises400), + url(r'raises403/$', views.raises403), + url(r'raises404/$', views.raises404), + url(r'raises500/$', views.raises500), # i18n views - (r'^i18n/', include('django.conf.urls.i18n')), - (r'^jsi18n/$', 'django.views.i18n.javascript_catalog', js_info_dict), - (r'^jsi18n/app5/$', 'django.views.i18n.javascript_catalog', js_info_dict_app5), - (r'^jsi18n_english_translation/$', 'django.views.i18n.javascript_catalog', js_info_dict_english_translation), - (r'^jsi18n_multi_packages1/$', 'django.views.i18n.javascript_catalog', js_info_dict_multi_packages1), - (r'^jsi18n_multi_packages2/$', 'django.views.i18n.javascript_catalog', js_info_dict_multi_packages2), - (r'^jsi18n_admin/$', 'django.views.i18n.javascript_catalog', js_info_dict_admin), - (r'^jsi18n_template/$', views.jsi18n), + url(r'^i18n/', include('django.conf.urls.i18n')), + url(r'^jsi18n/$', i18n.javascript_catalog, js_info_dict), + url(r'^jsi18n/app5/$', i18n.javascript_catalog, js_info_dict_app5), + url(r'^jsi18n_english_translation/$', i18n.javascript_catalog, js_info_dict_english_translation), + url(r'^jsi18n_multi_packages1/$', i18n.javascript_catalog, js_info_dict_multi_packages1), + url(r'^jsi18n_multi_packages2/$', i18n.javascript_catalog, js_info_dict_multi_packages2), + url(r'^jsi18n_admin/$', i18n.javascript_catalog, js_info_dict_admin), + url(r'^jsi18n_template/$', views.jsi18n), # Static views - (r'^site_media/(?P<path>.*)$', 'django.views.static.serve', {'document_root': media_dir}), -) - -urlpatterns += patterns('view_tests.views', - url(r'view_exception/(?P<n>\d+)/$', 'view_exception', name='view_exception'), - url(r'template_exception/(?P<n>\d+)/$', 'template_exception', name='template_exception'), - url(r'^raises_template_does_not_exist/(?P<path>.+)$', 'raises_template_does_not_exist', name='raises_template_does_not_exist'), - url(r'^render_no_template/$', 'render_no_template', name='render_no_template'), -) + url(r'^site_media/(?P<path>.*)$', 'django.views.static.serve', {'document_root': media_dir}), +] + +urlpatterns += [ + url(r'view_exception/(?P<n>\d+)/$', views.view_exception, name='view_exception'), + url(r'template_exception/(?P<n>\d+)/$', views.template_exception, name='template_exception'), + url(r'^raises_template_does_not_exist/(?P<path>.+)$', views.raises_template_does_not_exist, name='raises_template_does_not_exist'), + url(r'^render_no_template/$', views.render_no_template, name='render_no_template'), +] diff --git a/tests/wsgi/urls.py b/tests/wsgi/urls.py index 563b7238af..3ed0d5e8a8 100644 --- a/tests/wsgi/urls.py +++ b/tests/wsgi/urls.py @@ -1,11 +1,10 @@ -from django.conf.urls import url, patterns +from django.conf.urls import url from django.http import HttpResponse def helloworld(request): return HttpResponse("Hello World!") -urlpatterns = patterns( - "", - url("^$", helloworld) -) +urlpatterns = [ + url("^$", helloworld), +] |