summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/admin_changelist/admin.py13
-rw-r--r--tests/admin_changelist/models.py2
-rw-r--r--tests/admin_checks/tests.py2
-rw-r--r--tests/admin_custom_urls/models.py8
-rw-r--r--tests/admin_filters/tests.py4
-rw-r--r--tests/admin_inlines/admin.py2
-rw-r--r--tests/admin_inlines/models.py2
-rw-r--r--tests/admin_ordering/tests.py4
-rw-r--r--tests/admin_scripts/management/commands/custom_startproject.py2
-rw-r--r--tests/admin_scripts/tests.py4
-rw-r--r--tests/admin_views/admin.py48
-rw-r--r--tests/admin_views/customadmin.py8
-rw-r--r--tests/admin_views/models.py2
-rw-r--r--tests/admin_widgets/models.py2
-rw-r--r--tests/admin_widgets/tests.py6
-rw-r--r--tests/admin_widgets/widgetadmin.py2
-rw-r--r--tests/aggregation/tests.py6
-rw-r--r--tests/auth_tests/client.py4
-rw-r--r--tests/auth_tests/test_auth_backends.py2
-rw-r--r--tests/auth_tests/test_deprecated_views.py2
-rw-r--r--tests/auth_tests/test_forms.py4
-rw-r--r--tests/auth_tests/test_remote_user.py4
-rw-r--r--tests/auth_tests/test_views.py2
-rw-r--r--tests/auth_tests/urls.py2
-rw-r--r--tests/auth_tests/urls_custom_user_admin.py2
-rw-r--r--tests/basic/tests.py2
-rw-r--r--tests/builtin_server/tests.py8
-rw-r--r--tests/cache/tests.py14
-rw-r--r--tests/check_framework/test_templates.py2
-rw-r--r--tests/csrf_tests/tests.py4
-rw-r--r--tests/custom_lookups/tests.py12
-rw-r--r--tests/custom_managers/models.py20
-rw-r--r--tests/custom_pk/fields.py2
-rw-r--r--tests/defer/models.py2
-rw-r--r--tests/deprecation/tests.py8
-rw-r--r--tests/extra_regress/models.py4
-rw-r--r--tests/file_storage/tests.py4
-rw-r--r--tests/file_uploads/tests.py10
-rw-r--r--tests/file_uploads/uploadhandler.py2
-rw-r--r--tests/fixtures/models.py2
-rw-r--r--tests/flatpages_tests/test_sitemaps.py2
-rw-r--r--tests/foreign_object/models/article.py2
-rw-r--r--tests/foreign_object/models/empty_join.py4
-rw-r--r--tests/forms_tests/field_tests/test_base.py4
-rw-r--r--tests/forms_tests/field_tests/test_multivaluefield.py6
-rw-r--r--tests/forms_tests/tests/test_forms.py20
-rw-r--r--tests/forms_tests/tests/test_formsets.py6
-rw-r--r--tests/forms_tests/tests/test_media.py6
-rw-r--r--tests/forms_tests/widget_tests/base.py2
-rw-r--r--tests/forms_tests/widget_tests/test_multiwidget.py8
-rw-r--r--tests/from_db_value/models.py4
-rw-r--r--tests/generic_relations/models.py2
-rw-r--r--tests/generic_relations/tests.py2
-rw-r--r--tests/generic_relations_regress/models.py2
-rw-r--r--tests/generic_views/test_base.py2
-rw-r--r--tests/generic_views/views.py21
-rw-r--r--tests/get_object_or_404/models.py2
-rw-r--r--tests/gis_tests/geoapp/models.py2
-rw-r--r--tests/gis_tests/geoapp/test_sitemaps.py2
-rw-r--r--tests/gis_tests/geos_tests/test_geos.py2
-rw-r--r--tests/gis_tests/geos_tests/test_mutable_list.py2
-rw-r--r--tests/gis_tests/gis_migrations/test_operations.py4
-rw-r--r--tests/gis_tests/test_data.py4
-rw-r--r--tests/i18n/test_compilation.py6
-rw-r--r--tests/i18n/test_extraction.py4
-rw-r--r--tests/i18n/test_percents.py2
-rw-r--r--tests/i18n/tests.py14
-rw-r--r--tests/indexes/models.py2
-rw-r--r--tests/inline_formsets/tests.py2
-rw-r--r--tests/logging_tests/tests.py4
-rw-r--r--tests/mail/custombackend.py2
-rw-r--r--tests/mail/tests.py22
-rw-r--r--tests/managers_regress/models.py6
-rw-r--r--tests/many_to_one/models.py2
-rw-r--r--tests/messages_tests/base.py4
-rw-r--r--tests/messages_tests/test_api.py4
-rw-r--r--tests/messages_tests/test_fallback.py2
-rw-r--r--tests/messages_tests/test_session.py2
-rw-r--r--tests/middleware/tests.py2
-rw-r--r--tests/migrations/models.py2
-rw-r--r--tests/migrations/test_commands.py4
-rw-r--r--tests/model_fields/models.py4
-rw-r--r--tests/model_fields/test_field_flags.py2
-rw-r--r--tests/model_forms/models.py12
-rw-r--r--tests/model_forms/tests.py6
-rw-r--r--tests/model_formsets/tests.py10
-rw-r--r--tests/model_formsets_regress/tests.py2
-rw-r--r--tests/model_inheritance/models.py2
-rw-r--r--tests/model_regress/test_pickle.py4
-rw-r--r--tests/modeladmin/tests.py8
-rw-r--r--tests/multiple_database/models.py4
-rw-r--r--tests/one_to_one/models.py4
-rw-r--r--tests/pagination/custom.py4
-rw-r--r--tests/postgres_tests/__init__.py2
-rw-r--r--tests/postgres_tests/fields.py6
-rw-r--r--tests/postgres_tests/models.py2
-rw-r--r--tests/prefetch_related/models.py2
-rw-r--r--tests/proxy_models/models.py4
-rw-r--r--tests/queries/models.py6
-rw-r--r--tests/queryset_pickle/models.py4
-rw-r--r--tests/raw_query/models.py2
-rw-r--r--tests/save_delete_hooks/models.py6
-rw-r--r--tests/schema/fields.py4
-rw-r--r--tests/serializers/models/base.py4
-rw-r--r--tests/serializers/models/data.py2
-rw-r--r--tests/serializers/test_json.py2
-rw-r--r--tests/serializers/test_yaml.py4
-rw-r--r--tests/servers/tests.py2
-rw-r--r--tests/sessions_tests/models.py2
-rw-r--r--tests/sessions_tests/tests.py6
-rw-r--r--tests/settings_tests/tests.py4
-rw-r--r--tests/signals/tests.py2
-rw-r--r--tests/sitemaps_tests/base.py2
-rw-r--r--tests/staticfiles_tests/cases.py4
-rw-r--r--tests/staticfiles_tests/test_finders.py6
-rw-r--r--tests/staticfiles_tests/test_liveserver.py8
-rw-r--r--tests/staticfiles_tests/test_management.py15
-rw-r--r--tests/staticfiles_tests/test_storage.py20
-rw-r--r--tests/syndication_tests/feeds.py10
-rw-r--r--tests/syndication_tests/tests.py2
-rw-r--r--tests/template_backends/test_dummy.py2
-rw-r--r--tests/template_tests/syntax_tests/test_cache.py2
-rw-r--r--tests/template_tests/syntax_tests/test_if_changed.py2
-rw-r--r--tests/template_tests/test_callables.py2
-rw-r--r--tests/template_tests/test_custom.py4
-rw-r--r--tests/template_tests/test_loaders.py6
-rw-r--r--tests/template_tests/test_logging.py4
-rw-r--r--tests/template_tests/test_nodelist.py2
-rw-r--r--tests/test_client_regress/session.py2
-rw-r--r--tests/test_runner/runner.py4
-rw-r--r--tests/test_runner/test_parallel.py2
-rw-r--r--tests/test_utils/tests.py4
-rw-r--r--tests/timezones/tests.py2
-rw-r--r--tests/utils_tests/test_lazyobject.py7
-rw-r--r--tests/utils_tests/test_module_loading.py4
-rw-r--r--tests/utils_tests/test_numberformat.py2
-rw-r--r--tests/validation/models.py2
-rw-r--r--tests/view_tests/tests/test_csrf.py2
-rw-r--r--tests/view_tests/tests/test_static.py4
139 files changed, 332 insertions, 354 deletions
diff --git a/tests/admin_changelist/admin.py b/tests/admin_changelist/admin.py
index 39494e99d3..915dc32ef0 100644
--- a/tests/admin_changelist/admin.py
+++ b/tests/admin_changelist/admin.py
@@ -12,7 +12,7 @@ site.register(User, UserAdmin)
class CustomPaginator(Paginator):
def __init__(self, queryset, page_size, orphans=0, allow_empty_first_page=True):
- super(CustomPaginator, self).__init__(queryset, 5, orphans=2, allow_empty_first_page=allow_empty_first_page)
+ super().__init__(queryset, 5, orphans=2, allow_empty_first_page=allow_empty_first_page)
class EventAdmin(admin.ModelAdmin):
@@ -39,7 +39,7 @@ class ChildAdmin(admin.ModelAdmin):
list_filter = ['parent', 'age']
def get_queryset(self, request):
- return super(ChildAdmin, self).get_queryset(request).select_related("parent")
+ return super().get_queryset(request).select_related("parent")
class CustomPaginationAdmin(ChildAdmin):
@@ -51,8 +51,7 @@ class FilteredChildAdmin(admin.ModelAdmin):
list_per_page = 10
def get_queryset(self, request):
- return super(FilteredChildAdmin, self).get_queryset(request).filter(
- name__contains='filtered')
+ return super().get_queryset(request).filter(name__contains='filtered')
class BandAdmin(admin.ModelAdmin):
@@ -85,7 +84,7 @@ class DynamicListDisplayChildAdmin(admin.ModelAdmin):
list_display = ('parent', 'name', 'age')
def get_list_display(self, request):
- my_list_display = super(DynamicListDisplayChildAdmin, self).get_list_display(request)
+ my_list_display = super().get_list_display(request)
if request.user.username == 'noparents':
my_list_display = list(my_list_display)
my_list_display.remove('parent')
@@ -124,7 +123,7 @@ class DynamicListFilterChildAdmin(admin.ModelAdmin):
list_filter = ('parent', 'name', 'age')
def get_list_filter(self, request):
- my_list_filter = super(DynamicListFilterChildAdmin, self).get_list_filter(request)
+ my_list_filter = super().get_list_filter(request)
if request.user.username == 'noparents':
my_list_filter = list(my_list_filter)
my_list_filter.remove('parent')
@@ -135,7 +134,7 @@ class DynamicSearchFieldsChildAdmin(admin.ModelAdmin):
search_fields = ('name',)
def get_search_fields(self, request):
- search_fields = super(DynamicSearchFieldsChildAdmin, self).get_search_fields(request)
+ search_fields = super().get_search_fields(request)
search_fields += ('age',)
return search_fields
diff --git a/tests/admin_changelist/models.py b/tests/admin_changelist/models.py
index 0abb061548..1cec7b8a82 100644
--- a/tests/admin_changelist/models.py
+++ b/tests/admin_changelist/models.py
@@ -94,7 +94,7 @@ class UnorderedObject(models.Model):
class OrderedObjectManager(models.Manager):
def get_queryset(self):
- return super(OrderedObjectManager, self).get_queryset().order_by('number')
+ return super().get_queryset().order_by('number')
class OrderedObject(models.Model):
diff --git a/tests/admin_checks/tests.py b/tests/admin_checks/tests.py
index e8714fe1a8..e081caeca1 100644
--- a/tests/admin_checks/tests.py
+++ b/tests/admin_checks/tests.py
@@ -106,7 +106,7 @@ class SystemChecksTestCase(SimpleTestCase):
def test_allows_checks_relying_on_other_modeladmins(self):
class MyBookAdmin(admin.ModelAdmin):
def check(self, **kwargs):
- errors = super(MyBookAdmin, self).check(**kwargs)
+ errors = super().check(**kwargs)
author_admin = self.admin_site._registry.get(Author)
if author_admin is None:
errors.append('AuthorAdmin missing!')
diff --git a/tests/admin_custom_urls/models.py b/tests/admin_custom_urls/models.py
index 840d9b9f38..1fc30ec18c 100644
--- a/tests/admin_custom_urls/models.py
+++ b/tests/admin_custom_urls/models.py
@@ -28,7 +28,7 @@ class ActionAdmin(admin.ModelAdmin):
Remove all entries named 'name' from the ModelAdmin instance URL
patterns list
"""
- return [url for url in super(ActionAdmin, self).get_urls() if url.name != name]
+ return [url for url in super().get_urls() if url.name != name]
def get_urls(self):
# Add the URL of our custom 'add_view' view to the front of the URLs
@@ -71,8 +71,10 @@ class Car(models.Model):
class CarAdmin(admin.ModelAdmin):
def response_add(self, request, obj, post_url_continue=None):
- return super(CarAdmin, self).response_add(
- request, obj, post_url_continue=reverse('admin:admin_custom_urls_car_history', args=[obj.pk]))
+ return super().response_add(
+ request, obj,
+ post_url_continue=reverse('admin:admin_custom_urls_car_history', args=[obj.pk]),
+ )
site = admin.AdminSite(name='admin_custom_urls')
diff --git a/tests/admin_filters/tests.py b/tests/admin_filters/tests.py
index 4dc6c3365a..3f2f33bf3c 100644
--- a/tests/admin_filters/tests.py
+++ b/tests/admin_filters/tests.py
@@ -168,12 +168,12 @@ class BookAdminWithCustomQueryset(ModelAdmin):
def __init__(self, user, *args, **kwargs):
self.user = user
- super(BookAdminWithCustomQueryset, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
list_filter = ('year',)
def get_queryset(self, request):
- return super(BookAdminWithCustomQueryset, self).get_queryset(request).filter(author=self.user)
+ return super().get_queryset(request).filter(author=self.user)
class BookAdminRelatedOnlyFilter(ModelAdmin):
diff --git a/tests/admin_inlines/admin.py b/tests/admin_inlines/admin.py
index c3bc8d7698..f9e50d1b91 100644
--- a/tests/admin_inlines/admin.py
+++ b/tests/admin_inlines/admin.py
@@ -193,7 +193,7 @@ class SomeChildModelForm(forms.ModelForm):
}
def __init__(self, *args, **kwargs):
- super(SomeChildModelForm, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
self.fields['name'].label = 'new label'
diff --git a/tests/admin_inlines/models.py b/tests/admin_inlines/models.py
index 31e692b60e..2c2601961e 100644
--- a/tests/admin_inlines/models.py
+++ b/tests/admin_inlines/models.py
@@ -53,7 +53,7 @@ class NonAutoPKBook(models.Model):
test_pk = random.randint(1, 99999)
if not NonAutoPKBook.objects.filter(rand_pk=test_pk).exists():
self.rand_pk = test_pk
- super(NonAutoPKBook, self).save(*args, **kwargs)
+ super().save(*args, **kwargs)
class EditablePKBook(models.Model):
diff --git a/tests/admin_ordering/tests.py b/tests/admin_ordering/tests.py
index 77597d0fb5..0398616d2e 100644
--- a/tests/admin_ordering/tests.py
+++ b/tests/admin_ordering/tests.py
@@ -161,12 +161,12 @@ class TestRelatedFieldsAdminOrdering(TestCase):
def formfield_for_foreignkey(self, db_field, request, **kwargs):
if db_field.name == 'band':
kwargs["queryset"] = Band.objects.filter(rank__gt=2)
- return super(SongAdmin, self).formfield_for_foreignkey(db_field, request, **kwargs)
+ return super().formfield_for_foreignkey(db_field, request, **kwargs)
def formfield_for_manytomany(self, db_field, request, **kwargs):
if db_field.name == 'other_interpreters':
kwargs["queryset"] = Band.objects.filter(rank__gt=2)
- return super(SongAdmin, self).formfield_for_foreignkey(db_field, request, **kwargs)
+ return super().formfield_for_foreignkey(db_field, request, **kwargs)
class StaticOrderingBandAdmin(admin.ModelAdmin):
ordering = ('rank',)
diff --git a/tests/admin_scripts/management/commands/custom_startproject.py b/tests/admin_scripts/management/commands/custom_startproject.py
index 3fa19d98cc..b258e4b80d 100644
--- a/tests/admin_scripts/management/commands/custom_startproject.py
+++ b/tests/admin_scripts/management/commands/custom_startproject.py
@@ -3,5 +3,5 @@ from django.core.management.commands.startproject import Command as BaseCommand
class Command(BaseCommand):
def add_arguments(self, parser):
- super(Command, self).add_arguments(parser)
+ super().add_arguments(parser)
parser.add_argument('--extra', help='An arbitrary extra value passed to the context')
diff --git a/tests/admin_scripts/tests.py b/tests/admin_scripts/tests.py
index 88a0260358..ad7d9ef742 100644
--- a/tests/admin_scripts/tests.py
+++ b/tests/admin_scripts/tests.py
@@ -38,7 +38,7 @@ class AdminScriptTestCase(unittest.TestCase):
@classmethod
def setUpClass(cls):
- super(AdminScriptTestCase, cls).setUpClass()
+ super().setUpClass()
cls.test_dir = os.path.realpath(os.path.join(
tempfile.gettempdir(),
cls.__name__,
@@ -52,7 +52,7 @@ class AdminScriptTestCase(unittest.TestCase):
@classmethod
def tearDownClass(cls):
shutil.rmtree(cls.test_dir)
- super(AdminScriptTestCase, cls).tearDownClass()
+ super().tearDownClass()
def write_settings(self, filename, apps=None, is_dir=False, sdict=None, extra=None):
if is_dir:
diff --git a/tests/admin_views/admin.py b/tests/admin_views/admin.py
index 3a5f750309..1827039266 100644
--- a/tests/admin_views/admin.py
+++ b/tests/admin_views/admin.py
@@ -107,11 +107,7 @@ class ArticleAdmin(admin.ModelAdmin):
)
def changelist_view(self, request):
- return super(ArticleAdmin, self).changelist_view(
- request, extra_context={
- 'extra_var': 'Hello!'
- }
- )
+ return super().changelist_view(request, extra_context={'extra_var': 'Hello!'})
def modeladmin_year(self, obj):
return obj.date.year
@@ -125,7 +121,7 @@ class ArticleAdmin(admin.ModelAdmin):
'from@example.com',
['to@example.com']
).send()
- return super(ArticleAdmin, self).delete_model(request, obj)
+ return super().delete_model(request, obj)
def save_model(self, request, obj, form, change=True):
EmailMessage(
@@ -134,7 +130,7 @@ class ArticleAdmin(admin.ModelAdmin):
'from@example.com',
['to@example.com']
).send()
- return super(ArticleAdmin, self).save_model(request, obj, form, change)
+ return super().save_model(request, obj, form, change)
class ArticleAdmin2(admin.ModelAdmin):
@@ -162,11 +158,7 @@ class CustomArticleAdmin(admin.ModelAdmin):
popup_response_template = 'custom_admin/popup_response.html'
def changelist_view(self, request):
- return super(CustomArticleAdmin, self).changelist_view(
- request, extra_context={
- 'extra_var': 'Hello!'
- }
- )
+ return super().changelist_view(request, extra_context={'extra_var': 'Hello!'})
class ThingAdmin(admin.ModelAdmin):
@@ -207,12 +199,12 @@ class PersonAdmin(admin.ModelAdmin):
save_as = True
def get_changelist_formset(self, request, **kwargs):
- return super(PersonAdmin, self).get_changelist_formset(request, formset=BasePersonModelFormSet, **kwargs)
+ return super().get_changelist_formset(request, formset=BasePersonModelFormSet, **kwargs)
def get_queryset(self, request):
# Order by a field that isn't in list display, to be able to test
# whether ordering is preserved.
- return super(PersonAdmin, self).get_queryset(request).order_by('age')
+ return super().get_queryset(request).order_by('age')
class FooAccountAdmin(admin.StackedInline):
@@ -312,7 +304,7 @@ class ParentAdmin(admin.ModelAdmin):
list_editable = ('name',)
def save_related(self, request, form, formsets, change):
- super(ParentAdmin, self).save_related(request, form, formsets, change)
+ super().save_related(request, form, formsets, change)
first_name, last_name = form.instance.name.split()
for child in form.instance.child_set.all():
if len(child.name.split()) < 2:
@@ -322,7 +314,7 @@ class ParentAdmin(admin.ModelAdmin):
class EmptyModelAdmin(admin.ModelAdmin):
def get_queryset(self, request):
- return super(EmptyModelAdmin, self).get_queryset(request).filter(pk__gt=1)
+ return super().get_queryset(request).filter(pk__gt=1)
class OldSubscriberAdmin(admin.ModelAdmin):
@@ -521,7 +513,7 @@ class CoverLetterAdmin(admin.ModelAdmin):
"""
def get_queryset(self, request):
- return super(CoverLetterAdmin, self).get_queryset(request).defer('date_written')
+ return super().get_queryset(request).defer('date_written')
class PaperAdmin(admin.ModelAdmin):
@@ -533,7 +525,7 @@ class PaperAdmin(admin.ModelAdmin):
"""
def get_queryset(self, request):
- return super(PaperAdmin, self).get_queryset(request).only('title')
+ return super().get_queryset(request).only('title')
class ShortMessageAdmin(admin.ModelAdmin):
@@ -545,7 +537,7 @@ class ShortMessageAdmin(admin.ModelAdmin):
"""
def get_queryset(self, request):
- return super(ShortMessageAdmin, self).get_queryset(request).defer('timestamp')
+ return super().get_queryset(request).defer('timestamp')
class TelegramAdmin(admin.ModelAdmin):
@@ -557,7 +549,7 @@ class TelegramAdmin(admin.ModelAdmin):
"""
def get_queryset(self, request):
- return super(TelegramAdmin, self).get_queryset(request).only('title')
+ return super().get_queryset(request).only('title')
class StoryForm(forms.ModelForm):
@@ -594,9 +586,7 @@ class PluggableSearchPersonAdmin(admin.ModelAdmin):
search_fields = ('name',)
def get_search_results(self, request, queryset, search_term):
- queryset, use_distinct = super(PluggableSearchPersonAdmin, self).get_search_results(
- request, queryset, search_term
- )
+ queryset, use_distinct = super().get_search_results(request, queryset, search_term)
try:
search_term_as_int = int(search_term)
except ValueError:
@@ -713,13 +703,13 @@ class UnorderedObjectAdmin(admin.ModelAdmin):
class UndeletableObjectAdmin(admin.ModelAdmin):
def change_view(self, *args, **kwargs):
kwargs['extra_context'] = {'show_delete': False}
- return super(UndeletableObjectAdmin, self).change_view(*args, **kwargs)
+ return super().change_view(*args, **kwargs)
class UnchangeableObjectAdmin(admin.ModelAdmin):
def get_urls(self):
# Disable change_view, but leave other urls untouched
- urlpatterns = super(UnchangeableObjectAdmin, self).get_urls()
+ urlpatterns = super().get_urls()
return [p for p in urlpatterns if p.name and not p.name.endswith("_change")]
@@ -775,7 +765,7 @@ class DependentChildAdminForm(forms.ModelForm):
if parent.family_name and parent.family_name != self.cleaned_data.get('family_name'):
raise ValidationError("Children must share a family name with their parents " +
"in this contrived test case")
- return super(DependentChildAdminForm, self).clean()
+ return super().clean()
class DependentChildInline(admin.TabularInline):
@@ -883,18 +873,18 @@ class GetFormsetsArgumentCheckingAdmin(admin.ModelAdmin):
def add_view(self, request, *args, **kwargs):
request.is_add_view = True
- return super(GetFormsetsArgumentCheckingAdmin, self).add_view(request, *args, **kwargs)
+ return super().add_view(request, *args, **kwargs)
def change_view(self, request, *args, **kwargs):
request.is_add_view = False
- return super(GetFormsetsArgumentCheckingAdmin, self).change_view(request, *args, **kwargs)
+ return super().change_view(request, *args, **kwargs)
def get_formsets_with_inlines(self, request, obj=None):
if request.is_add_view and obj is not None:
raise Exception("'obj' passed to get_formsets_with_inlines wasn't None during add_view")
if not request.is_add_view and obj is None:
raise Exception("'obj' passed to get_formsets_with_inlines was None during change_view")
- return super(GetFormsetsArgumentCheckingAdmin, self).get_formsets_with_inlines(request, obj)
+ return super().get_formsets_with_inlines(request, obj)
site = admin.AdminSite(name="admin")
diff --git a/tests/admin_views/customadmin.py b/tests/admin_views/customadmin.py
index 5eb1f2baa2..2fbbb78595 100644
--- a/tests/admin_views/customadmin.py
+++ b/tests/admin_views/customadmin.py
@@ -21,24 +21,24 @@ class Admin2(admin.AdminSite):
# A custom index view.
def index(self, request, extra_context=None):
- return super(Admin2, self).index(request, {'foo': '*bar*'})
+ return super().index(request, {'foo': '*bar*'})
def get_urls(self):
return [
url(r'^my_view/$', self.admin_view(self.my_view), name='my_view'),
- ] + super(Admin2, self).get_urls()
+ ] + super().get_urls()
def my_view(self, request):
return HttpResponse("Django is a magical pony!")
def password_change(self, request, extra_context=None):
- return super(Admin2, self).password_change(request, {'spam': 'eggs'})
+ return super().password_change(request, {'spam': 'eggs'})
class UserLimitedAdmin(UserAdmin):
# used for testing password change on a user not in queryset
def get_queryset(self, request):
- qs = super(UserLimitedAdmin, self).get_queryset(request)
+ qs = super().get_queryset(request)
return qs.filter(is_superuser=False)
diff --git a/tests/admin_views/models.py b/tests/admin_views/models.py
index 89373f6ed3..4364260ef7 100644
--- a/tests/admin_views/models.py
+++ b/tests/admin_views/models.py
@@ -805,7 +805,7 @@ class DependentChild(models.Model):
class _Manager(models.Manager):
def get_queryset(self):
- return super(_Manager, self).get_queryset().filter(pk__gt=1)
+ return super().get_queryset().filter(pk__gt=1)
class FilteredManager(models.Model):
diff --git a/tests/admin_widgets/models.py b/tests/admin_widgets/models.py
index fcc86ddeb8..422f8b0286 100644
--- a/tests/admin_widgets/models.py
+++ b/tests/admin_widgets/models.py
@@ -37,7 +37,7 @@ class Album(models.Model):
class HiddenInventoryManager(models.Manager):
def get_queryset(self):
- return super(HiddenInventoryManager, self).get_queryset().filter(hidden=False)
+ return super().get_queryset().filter(hidden=False)
class Inventory(models.Model):
diff --git a/tests/admin_widgets/tests.py b/tests/admin_widgets/tests.py
index b9462498cc..b0ec18968e 100644
--- a/tests/admin_widgets/tests.py
+++ b/tests/admin_widgets/tests.py
@@ -407,7 +407,7 @@ class AdminFileWidgetTests(TestDataMixin, TestCase):
@classmethod
def setUpTestData(cls):
- super(AdminFileWidgetTests, cls).setUpTestData()
+ super().setUpTestData()
band = Band.objects.create(name='Linkin Park')
cls.album = band.album_set.create(
name='Hybrid Theory', cover_art=r'albums\hybrid_theory.jpg'
@@ -854,7 +854,7 @@ class DateTimePickerAltTimezoneSeleniumTests(DateTimePickerShortcutsSeleniumTest
class HorizontalVerticalFilterSeleniumTests(AdminWidgetSeleniumTestCase):
def setUp(self):
- super(HorizontalVerticalFilterSeleniumTests, self).setUp()
+ super().setUp()
self.lisa = Student.objects.create(name='Lisa')
self.john = Student.objects.create(name='John')
self.bob = Student.objects.create(name='Bob')
@@ -1171,7 +1171,7 @@ class HorizontalVerticalFilterSeleniumTests(AdminWidgetSeleniumTestCase):
class AdminRawIdWidgetSeleniumTests(AdminWidgetSeleniumTestCase):
def setUp(self):
- super(AdminRawIdWidgetSeleniumTests, self).setUp()
+ super().setUp()
Band.objects.create(id=42, name='Bogey Blues')
Band.objects.create(id=98, name='Green Potatoes')
diff --git a/tests/admin_widgets/widgetadmin.py b/tests/admin_widgets/widgetadmin.py
index a03e044b9d..a471a362fb 100644
--- a/tests/admin_widgets/widgetadmin.py
+++ b/tests/admin_widgets/widgetadmin.py
@@ -20,7 +20,7 @@ class CarTireAdmin(admin.ModelAdmin):
if db_field.name == "car":
kwargs["queryset"] = Car.objects.filter(owner=request.user)
return db_field.formfield(**kwargs)
- return super(CarTireAdmin, self).formfield_for_foreignkey(db_field, request, **kwargs)
+ return super().formfield_for_foreignkey(db_field, request, **kwargs)
class EventAdmin(admin.ModelAdmin):
diff --git a/tests/aggregation/tests.py b/tests/aggregation/tests.py
index 25a1e00827..8178cb8bcc 100644
--- a/tests/aggregation/tests.py
+++ b/tests/aggregation/tests.py
@@ -1088,7 +1088,7 @@ class AggregateTestCase(TestCase):
class MyMax(Max):
def as_sql(self, compiler, connection):
self.set_source_expressions(self.get_source_expressions()[0:1])
- return super(MyMax, self).as_sql(compiler, connection)
+ return super().as_sql(compiler, connection)
with self.assertRaisesMessage(FieldError, "Cannot compute Max('id__max'): 'id__max' is an aggregate"):
Book.objects.annotate(Max('id')).annotate(my_max=MyMax('id__max', 'price'))
@@ -1097,7 +1097,7 @@ class AggregateTestCase(TestCase):
class MyMax(Max):
def as_sql(self, compiler, connection):
self.set_source_expressions(self.get_source_expressions()[0:1])
- return super(MyMax, self).as_sql(compiler, connection)
+ return super().as_sql(compiler, connection)
with self.assertRaisesMessage(TypeError, 'Complex aggregates require an alias'):
Book.objects.aggregate(MyMax('pages', 'price'))
@@ -1172,7 +1172,7 @@ class AggregateTestCase(TestCase):
function = 'GREATEST'
def as_sqlite(self, compiler, connection):
- return super(Greatest, self).as_sql(compiler, connection, function='MAX')
+ return super().as_sql(compiler, connection, function='MAX')
qs = Publisher.objects.annotate(
price_or_median=Greatest(Avg('book__rating'), Avg('book__price'))
diff --git a/tests/auth_tests/client.py b/tests/auth_tests/client.py
index 004101108b..8f09f115cd 100644
--- a/tests/auth_tests/client.py
+++ b/tests/auth_tests/client.py
@@ -34,8 +34,8 @@ class PasswordResetConfirmClient(Client):
def get(self, path, *args, **kwargs):
redirect_url = self._get_password_reset_confirm_redirect_url(path)
- return super(PasswordResetConfirmClient, self).get(redirect_url, *args, **kwargs)
+ return super().get(redirect_url, *args, **kwargs)
def post(self, path, *args, **kwargs):
redirect_url = self._get_password_reset_confirm_redirect_url(path)
- return super(PasswordResetConfirmClient, self).post(redirect_url, *args, **kwargs)
+ return super().post(redirect_url, *args, **kwargs)
diff --git a/tests/auth_tests/test_auth_backends.py b/tests/auth_tests/test_auth_backends.py
index 3d929698c9..0c516dda34 100644
--- a/tests/auth_tests/test_auth_backends.py
+++ b/tests/auth_tests/test_auth_backends.py
@@ -27,7 +27,7 @@ class CountingMD5PasswordHasher(MD5PasswordHasher):
def encode(self, *args, **kwargs):
type(self).calls += 1
- return super(CountingMD5PasswordHasher, self).encode(*args, **kwargs)
+ return super().encode(*args, **kwargs)
class BaseModelBackendTest:
diff --git a/tests/auth_tests/test_deprecated_views.py b/tests/auth_tests/test_deprecated_views.py
index 285638027e..ba43140ebe 100644
--- a/tests/auth_tests/test_deprecated_views.py
+++ b/tests/auth_tests/test_deprecated_views.py
@@ -332,7 +332,7 @@ class UUIDUserPasswordResetTest(CustomUserPasswordResetTest):
username='foo',
password='foo',
)
- return super(UUIDUserPasswordResetTest, self)._test_confirm_start()
+ return super()._test_confirm_start()
@ignore_warnings(category=RemovedInDjango21Warning)
diff --git a/tests/auth_tests/test_forms.py b/tests/auth_tests/test_forms.py
index abd5b0f8df..24343ea5f5 100644
--- a/tests/auth_tests/test_forms.py
+++ b/tests/auth_tests/test_forms.py
@@ -564,7 +564,7 @@ class UserChangeFormTest(TestDataMixin, TestCase):
class MyUserForm(UserChangeForm):
def __init__(self, *args, **kwargs):
- super(MyUserForm, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
self.fields['groups'].help_text = 'These groups give users different permissions'
class Meta(UserChangeForm.Meta):
@@ -645,7 +645,7 @@ class PasswordResetFormTest(TestDataMixin, TestCase):
@classmethod
def setUpClass(cls):
- super(PasswordResetFormTest, cls).setUpClass()
+ super().setUpClass()
# This cleanup is necessary because contrib.sites cache
# makes tests interfere with each other, see #11505
Site.objects.clear_cache()
diff --git a/tests/auth_tests/test_remote_user.py b/tests/auth_tests/test_remote_user.py
index e03e0a3b95..2a1ebbb569 100644
--- a/tests/auth_tests/test_remote_user.py
+++ b/tests/auth_tests/test_remote_user.py
@@ -218,7 +218,7 @@ class RemoteUserCustomTest(RemoteUserTest):
The strings passed in REMOTE_USER should be cleaned and the known users
should not have been configured with an email address.
"""
- super(RemoteUserCustomTest, self).test_known_user()
+ super().test_known_user()
self.assertEqual(User.objects.get(username='knownuser').email, '')
self.assertEqual(User.objects.get(username='knownuser2').email, '')
@@ -226,7 +226,7 @@ class RemoteUserCustomTest(RemoteUserTest):
"""
The unknown user created should be configured with an email address.
"""
- super(RemoteUserCustomTest, self).test_unknown_user()
+ super().test_unknown_user()
newuser = User.objects.get(username='newuser')
self.assertEqual(newuser.email, 'user@example.com')
diff --git a/tests/auth_tests/test_views.py b/tests/auth_tests/test_views.py
index 1e18e0c73b..76d167fa40 100644
--- a/tests/auth_tests/test_views.py
+++ b/tests/auth_tests/test_views.py
@@ -411,7 +411,7 @@ class UUIDUserPasswordResetTest(CustomUserPasswordResetTest):
username='foo',
password='foo',
)
- return super(UUIDUserPasswordResetTest, self)._test_confirm_start()
+ return super()._test_confirm_start()
class ChangePasswordTest(AuthViewsTestCase):
diff --git a/tests/auth_tests/urls.py b/tests/auth_tests/urls.py
index 35bdbbb3a8..392355f9b3 100644
--- a/tests/auth_tests/urls.py
+++ b/tests/auth_tests/urls.py
@@ -15,7 +15,7 @@ from django.views.decorators.cache import never_cache
class CustomRequestAuthenticationForm(AuthenticationForm):
def __init__(self, request, *args, **kwargs):
assert isinstance(request, HttpRequest)
- super(CustomRequestAuthenticationForm, self).__init__(request, *args, **kwargs)
+ super().__init__(request, *args, **kwargs)
@never_cache
diff --git a/tests/auth_tests/urls_custom_user_admin.py b/tests/auth_tests/urls_custom_user_admin.py
index 94039dfa57..59b80d04d7 100644
--- a/tests/auth_tests/urls_custom_user_admin.py
+++ b/tests/auth_tests/urls_custom_user_admin.py
@@ -12,7 +12,7 @@ class CustomUserAdmin(UserAdmin):
# integer manually to avoid causing an error.
original_pk = request.user.pk
request.user.pk = 1
- super(CustomUserAdmin, self).log_change(request, object, message)
+ super().log_change(request, object, message)
request.user.pk = original_pk
diff --git a/tests/basic/tests.py b/tests/basic/tests.py
index 544a862766..571088da40 100644
--- a/tests/basic/tests.py
+++ b/tests/basic/tests.py
@@ -641,7 +641,7 @@ class SelectOnSaveTests(TestCase):
def _update(self, *args, **kwargs):
FakeQuerySet.called = True
- super(FakeQuerySet, self)._update(*args, **kwargs)
+ super()._update(*args, **kwargs)
return 0
try:
diff --git a/tests/builtin_server/tests.py b/tests/builtin_server/tests.py
index a294339f85..73e3d0c07e 100644
--- a/tests/builtin_server/tests.py
+++ b/tests/builtin_server/tests.py
@@ -34,7 +34,7 @@ class ServerHandler(simple_server.ServerHandler):
self._flush()
def error_output(self, environ, start_response):
- super(ServerHandler, self).error_output(environ, start_response)
+ super().error_output(environ, start_response)
return ['\n'.join(traceback.format_exception(*sys.exc_info()))]
@@ -45,7 +45,7 @@ class DummyHandler:
class FileWrapperHandler(ServerHandler):
def __init__(self, *args, **kwargs):
- super(FileWrapperHandler, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
self.request_handler = DummyHandler()
self._used_sendfile = False
@@ -97,13 +97,13 @@ class WriteChunkCounterHandler(ServerHandler):
"""
def __init__(self, *args, **kwargs):
- super(WriteChunkCounterHandler, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
self.request_handler = DummyHandler()
self.headers_written = False
self.write_chunk_counter = 0
def send_headers(self):
- super(WriteChunkCounterHandler, self).send_headers()
+ super().send_headers()
self.headers_written = True
def _write(self, data):
diff --git a/tests/cache/tests.py b/tests/cache/tests.py
index 7c61837ab0..d519080c9a 100644
--- a/tests/cache/tests.py
+++ b/tests/cache/tests.py
@@ -949,12 +949,12 @@ class DBCacheTests(BaseCacheTests, TransactionTestCase):
def setUp(self):
# The super calls needs to happen first for the settings override.
- super(DBCacheTests, self).setUp()
+ super().setUp()
self.create_table()
def tearDown(self):
# The super call needs to happen first because it uses the database.
- super(DBCacheTests, self).tearDown()
+ super().tearDown()
self.drop_table()
def create_table(self):
@@ -1074,7 +1074,7 @@ class PicklingSideEffect:
class LocMemCacheTests(BaseCacheTests, TestCase):
def setUp(self):
- super(LocMemCacheTests, self).setUp()
+ super().setUp()
# LocMem requires a hack to make the other caches
# share a data store with the 'normal' cache.
@@ -1321,7 +1321,7 @@ class FileBasedCacheTests(BaseCacheTests, TestCase):
"""
def setUp(self):
- super(FileBasedCacheTests, self).setUp()
+ super().setUp()
self.dirname = tempfile.mkdtemp()
# Caches location cannot be modified through override_settings / modify_settings,
# hence settings are manipulated directly here and the setting_changed signal
@@ -1331,7 +1331,7 @@ class FileBasedCacheTests(BaseCacheTests, TestCase):
setting_changed.send(self.__class__, setting='CACHES', enter=False)
def tearDown(self):
- super(FileBasedCacheTests, self).tearDown()
+ super().tearDown()
# Call parent first, as cache.clear() may recreate cache base directory
shutil.rmtree(self.dirname)
@@ -1962,7 +1962,7 @@ def csrf_view(request):
class CacheMiddlewareTest(SimpleTestCase):
def setUp(self):
- super(CacheMiddlewareTest, self).setUp()
+ super().setUp()
self.factory = RequestFactory()
self.default_cache = caches['default']
self.other_cache = caches['other']
@@ -1970,7 +1970,7 @@ class CacheMiddlewareTest(SimpleTestCase):
def tearDown(self):
self.default_cache.clear()
self.other_cache.clear()
- super(CacheMiddlewareTest, self).tearDown()
+ super().tearDown()
def test_constructor(self):
"""
diff --git a/tests/check_framework/test_templates.py b/tests/check_framework/test_templates.py
index 918e0fcbdf..494dab0192 100644
--- a/tests/check_framework/test_templates.py
+++ b/tests/check_framework/test_templates.py
@@ -59,7 +59,7 @@ class CheckTemplateStringIfInvalidTest(SimpleTestCase):
@classmethod
def setUpClass(cls):
- super(CheckTemplateStringIfInvalidTest, cls).setUpClass()
+ super().setUpClass()
cls.error1 = copy(E002)
cls.error2 = copy(E002)
string_if_invalid1 = cls.TEMPLATES_STRING_IF_INVALID[0]['OPTIONS']['string_if_invalid']
diff --git a/tests/csrf_tests/tests.py b/tests/csrf_tests/tests.py
index f68b0f037b..3531939a73 100644
--- a/tests/csrf_tests/tests.py
+++ b/tests/csrf_tests/tests.py
@@ -27,7 +27,7 @@ class TestingHttpRequest(HttpRequest):
more easily
"""
def __init__(self):
- super(TestingHttpRequest, self).__init__()
+ super().__init__()
# A real session backend isn't needed.
self.session = {}
@@ -432,7 +432,7 @@ class CsrfViewMiddlewareTestMixin:
HttpRequest that can raise an IOError when accessing POST data
"""
def __init__(self, token, raise_error):
- super(CsrfPostRequest, self).__init__()
+ super().__init__()
self.method = 'POST'
self.raise_error = False
diff --git a/tests/custom_lookups/tests.py b/tests/custom_lookups/tests.py
index 7b8cca6646..4a477b4687 100644
--- a/tests/custom_lookups/tests.py
+++ b/tests/custom_lookups/tests.py
@@ -145,13 +145,13 @@ class SQLFuncMixin:
class SQLFuncLookup(SQLFuncMixin, models.Lookup):
def __init__(self, name, *args, **kwargs):
- super(SQLFuncLookup, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
self.name = name
class SQLFuncTransform(SQLFuncMixin, models.Transform):
def __init__(self, name, *args, **kwargs):
- super(SQLFuncTransform, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
self.name = name
@@ -173,13 +173,13 @@ class CustomField(models.TextField):
if lookup_name.startswith('lookupfunc_'):
key, name = lookup_name.split('_', 1)
return SQLFuncFactory(key, name)
- return super(CustomField, self).get_lookup(lookup_name)
+ return super().get_lookup(lookup_name)
def get_transform(self, lookup_name):
if lookup_name.startswith('transformfunc_'):
key, name = lookup_name.split('_', 1)
return SQLFuncFactory(key, name)
- return super(CustomField, self).get_transform(lookup_name)
+ return super().get_transform(lookup_name)
class CustomModel(models.Model):
@@ -490,11 +490,11 @@ class TrackCallsYearTransform(YearTransform):
def get_lookup(self, lookup_name):
self.call_order.append('lookup')
- return super(TrackCallsYearTransform, self).get_lookup(lookup_name)
+ return super().get_lookup(lookup_name)
def get_transform(self, lookup_name):
self.call_order.append('transform')
- return super(TrackCallsYearTransform, self).get_transform(lookup_name)
+ return super().get_transform(lookup_name)
class LookupTransformCallOrderTests(TestCase):
diff --git a/tests/custom_managers/models.py b/tests/custom_managers/models.py
index c5f224ea51..f90425db3c 100644
--- a/tests/custom_managers/models.py
+++ b/tests/custom_managers/models.py
@@ -22,12 +22,12 @@ class PersonManager(models.Manager):
class PublishedBookManager(models.Manager):
def get_queryset(self):
- return super(PublishedBookManager, self).get_queryset().filter(is_published=True)
+ return super().get_queryset().filter(is_published=True)
class CustomQuerySet(models.QuerySet):
def filter(self, *args, **kwargs):
- queryset = super(CustomQuerySet, self).filter(fun=True)
+ queryset = super().filter(fun=True)
queryset._filter_CustomQuerySet = True
return queryset
@@ -48,11 +48,11 @@ class CustomQuerySet(models.QuerySet):
class BaseCustomManager(models.Manager):
def __init__(self, arg):
- super(BaseCustomManager, self).__init__()
+ super().__init__()
self.init_arg = arg
def filter(self, *args, **kwargs):
- queryset = super(BaseCustomManager, self).filter(fun=True)
+ queryset = super().filter(fun=True)
queryset._filter_CustomManager = True
return queryset
@@ -66,23 +66,23 @@ CustomManager = BaseCustomManager.from_queryset(CustomQuerySet)
class CustomInitQuerySet(models.QuerySet):
# QuerySet with an __init__() method that takes an additional argument.
def __init__(self, custom_optional_arg=None, model=None, query=None, using=None, hints=None):
- super(CustomInitQuerySet, self).__init__(model=model, query=query, using=using, hints=hints)
+ super().__init__(model=model, query=query, using=using, hints=hints)
class DeconstructibleCustomManager(BaseCustomManager.from_queryset(CustomQuerySet)):
def __init__(self, a, b, c=1, d=2):
- super(DeconstructibleCustomManager, self).__init__(a)
+ super().__init__(a)
class FunPeopleManager(models.Manager):
def get_queryset(self):
- return super(FunPeopleManager, self).get_queryset().filter(fun=True)
+ return super().get_queryset().filter(fun=True)
class BoringPeopleManager(models.Manager):
def get_queryset(self):
- return super(BoringPeopleManager, self).get_queryset().filter(fun=False)
+ return super().get_queryset().filter(fun=False)
class Person(models.Model):
@@ -151,7 +151,7 @@ class Book(models.Model):
class FastCarManager(models.Manager):
def get_queryset(self):
- return super(FastCarManager, self).get_queryset().filter(top_speed__gt=150)
+ return super().get_queryset().filter(top_speed__gt=150)
class Car(models.Model):
@@ -179,7 +179,7 @@ class FastCarAsDefault(Car):
class RestrictedManager(models.Manager):
def get_queryset(self):
- return super(RestrictedManager, self).get_queryset().filter(is_public=True)
+ return super().get_queryset().filter(is_public=True)
class RelatedModel(models.Model):
diff --git a/tests/custom_pk/fields.py b/tests/custom_pk/fields.py
index 2be2288ed8..78bb463fce 100644
--- a/tests/custom_pk/fields.py
+++ b/tests/custom_pk/fields.py
@@ -24,7 +24,7 @@ class MyAutoField(models.CharField):
def __init__(self, *args, **kwargs):
kwargs['max_length'] = 10
- super(MyAutoField, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
def pre_save(self, instance, add):
value = getattr(instance, self.attname, None)
diff --git a/tests/defer/models.py b/tests/defer/models.py
index dbdce0b025..fc14f43393 100644
--- a/tests/defer/models.py
+++ b/tests/defer/models.py
@@ -43,4 +43,4 @@ class RefreshPrimaryProxy(Primary):
deferred_fields = self.get_deferred_fields()
if fields.intersection(deferred_fields):
fields = fields.union(deferred_fields)
- super(RefreshPrimaryProxy, self).refresh_from_db(using, fields, **kwargs)
+ super().refresh_from_db(using, fields, **kwargs)
diff --git a/tests/deprecation/tests.py b/tests/deprecation/tests.py
index 1afd52f943..ef0284b378 100644
--- a/tests/deprecation/tests.py
+++ b/tests/deprecation/tests.py
@@ -85,7 +85,7 @@ class RenameMethodsTests(SimpleTestCase):
class Deprecated(Renamed):
def old(self):
- super(Deprecated, self).old()
+ super().old()
warnings.simplefilter('always')
deprecated = Deprecated()
deprecated.new()
@@ -115,7 +115,7 @@ class RenameMethodsTests(SimpleTestCase):
class Renamed(Deprecated):
def new(self):
- super(Renamed, self).new()
+ super().new()
warnings.simplefilter('always')
renamed = Renamed()
renamed.new()
@@ -140,11 +140,11 @@ class RenameMethodsTests(SimpleTestCase):
class RenamedMixin:
def new(self):
- super(RenamedMixin, self).new()
+ super().new()
class DeprecatedMixin:
def old(self):
- super(DeprecatedMixin, self).old()
+ super().old()
class Deprecated(DeprecatedMixin, RenamedMixin, Renamed):
pass
diff --git a/tests/extra_regress/models.py b/tests/extra_regress/models.py
index 1a5c2dedeb..b069affccd 100644
--- a/tests/extra_regress/models.py
+++ b/tests/extra_regress/models.py
@@ -14,12 +14,12 @@ class RevisionableModel(models.Model):
return "%s (%s, %s)" % (self.title, self.id, self.base.id)
def save(self, *args, **kwargs):
- super(RevisionableModel, self).save(*args, **kwargs)
+ super().save(*args, **kwargs)
if not self.base:
self.base = self
kwargs.pop('force_insert', None)
kwargs.pop('force_update', None)
- super(RevisionableModel, self).save(*args, **kwargs)
+ super().save(*args, **kwargs)
def new_revision(self):
new_revision = copy.copy(self)
diff --git a/tests/file_storage/tests.py b/tests/file_storage/tests.py
index ba77622067..baa6098b09 100644
--- a/tests/file_storage/tests.py
+++ b/tests/file_storage/tests.py
@@ -564,7 +564,7 @@ class CustomStorageTests(FileStorageTests):
class DiscardingFalseContentStorage(FileSystemStorage):
def _save(self, name, content):
if content:
- return super(DiscardingFalseContentStorage, self)._save(name, content)
+ return super()._save(name, content)
return ''
@@ -804,7 +804,7 @@ class FileFieldStorageTests(TestCase):
class SlowFile(ContentFile):
def chunks(self):
time.sleep(1)
- return super(ContentFile, self).chunks()
+ return super().chunks()
class FileSaveRaceConditionTest(SimpleTestCase):
diff --git a/tests/file_uploads/tests.py b/tests/file_uploads/tests.py
index 827083412e..44a7272753 100644
--- a/tests/file_uploads/tests.py
+++ b/tests/file_uploads/tests.py
@@ -28,14 +28,14 @@ class FileUploadTests(TestCase):
@classmethod
def setUpClass(cls):
- super(FileUploadTests, cls).setUpClass()
+ super().setUpClass()
if not os.path.isdir(MEDIA_ROOT):
os.makedirs(MEDIA_ROOT)
@classmethod
def tearDownClass(cls):
shutil.rmtree(MEDIA_ROOT)
- super(FileUploadTests, cls).tearDownClass()
+ super().tearDownClass()
def test_simple_upload(self):
with open(__file__, 'rb') as fp:
@@ -475,7 +475,7 @@ class FileUploadTests(TestCase):
class POSTAccessingHandler(client.ClientHandler):
"""A handler that'll access POST during an exception."""
def handle_uncaught_exception(self, request, resolver, exc_info):
- ret = super(POSTAccessingHandler, self).handle_uncaught_exception(request, resolver, exc_info)
+ ret = super().handle_uncaught_exception(request, resolver, exc_info)
request.POST # evaluate
return ret
@@ -546,14 +546,14 @@ class DirectoryCreationTests(SimpleTestCase):
"""
@classmethod
def setUpClass(cls):
- super(DirectoryCreationTests, cls).setUpClass()
+ super().setUpClass()
if not os.path.isdir(MEDIA_ROOT):
os.makedirs(MEDIA_ROOT)
@classmethod
def tearDownClass(cls):
shutil.rmtree(MEDIA_ROOT)
- super(DirectoryCreationTests, cls).tearDownClass()
+ super().tearDownClass()
def setUp(self):
self.obj = FileModel()
diff --git a/tests/file_uploads/uploadhandler.py b/tests/file_uploads/uploadhandler.py
index b69cc751cb..7c6199fd16 100644
--- a/tests/file_uploads/uploadhandler.py
+++ b/tests/file_uploads/uploadhandler.py
@@ -14,7 +14,7 @@ class QuotaUploadHandler(FileUploadHandler):
QUOTA = 5 * 2 ** 20 # 5 MB
def __init__(self, request=None):
- super(QuotaUploadHandler, self).__init__(request)
+ super().__init__(request)
self.total_upload = 0
def receive_data_chunk(self, raw_data, start):
diff --git a/tests/fixtures/models.py b/tests/fixtures/models.py
index b3ebb8fc5d..07ef1587d9 100644
--- a/tests/fixtures/models.py
+++ b/tests/fixtures/models.py
@@ -80,7 +80,7 @@ class Person(models.Model):
class SpyManager(PersonManager):
def get_queryset(self):
- return super(SpyManager, self).get_queryset().filter(cover_blown=False)
+ return super().get_queryset().filter(cover_blown=False)
class Spy(Person):
diff --git a/tests/flatpages_tests/test_sitemaps.py b/tests/flatpages_tests/test_sitemaps.py
index 10076798c0..62522b343e 100644
--- a/tests/flatpages_tests/test_sitemaps.py
+++ b/tests/flatpages_tests/test_sitemaps.py
@@ -17,7 +17,7 @@ class FlatpagesSitemapTests(TestCase):
@classmethod
def setUpClass(cls):
- super(FlatpagesSitemapTests, cls).setUpClass()
+ super().setUpClass()
# This cleanup is necessary because contrib.sites cache
# makes tests interfere with each other, see #11505
Site.objects.clear_cache()
diff --git a/tests/foreign_object/models/article.py b/tests/foreign_object/models/article.py
index 940ec003fb..851029efa1 100644
--- a/tests/foreign_object/models/article.py
+++ b/tests/foreign_object/models/article.py
@@ -39,7 +39,7 @@ class ActiveTranslationField(models.ForeignObject):
return {'lang': get_language()}
def contribute_to_class(self, cls, name):
- super(ActiveTranslationField, self).contribute_to_class(cls, name)
+ super().contribute_to_class(cls, name)
setattr(cls, self.name, ArticleTranslationDescriptor(self))
diff --git a/tests/foreign_object/models/empty_join.py b/tests/foreign_object/models/empty_join.py
index 5b58ffdafc..4ad1ad688b 100644
--- a/tests/foreign_object/models/empty_join.py
+++ b/tests/foreign_object/models/empty_join.py
@@ -36,7 +36,7 @@ class StartsWithRelation(models.ForeignObject):
def __init__(self, *args, **kwargs):
kwargs['on_delete'] = models.DO_NOTHING
- super(StartsWithRelation, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
@property
def field(self):
@@ -64,7 +64,7 @@ class StartsWithRelation(models.ForeignObject):
return [PathInfo(from_opts, to_opts, (to_opts.pk,), self.remote_field, False, False)]
def contribute_to_class(self, cls, name, private_only=False):
- super(StartsWithRelation, self).contribute_to_class(cls, name, private_only)
+ super().contribute_to_class(cls, name, private_only)
setattr(cls, self.name, ReverseManyToOneDescriptor(self))
diff --git a/tests/forms_tests/field_tests/test_base.py b/tests/forms_tests/field_tests/test_base.py
index 721c0a935a..4ddbea3414 100644
--- a/tests/forms_tests/field_tests/test_base.py
+++ b/tests/forms_tests/field_tests/test_base.py
@@ -12,11 +12,11 @@ class BasicFieldsTests(SimpleTestCase):
class A:
def __init__(self):
self.class_a_var = True
- super(A, self).__init__()
+ super().__init__()
class ComplexField(Field, A):
def __init__(self):
- super(ComplexField, self).__init__()
+ super().__init__()
f = ComplexField()
self.assertTrue(f.class_a_var)
diff --git a/tests/forms_tests/field_tests/test_multivaluefield.py b/tests/forms_tests/field_tests/test_multivaluefield.py
index e7d161fb5b..1395be6cd0 100644
--- a/tests/forms_tests/field_tests/test_multivaluefield.py
+++ b/tests/forms_tests/field_tests/test_multivaluefield.py
@@ -17,7 +17,7 @@ class ComplexMultiWidget(MultiWidget):
SelectMultiple(choices=beatles),
SplitDateTimeWidget(),
)
- super(ComplexMultiWidget, self).__init__(widgets, attrs)
+ super().__init__(widgets, attrs)
def decompress(self, value):
if value:
@@ -40,7 +40,7 @@ class ComplexField(MultiValueField):
MultipleChoiceField(choices=beatles),
SplitDateTimeField(),
)
- super(ComplexField, self).__init__(fields, required, widget, label, initial)
+ super().__init__(fields, required, widget, label, initial)
def compress(self, data_list):
if data_list:
@@ -57,7 +57,7 @@ class MultiValueFieldTest(SimpleTestCase):
@classmethod
def setUpClass(cls):
cls.field = ComplexField(widget=ComplexMultiWidget())
- super(MultiValueFieldTest, cls).setUpClass()
+ super().setUpClass()
def test_clean(self):
self.assertEqual(
diff --git a/tests/forms_tests/tests/test_forms.py b/tests/forms_tests/tests/test_forms.py
index 2a1ec44f66..19f1927824 100644
--- a/tests/forms_tests/tests/test_forms.py
+++ b/tests/forms_tests/tests/test_forms.py
@@ -1231,7 +1231,7 @@ value="Should escape &lt; &amp; &gt; and &lt;script&gt;alert(&#39;xss&#39;)&lt;/
last_name = CharField()
def __init__(self, *args, **kwargs):
- super(Person, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
self.fields['birthday'] = DateField()
p = Person(auto_id=False)
@@ -1302,7 +1302,7 @@ value="Should escape &lt; &amp; &gt; and &lt;script&gt;alert(&#39;xss&#39;)&lt;/
last_name = CharField(required=False)
def __init__(self, names_required=False, *args, **kwargs):
- super(Person, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
if names_required:
self.fields['first_name'].required = True
@@ -1329,7 +1329,7 @@ value="Should escape &lt; &amp; &gt; and &lt;script&gt;alert(&#39;xss&#39;)&lt;/
last_name = CharField(max_length=30)
def __init__(self, name_max_length=None, *args, **kwargs):
- super(Person, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
if name_max_length:
self.fields['first_name'].max_length = name_max_length
@@ -1350,7 +1350,7 @@ value="Should escape &lt; &amp; &gt; and &lt;script&gt;alert(&#39;xss&#39;)&lt;/
gender = ChoiceField(choices=(('f', 'Female'), ('m', 'Male')))
def __init__(self, allow_unspec_gender=False, *args, **kwargs):
- super(Person, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
if allow_unspec_gender:
self.fields['gender'].choices += (('u', 'Unspecified'),)
@@ -1540,7 +1540,7 @@ value="Should escape &lt; &amp; &gt; and &lt;script&gt;alert(&#39;xss&#39;)&lt;/
field_order = None
def __init__(self, **kwargs):
- super(TestFormInit, self).__init__(**kwargs)
+ super().__init__(**kwargs)
self.order_fields(field_order=TestForm.field_order)
p = TestFormParent()
@@ -2818,7 +2818,7 @@ Good luck picking a username that doesn&#39;t already exist.</p>
def __init__(self, fields=(), *args, **kwargs):
fields = (CharField(label='First name', max_length=10),
CharField(label='Last name', max_length=10))
- super(NameField, self).__init__(fields=fields, *args, **kwargs)
+ super().__init__(fields=fields, *args, **kwargs)
def compress(self, data_list):
return ' '.join(data_list)
@@ -2849,7 +2849,7 @@ Good luck picking a username that doesn&#39;t already exist.</p>
ChoiceField(label='Rank', choices=((1, 1), (2, 2))),
CharField(label='Name', max_length=10),
)
- super(ChoicesField, self).__init__(fields=fields, *args, **kwargs)
+ super().__init__(fields=fields, *args, **kwargs)
field = ChoicesField()
field2 = copy.deepcopy(field)
@@ -2864,7 +2864,7 @@ Good luck picking a username that doesn&#39;t already exist.</p>
class DateAgeField(MultiValueField):
def __init__(self, fields=(), *args, **kwargs):
fields = (DateField(label="Date"), IntegerField(label="Age"))
- super(DateAgeField, self).__init__(fields=fields, *args, **kwargs)
+ super().__init__(fields=fields, *args, **kwargs)
class DateAgeForm(Form):
date_age = DateAgeField()
@@ -2883,7 +2883,7 @@ Good luck picking a username that doesn&#39;t already exist.</p>
CharField(label='Extension', error_messages={'incomplete': 'Enter an extension.'}),
CharField(label='Label', required=False, help_text='E.g. home, work.'),
)
- super(PhoneField, self).__init__(fields, *args, **kwargs)
+ super().__init__(fields, *args, **kwargs)
def compress(self, data_list):
if data_list:
@@ -2964,7 +2964,7 @@ Good luck picking a username that doesn&#39;t already exist.</p>
# Fake json.loads
if value == '{}':
return {}
- return super(CustomJSONField, self).to_python(value)
+ return super().to_python(value)
class JSONForm(forms.Form):
json = CustomJSONField()
diff --git a/tests/forms_tests/tests/test_formsets.py b/tests/forms_tests/tests/test_formsets.py
index 3c3228fafc..26d9e15605 100644
--- a/tests/forms_tests/tests/test_formsets.py
+++ b/tests/forms_tests/tests/test_formsets.py
@@ -58,7 +58,7 @@ SplitDateTimeFormSet = formset_factory(SplitDateTimeForm)
class CustomKwargForm(Form):
def __init__(self, *args, **kwargs):
self.custom_kwarg = kwargs.pop('custom_kwarg')
- super(CustomKwargForm, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
class FormsFormsetTestCase(SimpleTestCase):
@@ -1056,7 +1056,7 @@ class FormsFormsetTestCase(SimpleTestCase):
return reversed(self.forms)
def __getitem__(self, idx):
- return super(BaseReverseFormSet, self).__getitem__(len(self) - idx - 1)
+ return super().__getitem__(len(self) - idx - 1)
ReverseChoiceFormset = formset_factory(Choice, BaseReverseFormSet, extra=3)
reverse_formset = ReverseChoiceFormset()
@@ -1106,7 +1106,7 @@ class FormsFormsetTestCase(SimpleTestCase):
class AnotherChoice(Choice):
def is_valid(self):
self.is_valid_called = True
- return super(AnotherChoice, self).is_valid()
+ return super().is_valid()
AnotherChoiceFormSet = formset_factory(AnotherChoice)
data = {
diff --git a/tests/forms_tests/tests/test_media.py b/tests/forms_tests/tests/test_media.py
index 72db13ef21..488fe190b2 100644
--- a/tests/forms_tests/tests/test_media.py
+++ b/tests/forms_tests/tests/test_media.py
@@ -164,7 +164,7 @@ class FormsMediaTestCase(SimpleTestCase):
# Media properties can reference the media of their parents
class MyWidget5(MyWidget4):
def _media(self):
- return super(MyWidget5, self).media + Media(css={'all': ('/other/path',)}, js=('/other/js',))
+ return super().media + Media(css={'all': ('/other/path',)}, js=('/other/js',))
media = property(_media)
w5 = MyWidget5()
@@ -185,7 +185,7 @@ class FormsMediaTestCase(SimpleTestCase):
class MyWidget6(MyWidget1):
def _media(self):
- return super(MyWidget6, self).media + Media(css={'all': ('/other/path',)}, js=('/other/js',))
+ return super().media + Media(css={'all': ('/other/path',)}, js=('/other/js',))
media = property(_media)
w6 = MyWidget6()
@@ -405,7 +405,7 @@ class FormsMediaTestCase(SimpleTestCase):
class MyMultiWidget(MultiWidget):
def __init__(self, attrs=None):
widgets = [MyWidget1, MyWidget2, MyWidget3]
- super(MyMultiWidget, self).__init__(widgets, attrs)
+ super().__init__(widgets, attrs)
mymulti = MyMultiWidget()
self.assertEqual(
diff --git a/tests/forms_tests/widget_tests/base.py b/tests/forms_tests/widget_tests/base.py
index 490f033bad..7222910479 100644
--- a/tests/forms_tests/widget_tests/base.py
+++ b/tests/forms_tests/widget_tests/base.py
@@ -15,7 +15,7 @@ class WidgetTest(SimpleTestCase):
cls.django_renderer = DjangoTemplates()
cls.jinja2_renderer = Jinja2() if jinja2 else None
cls.renderers = [cls.django_renderer] + ([cls.jinja2_renderer] if cls.jinja2_renderer else [])
- super(WidgetTest, cls).setUpClass()
+ super().setUpClass()
def check_html(self, widget, name, value, html='', attrs=None, strict=False, **kwargs):
assertEqual = self.assertEqual if strict else self.assertHTMLEqual
diff --git a/tests/forms_tests/widget_tests/test_multiwidget.py b/tests/forms_tests/widget_tests/test_multiwidget.py
index bf9ef38a6b..b19b5ce9cf 100644
--- a/tests/forms_tests/widget_tests/test_multiwidget.py
+++ b/tests/forms_tests/widget_tests/test_multiwidget.py
@@ -24,7 +24,7 @@ class ComplexMultiWidget(MultiWidget):
SelectMultiple(choices=WidgetTest.beatles),
SplitDateTimeWidget(),
)
- super(ComplexMultiWidget, self).__init__(widgets, attrs)
+ super().__init__(widgets, attrs)
def decompress(self, value):
if value:
@@ -45,9 +45,7 @@ class ComplexField(MultiValueField):
MultipleChoiceField(choices=WidgetTest.beatles),
SplitDateTimeField(),
)
- super(ComplexField, self).__init__(
- fields, required, widget, label, initial,
- )
+ super().__init__(fields, required, widget, label, initial)
def compress(self, data_list):
if data_list:
@@ -66,7 +64,7 @@ class DeepCopyWidget(MultiWidget):
RadioSelect(choices=choices),
TextInput,
]
- super(DeepCopyWidget, self).__init__(widgets)
+ super().__init__(widgets)
def _set_choices(self, choices):
"""
diff --git a/tests/from_db_value/models.py b/tests/from_db_value/models.py
index fae9565a02..2f2304ff0a 100644
--- a/tests/from_db_value/models.py
+++ b/tests/from_db_value/models.py
@@ -7,7 +7,7 @@ class Cash(decimal.Decimal):
currency = 'USD'
def __str__(self):
- s = super(Cash, self).__str__(self)
+ s = super().__str__(self)
return '%s %s' % (s, self.currency)
@@ -15,7 +15,7 @@ class CashField(models.DecimalField):
def __init__(self, **kwargs):
kwargs['max_digits'] = 20
kwargs['decimal_places'] = 2
- super(CashField, self).__init__(**kwargs)
+ super().__init__(**kwargs)
def from_db_value(self, value, expression, connection, context):
cash = Cash(value)
diff --git a/tests/generic_relations/models.py b/tests/generic_relations/models.py
index a2f68ff05a..eec40e87a4 100644
--- a/tests/generic_relations/models.py
+++ b/tests/generic_relations/models.py
@@ -97,7 +97,7 @@ class Mineral(models.Model):
class GeckoManager(models.Manager):
def get_queryset(self):
- return super(GeckoManager, self).get_queryset().filter(has_tail=True)
+ return super().get_queryset().filter(has_tail=True)
class Gecko(models.Model):
diff --git a/tests/generic_relations/tests.py b/tests/generic_relations/tests.py
index 5bfea72cf1..08651adb0e 100644
--- a/tests/generic_relations/tests.py
+++ b/tests/generic_relations/tests.py
@@ -603,7 +603,7 @@ class GenericInlineFormsetTest(TestCase):
class SaveTestForm(forms.ModelForm):
def save(self, *args, **kwargs):
self.instance.saved_by = "custom method"
- return super(SaveTestForm, self).save(*args, **kwargs)
+ return super().save(*args, **kwargs)
Formset = generic_inlineformset_factory(ForProxyModelModel, fields='__all__', form=SaveTestForm)
diff --git a/tests/generic_relations_regress/models.py b/tests/generic_relations_regress/models.py
index fae8aadaa5..6fca154f15 100644
--- a/tests/generic_relations_regress/models.py
+++ b/tests/generic_relations_regress/models.py
@@ -138,7 +138,7 @@ class Board(models.Model):
class SpecialGenericRelation(GenericRelation):
def __init__(self, *args, **kwargs):
- super(SpecialGenericRelation, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
self.editable = True
self.save_form_data_calls = 0
diff --git a/tests/generic_views/test_base.py b/tests/generic_views/test_base.py
index be89592dbc..88c376dddc 100644
--- a/tests/generic_views/test_base.py
+++ b/tests/generic_views/test_base.py
@@ -41,7 +41,7 @@ class DecoratedDispatchView(SimpleView):
@decorator
def dispatch(self, request, *args, **kwargs):
- return super(DecoratedDispatchView, self).dispatch(request, *args, **kwargs)
+ return super().dispatch(request, *args, **kwargs)
class AboutTemplateView(TemplateView):
diff --git a/tests/generic_views/views.py b/tests/generic_views/views.py
index 05d5ec2f00..9041ad81a1 100644
--- a/tests/generic_views/views.py
+++ b/tests/generic_views/views.py
@@ -12,7 +12,7 @@ class CustomTemplateView(generic.TemplateView):
template_name = 'generic_views/about.html'
def get_context_data(self, **kwargs):
- context = super(CustomTemplateView, self).get_context_data(**kwargs)
+ context = super().get_context_data(**kwargs)
context.update({'key': 'value'})
return context
@@ -72,22 +72,14 @@ class BookList(generic.ListView):
class CustomPaginator(Paginator):
def __init__(self, queryset, page_size, orphans=0, allow_empty_first_page=True):
- super(CustomPaginator, self).__init__(
- queryset,
- page_size,
- orphans=2,
- allow_empty_first_page=allow_empty_first_page)
+ super().__init__(queryset, page_size, orphans=2, allow_empty_first_page=allow_empty_first_page)
class AuthorListCustomPaginator(AuthorList):
paginate_by = 5
def get_paginator(self, queryset, page_size, orphans=0, allow_empty_first_page=True):
- return super(AuthorListCustomPaginator, self).get_paginator(
- queryset,
- page_size,
- orphans=2,
- allow_empty_first_page=allow_empty_first_page)
+ return super().get_paginator(queryset, page_size, orphans=2, allow_empty_first_page=allow_empty_first_page)
class ContactView(generic.FormView):
@@ -152,7 +144,7 @@ class AuthorUpdate(generic.UpdateView):
def get_form(self, *args, **kwargs):
self.get_form_called_count += 1
- return super(AuthorUpdate, self).get_form(*args, **kwargs)
+ return super().get_form(*args, **kwargs)
class OneAuthorUpdate(generic.UpdateView):
@@ -231,8 +223,7 @@ class AuthorGetQuerySetFormView(generic.edit.ModelFormMixin):
class BookDetailGetObjectCustomQueryset(BookDetail):
def get_object(self, queryset=None):
- return super(BookDetailGetObjectCustomQueryset, self).get_object(
- queryset=Book.objects.filter(pk=self.kwargs['pk']))
+ return super().get_object(queryset=Book.objects.filter(pk=self.kwargs['pk']))
class CustomMultipleObjectMixinView(generic.list.MultipleObjectMixin, generic.View):
@@ -255,7 +246,7 @@ class CustomContextView(generic.detail.SingleObjectMixin, generic.View):
def get_context_data(self, **kwargs):
context = {'custom_key': 'custom_value'}
context.update(kwargs)
- return super(CustomContextView, self).get_context_data(**context)
+ return super().get_context_data(**context)
def get_context_object_name(self, obj):
return "test_name"
diff --git a/tests/get_object_or_404/models.py b/tests/get_object_or_404/models.py
index ce74bc04ad..b18918a853 100644
--- a/tests/get_object_or_404/models.py
+++ b/tests/get_object_or_404/models.py
@@ -22,7 +22,7 @@ class Author(models.Model):
class ArticleManager(models.Manager):
def get_queryset(self):
- return super(ArticleManager, self).get_queryset().filter(authors__name__icontains='sir')
+ return super().get_queryset().filter(authors__name__icontains='sir')
class Article(models.Model):
diff --git a/tests/gis_tests/geoapp/models.py b/tests/gis_tests/geoapp/models.py
index 83e3242043..363f3deaf0 100644
--- a/tests/gis_tests/geoapp/models.py
+++ b/tests/gis_tests/geoapp/models.py
@@ -94,7 +94,7 @@ class NonConcreteField(models.IntegerField):
return None
def get_attname_column(self):
- attname, column = super(NonConcreteField, self).get_attname_column()
+ attname, column = super().get_attname_column()
return attname, None
diff --git a/tests/gis_tests/geoapp/test_sitemaps.py b/tests/gis_tests/geoapp/test_sitemaps.py
index 61e06df728..09df326bc6 100644
--- a/tests/gis_tests/geoapp/test_sitemaps.py
+++ b/tests/gis_tests/geoapp/test_sitemaps.py
@@ -17,7 +17,7 @@ from .models import City, Country
class GeoSitemapTest(TestCase):
def setUp(self):
- super(GeoSitemapTest, self).setUp()
+ super().setUp()
Site(id=settings.SITE_ID, domain="example.com", name="example.com").save()
def assertChildNodes(self, elem, expected):
diff --git a/tests/gis_tests/geos_tests/test_geos.py b/tests/gis_tests/geos_tests/test_geos.py
index b74d3ab708..c90927c5cc 100644
--- a/tests/gis_tests/geos_tests/test_geos.py
+++ b/tests/gis_tests/geos_tests/test_geos.py
@@ -1260,7 +1260,7 @@ class GEOSTest(SimpleTestCase, TestDataMixin):
class ExtendedPolygon(Polygon):
def __init__(self, *args, **kwargs):
data = kwargs.pop('data', 0)
- super(ExtendedPolygon, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
self._data = data
def __str__(self):
diff --git a/tests/gis_tests/geos_tests/test_mutable_list.py b/tests/gis_tests/geos_tests/test_mutable_list.py
index 26bdeb8045..4e6a44223d 100644
--- a/tests/gis_tests/geos_tests/test_mutable_list.py
+++ b/tests/gis_tests/geos_tests/test_mutable_list.py
@@ -14,7 +14,7 @@ class UserListA(ListMixin):
def __init__(self, i_list, *args, **kwargs):
self._list = self._mytype(i_list)
- super(UserListA, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
def __len__(self):
return len(self._list)
diff --git a/tests/gis_tests/gis_migrations/test_operations.py b/tests/gis_tests/gis_migrations/test_operations.py
index 0c8853a9f3..31301ad4ca 100644
--- a/tests/gis_tests/gis_migrations/test_operations.py
+++ b/tests/gis_tests/gis_migrations/test_operations.py
@@ -28,7 +28,7 @@ class OperationTestCase(TransactionTestCase):
# Delete table after testing
if hasattr(self, 'current_state'):
self.apply_operations('gis', self.current_state, [migrations.DeleteModel('Neighborhood')])
- super(OperationTestCase, self).tearDown()
+ super().tearDown()
@property
def has_spatial_indexes(self):
@@ -103,7 +103,7 @@ class OperationTestCase(TransactionTestCase):
class OperationTests(OperationTestCase):
def setUp(self):
- super(OperationTests, self).setUp()
+ super().setUp()
self.set_up_test_model()
def test_add_geom_field(self):
diff --git a/tests/gis_tests/test_data.py b/tests/gis_tests/test_data.py
index 4bec3c677e..adcd57b48b 100644
--- a/tests/gis_tests/test_data.py
+++ b/tests/gis_tests/test_data.py
@@ -47,7 +47,7 @@ class TestDS(TestObj):
# Shapefile is default extension, unless specified otherwise.
ext = kwargs.pop('ext', 'shp')
self.ds = get_ds_file(name, ext)
- super(TestDS, self).__init__(**kwargs)
+ super().__init__(**kwargs)
class TestGeom(TestObj):
@@ -72,7 +72,7 @@ class TestGeom(TestObj):
ext_ring_cs = tuplize(ext_ring_cs)
self.ext_ring_cs = ext_ring_cs
- super(TestGeom, self).__init__(**kwargs)
+ super().__init__(**kwargs)
class TestGeomSet:
diff --git a/tests/i18n/test_compilation.py b/tests/i18n/test_compilation.py
index 7d3215d4a8..db6c813115 100644
--- a/tests/i18n/test_compilation.py
+++ b/tests/i18n/test_compilation.py
@@ -70,7 +70,7 @@ class MultipleLocaleCompilationTests(MessageCompilationTests):
MO_FILE_FR = None
def setUp(self):
- super(MultipleLocaleCompilationTests, self).setUp()
+ super().setUp()
localedir = os.path.join(self.test_dir, 'locale')
self.MO_FILE_HR = os.path.join(localedir, 'hr/LC_MESSAGES/django.mo')
self.MO_FILE_FR = os.path.join(localedir, 'fr/LC_MESSAGES/django.mo')
@@ -96,7 +96,7 @@ class ExcludedLocaleCompilationTests(MessageCompilationTests):
MO_FILE = 'locale/%s/LC_MESSAGES/django.mo'
def setUp(self):
- super(ExcludedLocaleCompilationTests, self).setUp()
+ super().setUp()
copytree('canned_locale', 'locale')
def test_command_help(self):
@@ -160,7 +160,7 @@ class ProjectAndAppTests(MessageCompilationTests):
class FuzzyTranslationTest(ProjectAndAppTests):
def setUp(self):
- super(FuzzyTranslationTest, self).setUp()
+ super().setUp()
gettext_module._translations = {} # flush cache or test will be useless
def test_nofuzzy_compiling(self):
diff --git a/tests/i18n/test_extraction.py b/tests/i18n/test_extraction.py
index 585feda3ac..69d0236fad 100644
--- a/tests/i18n/test_extraction.py
+++ b/tests/i18n/test_extraction.py
@@ -468,7 +468,7 @@ class IgnoredExtractorTests(ExtractorTests):
class SymlinkExtractorTests(ExtractorTests):
def setUp(self):
- super(SymlinkExtractorTests, self).setUp()
+ super().setUp()
self.symlinked_dir = os.path.join(self.test_dir, 'templates_symlinked')
def test_symlink(self):
@@ -632,7 +632,7 @@ class ExcludedLocaleExtractionTests(ExtractorTests):
os.utime(self.PO_FILE % locale, (0, 0))
def setUp(self):
- super(ExcludedLocaleExtractionTests, self).setUp()
+ super().setUp()
copytree('canned_locale', 'locale')
self._set_times_for_all_po_files()
diff --git a/tests/i18n/test_percents.py b/tests/i18n/test_percents.py
index bf14e020f5..5ab146a4c2 100644
--- a/tests/i18n/test_percents.py
+++ b/tests/i18n/test_percents.py
@@ -37,7 +37,7 @@ class ExtractingStringsWithPercentSigns(POFileAssertionMixin, FrenchTestCase):
"""
def setUp(self):
- super(ExtractingStringsWithPercentSigns, self).setUp()
+ super().setUp()
with open(self.PO_FILE, 'r') as fp:
self.po_contents = fp.read()
diff --git a/tests/i18n/tests.py b/tests/i18n/tests.py
index 4f4801ba2c..acff0dfc28 100644
--- a/tests/i18n/tests.py
+++ b/tests/i18n/tests.py
@@ -233,7 +233,7 @@ class TranslationThreadSafetyTests(SimpleTestCase):
class FormattingTests(SimpleTestCase):
def setUp(self):
- super(FormattingTests, self).setUp()
+ super().setUp()
self.n = decimal.Decimal('66666.666')
self.f = 99999.999
self.d = datetime.date(2009, 12, 31)
@@ -981,7 +981,7 @@ class FormattingTests(SimpleTestCase):
class MiscTests(SimpleTestCase):
def setUp(self):
- super(MiscTests, self).setUp()
+ super().setUp()
self.rf = RequestFactory()
@override_settings(LANGUAGE_CODE='de')
@@ -1215,12 +1215,12 @@ class MiscTests(SimpleTestCase):
class ResolutionOrderI18NTests(SimpleTestCase):
def setUp(self):
- super(ResolutionOrderI18NTests, self).setUp()
+ super().setUp()
activate('de')
def tearDown(self):
deactivate()
- super(ResolutionOrderI18NTests, self).tearDown()
+ super().tearDown()
def assertUgettext(self, msgid, msgstr):
result = ugettext(msgid)
@@ -1430,7 +1430,7 @@ class UnprefixedDefaultLanguageTests(SimpleTestCase):
class CountrySpecificLanguageTests(SimpleTestCase):
def setUp(self):
- super(CountrySpecificLanguageTests, self).setUp()
+ super().setUp()
self.rf = RequestFactory()
def test_check_for_language(self):
@@ -1480,12 +1480,12 @@ class CountrySpecificLanguageTests(SimpleTestCase):
class TranslationFilesMissing(SimpleTestCase):
def setUp(self):
- super(TranslationFilesMissing, self).setUp()
+ super().setUp()
self.gettext_find_builtin = gettext_module.find
def tearDown(self):
gettext_module.find = self.gettext_find_builtin
- super(TranslationFilesMissing, self).tearDown()
+ super().tearDown()
def patchGettextFind(self):
gettext_module.find = lambda *args, **kw: None
diff --git a/tests/indexes/models.py b/tests/indexes/models.py
index 47d413faee..208da32c6e 100644
--- a/tests/indexes/models.py
+++ b/tests/indexes/models.py
@@ -13,7 +13,7 @@ class CurrentTranslation(models.ForeignObject):
kwargs['related_name'] = '+'
# Set unique to enable model cache.
kwargs['unique'] = True
- super(CurrentTranslation, self).__init__(to, on_delete, from_fields, to_fields, **kwargs)
+ super().__init__(to, on_delete, from_fields, to_fields, **kwargs)
class ArticleTranslation(models.Model):
diff --git a/tests/inline_formsets/tests.py b/tests/inline_formsets/tests.py
index fd51714cda..1769bc0f49 100644
--- a/tests/inline_formsets/tests.py
+++ b/tests/inline_formsets/tests.py
@@ -194,7 +194,7 @@ class InlineFormsetFactoryTest(TestCase):
class PoemModelForm(ModelForm):
def __init__(self, *args, **kwargs):
assert 'poet' in self._meta.fields
- super(PoemModelForm, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
poet = Poet.objects.create(name='test')
poet.poem_set.create(name='first test poem')
diff --git a/tests/logging_tests/tests.py b/tests/logging_tests/tests.py
index 6033cac289..f084feb514 100644
--- a/tests/logging_tests/tests.py
+++ b/tests/logging_tests/tests.py
@@ -68,13 +68,13 @@ class SetupDefaultLoggingMixin:
@classmethod
def setUpClass(cls):
- super(SetupDefaultLoggingMixin, cls).setUpClass()
+ super().setUpClass()
cls._logging = settings.LOGGING
logging.config.dictConfig(DEFAULT_LOGGING)
@classmethod
def tearDownClass(cls):
- super(SetupDefaultLoggingMixin, cls).tearDownClass()
+ super().tearDownClass()
logging.config.dictConfig(cls._logging)
diff --git a/tests/mail/custombackend.py b/tests/mail/custombackend.py
index ac631a6e1b..fd57777787 100644
--- a/tests/mail/custombackend.py
+++ b/tests/mail/custombackend.py
@@ -6,7 +6,7 @@ from django.core.mail.backends.base import BaseEmailBackend
class EmailBackend(BaseEmailBackend):
def __init__(self, *args, **kwargs):
- super(EmailBackend, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
self.test_outbox = []
def send_messages(self, email_messages):
diff --git a/tests/mail/tests.py b/tests/mail/tests.py
index f30734d72f..60758a637b 100644
--- a/tests/mail/tests.py
+++ b/tests/mail/tests.py
@@ -990,7 +990,7 @@ class LocmemBackendTests(BaseEmailBackendTests, SimpleTestCase):
mail.outbox = []
def tearDown(self):
- super(LocmemBackendTests, self).tearDown()
+ super().tearDown()
mail.outbox = []
def test_locmem_shared_messages(self):
@@ -1017,7 +1017,7 @@ class FileBackendTests(BaseEmailBackendTests, SimpleTestCase):
email_backend = 'django.core.mail.backends.filebased.EmailBackend'
def setUp(self):
- super(FileBackendTests, self).setUp()
+ super().setUp()
self.tmp_dir = tempfile.mkdtemp()
self.addCleanup(shutil.rmtree, self.tmp_dir)
self._settings_override = override_settings(EMAIL_FILE_PATH=self.tmp_dir)
@@ -1025,7 +1025,7 @@ class FileBackendTests(BaseEmailBackendTests, SimpleTestCase):
def tearDown(self):
self._settings_override.disable()
- super(FileBackendTests, self).tearDown()
+ super().tearDown()
def flush_mailbox(self):
for filename in os.listdir(self.tmp_dir):
@@ -1077,7 +1077,7 @@ class ConsoleBackendTests(BaseEmailBackendTests, SimpleTestCase):
email_backend = 'django.core.mail.backends.console.EmailBackend'
def setUp(self):
- super(ConsoleBackendTests, self).setUp()
+ super().setUp()
self.__stdout = sys.stdout
self.stream = sys.stdout = StringIO()
@@ -1085,7 +1085,7 @@ class ConsoleBackendTests(BaseEmailBackendTests, SimpleTestCase):
del self.stream
sys.stdout = self.__stdout
del self.__stdout
- super(ConsoleBackendTests, self).tearDown()
+ super().tearDown()
def flush_mailbox(self):
self.stream = sys.stdout = StringIO()
@@ -1214,7 +1214,7 @@ class SMTPBackendTestsBase(SimpleTestCase):
@classmethod
def setUpClass(cls):
- super(SMTPBackendTestsBase, cls).setUpClass()
+ super().setUpClass()
cls.server = FakeSMTPServer(('127.0.0.1', 0), None)
cls._settings_override = override_settings(
EMAIL_HOST="127.0.0.1",
@@ -1226,19 +1226,19 @@ class SMTPBackendTestsBase(SimpleTestCase):
def tearDownClass(cls):
cls._settings_override.disable()
cls.server.stop()
- super(SMTPBackendTestsBase, cls).tearDownClass()
+ super().tearDownClass()
class SMTPBackendTests(BaseEmailBackendTests, SMTPBackendTestsBase):
email_backend = 'django.core.mail.backends.smtp.EmailBackend'
def setUp(self):
- super(SMTPBackendTests, self).setUp()
+ super().setUp()
self.server.flush_sink()
def tearDown(self):
self.server.flush_sink()
- super(SMTPBackendTests, self).tearDown()
+ super().tearDown()
def flush_mailbox(self):
self.server.flush_sink()
@@ -1386,7 +1386,7 @@ class SMTPBackendTests(BaseEmailBackendTests, SMTPBackendTestsBase):
class MyEmailBackend(smtp.EmailBackend):
def __init__(self, *args, **kwargs):
kwargs.setdefault('timeout', 42)
- super(MyEmailBackend, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
myemailbackend = MyEmailBackend()
myemailbackend.open()
@@ -1454,7 +1454,7 @@ class SMTPBackendStoppedServerTests(SMTPBackendTestsBase):
"""
@classmethod
def setUpClass(cls):
- super(SMTPBackendStoppedServerTests, cls).setUpClass()
+ super().setUpClass()
cls.backend = smtp.EmailBackend(username='', password='')
cls.server.stop()
diff --git a/tests/managers_regress/models.py b/tests/managers_regress/models.py
index 1c274d8704..8d5725c5b7 100644
--- a/tests/managers_regress/models.py
+++ b/tests/managers_regress/models.py
@@ -11,17 +11,17 @@ from django.db import models
class OnlyFred(models.Manager):
def get_queryset(self):
- return super(OnlyFred, self).get_queryset().filter(name='fred')
+ return super().get_queryset().filter(name='fred')
class OnlyBarney(models.Manager):
def get_queryset(self):
- return super(OnlyBarney, self).get_queryset().filter(name='barney')
+ return super().get_queryset().filter(name='barney')
class Value42(models.Manager):
def get_queryset(self):
- return super(Value42, self).get_queryset().filter(value=42)
+ return super().get_queryset().filter(value=42)
class AbstractBase1(models.Model):
diff --git a/tests/many_to_one/models.py b/tests/many_to_one/models.py
index 93b8029b2f..cfbdb71a44 100644
--- a/tests/many_to_one/models.py
+++ b/tests/many_to_one/models.py
@@ -97,7 +97,7 @@ class Relation(models.Model):
# Test related objects visibility.
class SchoolManager(models.Manager):
def get_queryset(self):
- return super(SchoolManager, self).get_queryset().filter(is_public=True)
+ return super().get_queryset().filter(is_public=True)
class School(models.Model):
diff --git a/tests/messages_tests/base.py b/tests/messages_tests/base.py
index 8082d468fe..f713d72ab8 100644
--- a/tests/messages_tests/base.py
+++ b/tests/messages_tests/base.py
@@ -24,7 +24,7 @@ def add_level_messages(storage):
class override_settings_tags(override_settings):
def enable(self):
- super(override_settings_tags, self).enable()
+ super().enable()
# LEVEL_TAGS is a constant defined in the
# django.contrib.messages.storage.base module, so after changing
# settings.MESSAGE_TAGS, update that constant also.
@@ -32,7 +32,7 @@ class override_settings_tags(override_settings):
base.LEVEL_TAGS = utils.get_level_tags()
def disable(self):
- super(override_settings_tags, self).disable()
+ super().disable()
base.LEVEL_TAGS = self.old_level_tags
diff --git a/tests/messages_tests/test_api.py b/tests/messages_tests/test_api.py
index 3de6b81b7b..86fd5c6838 100644
--- a/tests/messages_tests/test_api.py
+++ b/tests/messages_tests/test_api.py
@@ -50,7 +50,7 @@ class CustomRequest:
def __getattribute__(self, attr):
try:
- return super(CustomRequest, self).__getattribute__(attr)
+ return super().__getattribute__(attr)
except AttributeError:
return getattr(self._request, attr)
@@ -61,5 +61,5 @@ class CustomRequestApiTests(ApiTests):
one in Django REST framework.
"""
def setUp(self):
- super(CustomRequestApiTests, self).setUp()
+ super().setUp()
self.request = CustomRequest(self.request)
diff --git a/tests/messages_tests/test_fallback.py b/tests/messages_tests/test_fallback.py
index bfdae79c4a..ea39f32f32 100644
--- a/tests/messages_tests/test_fallback.py
+++ b/tests/messages_tests/test_fallback.py
@@ -14,7 +14,7 @@ class FallbackTests(BaseTests, SimpleTestCase):
def get_request(self):
self.session = {}
- request = super(FallbackTests, self).get_request()
+ request = super().get_request()
request.session = self.session
return request
diff --git a/tests/messages_tests/test_session.py b/tests/messages_tests/test_session.py
index 3500d60590..e06ba656fa 100644
--- a/tests/messages_tests/test_session.py
+++ b/tests/messages_tests/test_session.py
@@ -27,7 +27,7 @@ class SessionTests(BaseTests, TestCase):
def get_request(self):
self.session = {}
- request = super(SessionTests, self).get_request()
+ request = super().get_request()
request.session = self.session
return request
diff --git a/tests/middleware/tests.py b/tests/middleware/tests.py
index bd2ba89848..2f8954b4cc 100644
--- a/tests/middleware/tests.py
+++ b/tests/middleware/tests.py
@@ -406,7 +406,7 @@ class BrokenLinkEmailsMiddlewareTest(SimpleTestCase):
def is_ignorable_request(self, request, uri, domain, referer):
'''Check user-agent in addition to normal checks.'''
- if super(SubclassedMiddleware, self).is_ignorable_request(request, uri, domain, referer):
+ if super().is_ignorable_request(request, uri, domain, referer):
return True
user_agent = request.META['HTTP_USER_AGENT']
return any(pattern.search(user_agent) for pattern in self.ignored_user_agent_patterns)
diff --git a/tests/migrations/models.py b/tests/migrations/models.py
index 51679e56bb..440aa582d6 100644
--- a/tests/migrations/models.py
+++ b/tests/migrations/models.py
@@ -56,7 +56,7 @@ class FoodQuerySet(models.query.QuerySet):
class BaseFoodManager(models.Manager):
def __init__(self, a, b, c=1, d=2):
- super(BaseFoodManager, self).__init__()
+ super().__init__()
self.args = (a, b, c, d)
diff --git a/tests/migrations/test_commands.py b/tests/migrations/test_commands.py
index cacbcab743..d5d31b7c7c 100644
--- a/tests/migrations/test_commands.py
+++ b/tests/migrations/test_commands.py
@@ -628,14 +628,14 @@ class MakeMigrationsTests(MigrationTestBase):
"""
def setUp(self):
- super(MakeMigrationsTests, self).setUp()
+ super().setUp()
self._old_models = apps.app_configs['migrations'].models.copy()
def tearDown(self):
apps.app_configs['migrations'].models = self._old_models
apps.all_models['migrations'] = self._old_models
apps.clear_cache()
- super(MakeMigrationsTests, self).tearDown()
+ super().tearDown()
def test_files_content(self):
self.assertTableNotExists("migrations_unicodemodel")
diff --git a/tests/model_fields/models.py b/tests/model_fields/models.py
index 4830fb9ed2..134d200be9 100644
--- a/tests/model_fields/models.py
+++ b/tests/model_fields/models.py
@@ -229,11 +229,11 @@ if Image:
"""
def __init__(self, *args, **kwargs):
self.was_opened = False
- super(TestImageFieldFile, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
def open(self):
self.was_opened = True
- super(TestImageFieldFile, self).open()
+ super().open()
class TestImageField(ImageField):
attr_class = TestImageFieldFile
diff --git a/tests/model_fields/test_field_flags.py b/tests/model_fields/test_field_flags.py
index ff6f595e27..26a345ea5c 100644
--- a/tests/model_fields/test_field_flags.py
+++ b/tests/model_fields/test_field_flags.py
@@ -75,7 +75,7 @@ FLAG_PROPERTIES_FOR_RELATIONS = (
class FieldFlagsTests(test.SimpleTestCase):
@classmethod
def setUpClass(cls):
- super(FieldFlagsTests, cls).setUpClass()
+ super().setUpClass()
cls.fields = (
list(AllFieldsModel._meta.fields) +
list(AllFieldsModel._meta.private_fields)
diff --git a/tests/model_forms/models.py b/tests/model_forms/models.py
index c1c97270fc..6ed8b2ca06 100644
--- a/tests/model_forms/models.py
+++ b/tests/model_forms/models.py
@@ -71,7 +71,7 @@ class Article(models.Model):
def save(self, *args, **kwargs):
if not self.id:
self.created = datetime.date.today()
- return super(Article, self).save(*args, **kwargs)
+ return super().save(*args, **kwargs)
def __str__(self):
return self.headline
@@ -322,7 +322,7 @@ class BigInt(models.Model):
class MarkupField(models.CharField):
def __init__(self, *args, **kwargs):
kwargs["max_length"] = 20
- super(MarkupField, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
def formfield(self, **kwargs):
# don't allow this field to be used in form (real use-case might be
@@ -418,11 +418,11 @@ class Photo(models.Model):
# Support code for the tests; this keeps track of how many times save()
# gets called on each instance.
def __init__(self, *args, **kwargs):
- super(Photo, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
self._savecount = 0
def save(self, force_insert=False, force_update=False):
- super(Photo, self).save(force_insert, force_update)
+ super().save(force_insert, force_update)
self._savecount += 1
@@ -439,7 +439,7 @@ class StrictAssignmentFieldSpecific(models.Model):
def __setattr__(self, key, value):
if self._should_error is True:
raise ValidationError(message={key: "Cannot set attribute"}, code='invalid')
- super(StrictAssignmentFieldSpecific, self).__setattr__(key, value)
+ super().__setattr__(key, value)
class StrictAssignmentAll(models.Model):
@@ -449,7 +449,7 @@ class StrictAssignmentAll(models.Model):
def __setattr__(self, key, value):
if self._should_error is True:
raise ValidationError(message="Cannot set attribute", code='invalid')
- super(StrictAssignmentAll, self).__setattr__(key, value)
+ super().__setattr__(key, value)
# A model with ForeignKey(blank=False, null=True)
diff --git a/tests/model_forms/tests.py b/tests/model_forms/tests.py
index 3c8f7ed108..9dd8e79513 100644
--- a/tests/model_forms/tests.py
+++ b/tests/model_forms/tests.py
@@ -216,7 +216,7 @@ class ModelFormBaseTest(TestCase):
fields = '__all__'
def __init__(self, *args, **kwargs):
- super(FormForTestingIsValid, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
self.fields['character'].required = False
char = Character.objects.create(username='user',
@@ -245,7 +245,7 @@ class ModelFormBaseTest(TestCase):
fields = '__all__'
def __init__(self, *args, **kwargs):
- super(AwardForm, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
self.fields['character'].required = False
character = Character.objects.create(username='user', last_action=datetime.datetime.today())
@@ -2947,7 +2947,7 @@ class LocalizedModelFormTest(TestCase):
class CustomMetaclass(ModelFormMetaclass):
def __new__(cls, name, bases, attrs):
- new = super(CustomMetaclass, cls).__new__(cls, name, bases, attrs)
+ new = super().__new__(cls, name, bases, attrs)
new.base_fields = {}
return new
diff --git a/tests/model_formsets/tests.py b/tests/model_formsets/tests.py
index 832dbe63ee..3873cb3b27 100644
--- a/tests/model_formsets/tests.py
+++ b/tests/model_formsets/tests.py
@@ -454,7 +454,7 @@ class ModelFormsetTest(TestCase):
class PoetForm(forms.ModelForm):
def save(self, commit=True):
# change the name to "Vladimir Mayakovsky" just to be a jerk.
- author = super(PoetForm, self).save(commit=False)
+ author = super().save(commit=False)
author.name = "Vladimir Mayakovsky"
if commit:
author.save()
@@ -513,7 +513,7 @@ class ModelFormsetTest(TestCase):
class BaseAuthorFormSet(BaseModelFormSet):
def __init__(self, *args, **kwargs):
- super(BaseAuthorFormSet, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
self.queryset = Author.objects.filter(name__startswith='Charles')
AuthorFormSet = modelformset_factory(Author, fields='__all__', formset=BaseAuthorFormSet)
@@ -864,7 +864,7 @@ class ModelFormsetTest(TestCase):
class PoemForm(forms.ModelForm):
def save(self, commit=True):
# change the name to "Brooklyn Bridge" just to be a jerk.
- poem = super(PoemForm, self).save(commit=False)
+ poem = super().save(commit=False)
poem.name = "Brooklyn Bridge"
if commit:
poem.save()
@@ -995,7 +995,7 @@ class ModelFormsetTest(TestCase):
"""
class PoemForm2(forms.ModelForm):
def save(self, commit=True):
- poem = super(PoemForm2, self).save(commit=False)
+ poem = super().save(commit=False)
poem.name = "%s by %s" % (poem.name, poem.poet.name)
if commit:
poem.save()
@@ -1413,7 +1413,7 @@ class ModelFormsetTest(TestCase):
fields = "__all__"
def __init__(self, **kwargs):
- super(MembershipForm, self).__init__(**kwargs)
+ super().__init__(**kwargs)
self.fields['date_joined'].widget = forms.SplitDateTimeWidget()
FormSet = inlineformset_factory(
diff --git a/tests/model_formsets_regress/tests.py b/tests/model_formsets_regress/tests.py
index 64d933f90c..26ab9c1ae9 100644
--- a/tests/model_formsets_regress/tests.py
+++ b/tests/model_formsets_regress/tests.py
@@ -375,7 +375,7 @@ class BaseCustomDeleteFormSet(BaseFormSet):
form.should_delete() is called. The formset delete field is also suppressed.
"""
def add_fields(self, form, index):
- super(BaseCustomDeleteFormSet, self).add_fields(form, index)
+ super().add_fields(form, index)
self.can_delete = True
if DELETION_FIELD_NAME in form.fields:
del form.fields[DELETION_FIELD_NAME]
diff --git a/tests/model_inheritance/models.py b/tests/model_inheritance/models.py
index 62003f032e..86b1cddb8c 100644
--- a/tests/model_inheritance/models.py
+++ b/tests/model_inheritance/models.py
@@ -160,7 +160,7 @@ class NamedURL(models.Model):
class Mixin:
def __init__(self):
self.other_attr = 1
- super(Mixin, self).__init__()
+ super().__init__()
class MixinModel(models.Model, Mixin):
diff --git a/tests/model_regress/test_pickle.py b/tests/model_regress/test_pickle.py
index bbbbb4cef0..a3df362e32 100644
--- a/tests/model_regress/test_pickle.py
+++ b/tests/model_regress/test_pickle.py
@@ -15,7 +15,7 @@ class ModelPickleTestCase(TestCase):
title = models.CharField(max_length=10)
def __reduce__(self):
- reduce_list = super(MissingDjangoVersion, self).__reduce__()
+ reduce_list = super().__reduce__()
data = reduce_list[-1]
del data[DJANGO_VERSION_PICKLE_KEY]
return reduce_list
@@ -34,7 +34,7 @@ class ModelPickleTestCase(TestCase):
title = models.CharField(max_length=10)
def __reduce__(self):
- reduce_list = super(DifferentDjangoVersion, self).__reduce__()
+ reduce_list = super().__reduce__()
data = reduce_list[-1]
data[DJANGO_VERSION_PICKLE_KEY] = '1.0'
return reduce_list
diff --git a/tests/modeladmin/tests.py b/tests/modeladmin/tests.py
index 1cded986fa..b85764a290 100644
--- a/tests/modeladmin/tests.py
+++ b/tests/modeladmin/tests.py
@@ -320,7 +320,7 @@ class ModelAdminTests(TestCase):
def get_form(self, request, obj=None, **kwargs):
kwargs['exclude'] = ['bio']
- return super(BandAdmin, self).get_form(request, obj, **kwargs)
+ return super().get_form(request, obj, **kwargs)
ma = BandAdmin(Band, self.site)
self.assertEqual(list(ma.get_form(request).base_fields), ['name', 'sign_date'])
@@ -343,7 +343,7 @@ class ModelAdminTests(TestCase):
def get_formset(self, request, obj=None, **kwargs):
kwargs['exclude'] = ['opening_band']
- return super(ConcertInline, self).get_formset(request, obj, **kwargs)
+ return super().get_formset(request, obj, **kwargs)
class BandAdmin(ModelAdmin):
inlines = [ConcertInline]
@@ -420,7 +420,7 @@ class ModelAdminTests(TestCase):
class AdminConcertForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
- super(AdminConcertForm, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
self.fields["main_band"].queryset = Band.objects.filter(name='The Doors')
class ConcertAdminWithForm(ModelAdmin):
@@ -455,7 +455,7 @@ class ModelAdminTests(TestCase):
def get_formset(self, request, obj=None, **kwargs):
if obj:
kwargs['form'] = CustomConcertForm
- return super(ConcertInline, self).get_formset(request, obj, **kwargs)
+ return super().get_formset(request, obj, **kwargs)
class BandAdmin(ModelAdmin):
inlines = [ConcertInline]
diff --git a/tests/multiple_database/models.py b/tests/multiple_database/models.py
index 55247f6e18..3e93bb67bc 100644
--- a/tests/multiple_database/models.py
+++ b/tests/multiple_database/models.py
@@ -42,11 +42,11 @@ class Person(models.Model):
class BookManager(models.Manager):
def create(self, *args, **kwargs):
kwargs.pop('extra_arg', None)
- return super(BookManager, self).create(*args, **kwargs)
+ return super().create(*args, **kwargs)
def get_or_create(self, *args, **kwargs):
kwargs.pop('extra_arg', None)
- return super(BookManager, self).get_or_create(*args, **kwargs)
+ return super().get_or_create(*args, **kwargs)
class Book(models.Model):
diff --git a/tests/one_to_one/models.py b/tests/one_to_one/models.py
index 263633347d..5e8b918f25 100644
--- a/tests/one_to_one/models.py
+++ b/tests/one_to_one/models.py
@@ -96,7 +96,7 @@ class ToFieldPointer(models.Model):
# Test related objects visibility.
class SchoolManager(models.Manager):
def get_queryset(self):
- return super(SchoolManager, self).get_queryset().filter(is_public=True)
+ return super().get_queryset().filter(is_public=True)
class School(models.Model):
@@ -106,7 +106,7 @@ class School(models.Model):
class DirectorManager(models.Manager):
def get_queryset(self):
- return super(DirectorManager, self).get_queryset().filter(is_temp=False)
+ return super().get_queryset().filter(is_temp=False)
class Director(models.Model):
diff --git a/tests/pagination/custom.py b/tests/pagination/custom.py
index 77277dca5b..5f3df3c33c 100644
--- a/tests/pagination/custom.py
+++ b/tests/pagination/custom.py
@@ -6,12 +6,12 @@ class ValidAdjacentNumsPage(Page):
def next_page_number(self):
if not self.has_next():
return None
- return super(ValidAdjacentNumsPage, self).next_page_number()
+ return super().next_page_number()
def previous_page_number(self):
if not self.has_previous():
return None
- return super(ValidAdjacentNumsPage, self).previous_page_number()
+ return super().previous_page_number()
class ValidAdjacentNumsPaginator(Paginator):
diff --git a/tests/postgres_tests/__init__.py b/tests/postgres_tests/__init__.py
index dbb913dbba..49f1220888 100644
--- a/tests/postgres_tests/__init__.py
+++ b/tests/postgres_tests/__init__.py
@@ -13,4 +13,4 @@ class PostgreSQLTestCase(TestCase):
from django.contrib.postgres.signals import register_hstore_handler
connection_created.disconnect(register_hstore_handler)
- super(PostgreSQLTestCase, cls).tearDownClass()
+ super().tearDownClass()
diff --git a/tests/postgres_tests/fields.py b/tests/postgres_tests/fields.py
index 14283ccd61..5892a7f71f 100644
--- a/tests/postgres_tests/fields.py
+++ b/tests/postgres_tests/fields.py
@@ -14,10 +14,10 @@ try:
except ImportError:
class DummyArrayField(models.Field):
def __init__(self, base_field, size=None, **kwargs):
- super(DummyArrayField, self).__init__(**kwargs)
+ super().__init__(**kwargs)
def deconstruct(self):
- name, path, args, kwargs = super(DummyArrayField, self).deconstruct()
+ name, path, args, kwargs = super().deconstruct()
kwargs.update({
'base_field': '',
'size': 1,
@@ -26,7 +26,7 @@ except ImportError:
class DummyJSONField(models.Field):
def __init__(self, encoder=None, **kwargs):
- super(DummyJSONField, self).__init__(**kwargs)
+ super().__init__(**kwargs)
ArrayField = DummyArrayField
BigIntegerRangeField = models.Field
diff --git a/tests/postgres_tests/models.py b/tests/postgres_tests/models.py
index a77fc4b152..367a32be74 100644
--- a/tests/postgres_tests/models.py
+++ b/tests/postgres_tests/models.py
@@ -146,7 +146,7 @@ class JSONModel(models.Model):
class ArrayFieldSubclass(ArrayField):
def __init__(self, *args, **kwargs):
- super(ArrayFieldSubclass, self).__init__(models.IntegerField())
+ super().__init__(models.IntegerField())
class AggregateTestModel(models.Model):
diff --git a/tests/prefetch_related/models.py b/tests/prefetch_related/models.py
index c995acb684..a7ac55ce10 100644
--- a/tests/prefetch_related/models.py
+++ b/tests/prefetch_related/models.py
@@ -97,7 +97,7 @@ class Qualification(models.Model):
class TeacherManager(models.Manager):
def get_queryset(self):
- return super(TeacherManager, self).get_queryset().prefetch_related('qualifications')
+ return super().get_queryset().prefetch_related('qualifications')
class Teacher(models.Model):
diff --git a/tests/proxy_models/models.py b/tests/proxy_models/models.py
index 93430d615f..2e4679122d 100644
--- a/tests/proxy_models/models.py
+++ b/tests/proxy_models/models.py
@@ -12,12 +12,12 @@ from django.db import models
class PersonManager(models.Manager):
def get_queryset(self):
- return super(PersonManager, self).get_queryset().exclude(name="fred")
+ return super().get_queryset().exclude(name="fred")
class SubManager(models.Manager):
def get_queryset(self):
- return super(SubManager, self).get_queryset().exclude(name="wilma")
+ return super().get_queryset().exclude(name="wilma")
class Person(models.Model):
diff --git a/tests/queries/models.py b/tests/queries/models.py
index 8c20e76dee..592359c796 100644
--- a/tests/queries/models.py
+++ b/tests/queries/models.py
@@ -51,7 +51,7 @@ class Note(models.Model):
return self.note
def __init__(self, *args, **kwargs):
- super(Note, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
# Regression for #13227 -- having an attribute that
# is unpicklable doesn't stop you from cloning queries
# that use objects of that type as an argument.
@@ -195,7 +195,7 @@ class LoopZ(models.Model):
class CustomManager(models.Manager):
def get_queryset(self):
- qs = super(CustomManager, self).get_queryset()
+ qs = super().get_queryset()
return qs.filter(public=True, tag__name='t1')
@@ -219,7 +219,7 @@ class Detail(models.Model):
class MemberManager(models.Manager):
def get_queryset(self):
- return super(MemberManager, self).get_queryset().select_related("details")
+ return super().get_queryset().select_related("details")
class Member(models.Model):
diff --git a/tests/queryset_pickle/models.py b/tests/queryset_pickle/models.py
index dbd570a30b..a5c0d15441 100644
--- a/tests/queryset_pickle/models.py
+++ b/tests/queryset_pickle/models.py
@@ -16,14 +16,14 @@ class Numbers:
class PreviousDjangoVersionQuerySet(models.QuerySet):
def __getstate__(self):
- state = super(PreviousDjangoVersionQuerySet, self).__getstate__()
+ state = super().__getstate__()
state[DJANGO_VERSION_PICKLE_KEY] = '1.0'
return state
class MissingDjangoVersionQuerySet(models.QuerySet):
def __getstate__(self):
- state = super(MissingDjangoVersionQuerySet, self).__getstate__()
+ state = super().__getstate__()
del state[DJANGO_VERSION_PICKLE_KEY]
return state
diff --git a/tests/raw_query/models.py b/tests/raw_query/models.py
index 6e996322cc..7e090b7a3f 100644
--- a/tests/raw_query/models.py
+++ b/tests/raw_query/models.py
@@ -7,7 +7,7 @@ class Author(models.Model):
dob = models.DateField()
def __init__(self, *args, **kwargs):
- super(Author, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
# Protect against annotations being passed to __init__ --
# this'll make the test suite get angry if annotations aren't
# treated differently than fields.
diff --git a/tests/save_delete_hooks/models.py b/tests/save_delete_hooks/models.py
index 3573112cfa..e7c598aeae 100644
--- a/tests/save_delete_hooks/models.py
+++ b/tests/save_delete_hooks/models.py
@@ -12,7 +12,7 @@ class Person(models.Model):
last_name = models.CharField(max_length=20)
def __init__(self, *args, **kwargs):
- super(Person, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
self.data = []
def __str__(self):
@@ -21,11 +21,11 @@ class Person(models.Model):
def save(self, *args, **kwargs):
self.data.append("Before save")
# Call the "real" save() method
- super(Person, self).save(*args, **kwargs)
+ super().save(*args, **kwargs)
self.data.append("After save")
def delete(self):
self.data.append("Before deletion")
# Call the "real" delete() method
- super(Person, self).delete()
+ super().delete()
self.data.append("After deletion")
diff --git a/tests/schema/fields.py b/tests/schema/fields.py
index 5f2b6ba19c..16a61ee5f6 100644
--- a/tests/schema/fields.py
+++ b/tests/schema/fields.py
@@ -32,13 +32,13 @@ class CustomManyToManyField(RelatedField):
self.db_table = kwargs.pop('db_table', None)
if kwargs['rel'].through is not None:
assert self.db_table is None, "Cannot specify a db_table if an intermediary model is used."
- super(CustomManyToManyField, self).__init__(**kwargs)
+ super().__init__(**kwargs)
def contribute_to_class(self, cls, name, **kwargs):
if self.remote_field.symmetrical and (
self.remote_field.model == "self" or self.remote_field.model == cls._meta.object_name):
self.remote_field.related_name = "%s_rel_+" % name
- super(CustomManyToManyField, self).contribute_to_class(cls, name, **kwargs)
+ super().contribute_to_class(cls, name, **kwargs)
if not self.remote_field.through and not cls._meta.abstract and not cls._meta.swapped:
self.remote_field.through = create_many_to_many_intermediary_model(self, cls)
setattr(cls, self.name, ManyToManyDescriptor(self.remote_field))
diff --git a/tests/serializers/models/base.py b/tests/serializers/models/base.py
index 78d832140f..2b7d18d93a 100644
--- a/tests/serializers/models/base.py
+++ b/tests/serializers/models/base.py
@@ -114,7 +114,7 @@ class Team:
class TeamField(models.CharField):
def __init__(self):
- super(TeamField, self).__init__(max_length=100)
+ super().__init__(max_length=100)
def get_db_prep_save(self, value, connection):
return str(value.title)
@@ -131,7 +131,7 @@ class TeamField(models.CharField):
return self.value_from_object(obj).to_string()
def deconstruct(self):
- name, path, args, kwargs = super(TeamField, self).deconstruct()
+ name, path, args, kwargs = super().deconstruct()
del kwargs['max_length']
return name, path, args, kwargs
diff --git a/tests/serializers/models/data.py b/tests/serializers/models/data.py
index f6a1d108f6..14bd644fe1 100644
--- a/tests/serializers/models/data.py
+++ b/tests/serializers/models/data.py
@@ -277,7 +277,7 @@ class ModifyingSaveData(models.Model):
(#4459).
"""
self.data = 666
- super(ModifyingSaveData, self).save(*args, **kwargs)
+ super().save(*args, **kwargs)
# Tests for serialization of models using inheritance.
# Regression for #7202, #7350
diff --git a/tests/serializers/test_json.py b/tests/serializers/test_json.py
index 7713e0c3c4..ae671f4847 100644
--- a/tests/serializers/test_json.py
+++ b/tests/serializers/test_json.py
@@ -86,7 +86,7 @@ class JsonSerializerTestCase(SerializersTestBase, TestCase):
def default(self, o):
if isinstance(o, decimal.Decimal):
return str(o)
- return super(CustomJSONEncoder, self).default(o)
+ return super().default(o)
s = serializers.json.Serializer()
json_data = s.serialize(
diff --git a/tests/serializers/test_yaml.py b/tests/serializers/test_yaml.py
index 5a9fa5e873..e876597e9d 100644
--- a/tests/serializers/test_yaml.py
+++ b/tests/serializers/test_yaml.py
@@ -47,7 +47,7 @@ class NoYamlSerializerTestCase(SimpleTestCase):
@classmethod
def setUpClass(cls):
"""Removes imported yaml and stubs importlib.import_module"""
- super(NoYamlSerializerTestCase, cls).setUpClass()
+ super().setUpClass()
cls._import_module_mock = YamlImportModuleMock()
importlib.import_module = cls._import_module_mock.import_module
@@ -58,7 +58,7 @@ class NoYamlSerializerTestCase(SimpleTestCase):
@classmethod
def tearDownClass(cls):
"""Puts yaml back if necessary"""
- super(NoYamlSerializerTestCase, cls).tearDownClass()
+ super().tearDownClass()
importlib.import_module = cls._import_module_mock._import_module
diff --git a/tests/servers/tests.py b/tests/servers/tests.py
index d6d0392bcd..27f7f9994f 100644
--- a/tests/servers/tests.py
+++ b/tests/servers/tests.py
@@ -40,7 +40,7 @@ class LiveServerAddress(LiveServerBase):
@classmethod
def setUpClass(cls):
- super(LiveServerAddress, cls).setUpClass()
+ super().setUpClass()
# put it in a list to prevent descriptor lookups in test
cls.live_server_url_test = [cls.live_server_url]
diff --git a/tests/sessions_tests/models.py b/tests/sessions_tests/models.py
index 7a358595e9..4fa216d9e6 100644
--- a/tests/sessions_tests/models.py
+++ b/tests/sessions_tests/models.py
@@ -29,7 +29,7 @@ class SessionStore(DBStore):
return CustomSession
def create_model_instance(self, data):
- obj = super(SessionStore, self).create_model_instance(data)
+ obj = super().create_model_instance(data)
try:
account_id = int(data.get('_auth_user_id'))
diff --git a/tests/sessions_tests/tests.py b/tests/sessions_tests/tests.py
index 54b8ac53a5..9654c7d9eb 100644
--- a/tests/sessions_tests/tests.py
+++ b/tests/sessions_tests/tests.py
@@ -508,10 +508,10 @@ class FileSessionTests(SessionTestsMixin, unittest.TestCase):
# Reset the file session backend's internal caches
if hasattr(self.backend, '_storage_path'):
del self.backend._storage_path
- super(FileSessionTests, self).setUp()
+ super().setUp()
def tearDown(self):
- super(FileSessionTests, self).tearDown()
+ super().tearDown()
settings.SESSION_FILE_PATH = self.original_session_file_path
shutil.rmtree(self.temp_session_store)
@@ -845,7 +845,7 @@ class CookieSessionTests(SessionTestsMixin, unittest.TestCase):
@unittest.expectedFailure
def test_actual_expiry(self):
# The cookie backend doesn't handle non-default expiry dates, see #19201
- super(CookieSessionTests, self).test_actual_expiry()
+ super().test_actual_expiry()
def test_unpickling_exception(self):
# signed_cookies backend should handle unpickle exceptions gracefully
diff --git a/tests/settings_tests/tests.py b/tests/settings_tests/tests.py
index fa51c0af20..d34077c395 100644
--- a/tests/settings_tests/tests.py
+++ b/tests/settings_tests/tests.py
@@ -108,7 +108,7 @@ class ClassDecoratedTestCase(ClassDecoratedTestCaseSuper):
@classmethod
def setUpClass(cls):
- super(ClassDecoratedTestCase, cls).setUpClass()
+ super().setUpClass()
cls.foo = getattr(settings, 'TEST', 'BUG')
def test_override(self):
@@ -127,7 +127,7 @@ class ClassDecoratedTestCase(ClassDecoratedTestCaseSuper):
Overriding a method on a super class and then calling that method on
the super class should not trigger infinite recursion. See #17011.
"""
- super(ClassDecoratedTestCase, self).test_max_recursion_error()
+ super().test_max_recursion_error()
@modify_settings(ITEMS={'append': 'mother'})
diff --git a/tests/signals/tests.py b/tests/signals/tests.py
index c6453b83d0..563f3431cc 100644
--- a/tests/signals/tests.py
+++ b/tests/signals/tests.py
@@ -283,7 +283,7 @@ class SignalTests(BaseSignalTest):
class LazyModelRefTest(BaseSignalTest):
def setUp(self):
- super(LazyModelRefTest, self).setUp()
+ super().setUp()
self.received = []
def receiver(self, **kwargs):
diff --git a/tests/sitemaps_tests/base.py b/tests/sitemaps_tests/base.py
index 473ced7d3a..af5f78f327 100644
--- a/tests/sitemaps_tests/base.py
+++ b/tests/sitemaps_tests/base.py
@@ -22,7 +22,7 @@ class SitemapTestsBase(TestCase):
@classmethod
def setUpClass(cls):
- super(SitemapTestsBase, cls).setUpClass()
+ super().setUpClass()
# This cleanup is necessary because contrib.sites cache
# makes tests interfere with each other, see #11505
Site.objects.clear_cache()
diff --git a/tests/staticfiles_tests/cases.py b/tests/staticfiles_tests/cases.py
index 2305b34527..593739d401 100644
--- a/tests/staticfiles_tests/cases.py
+++ b/tests/staticfiles_tests/cases.py
@@ -62,7 +62,7 @@ class CollectionTestCase(BaseStaticFilesMixin, SimpleTestCase):
all these tests.
"""
def setUp(self):
- super(CollectionTestCase, self).setUp()
+ super().setUp()
temp_dir = tempfile.mkdtemp()
# Override the STATIC_ROOT for all tests from setUp to tearDown
# rather than as a context manager
@@ -74,7 +74,7 @@ class CollectionTestCase(BaseStaticFilesMixin, SimpleTestCase):
def tearDown(self):
self.patched_settings.disable()
- super(CollectionTestCase, self).tearDown()
+ super().tearDown()
def run_collectstatic(self, **kwargs):
verbosity = kwargs.pop('verbosity', 0)
diff --git a/tests/staticfiles_tests/test_finders.py b/tests/staticfiles_tests/test_finders.py
index 7df8c50a0d..0b661cb103 100644
--- a/tests/staticfiles_tests/test_finders.py
+++ b/tests/staticfiles_tests/test_finders.py
@@ -35,7 +35,7 @@ class TestFileSystemFinder(TestFinders, StaticFilesTestCase):
Test FileSystemFinder.
"""
def setUp(self):
- super(TestFileSystemFinder, self).setUp()
+ super().setUp()
self.finder = finders.FileSystemFinder()
test_file_path = os.path.join(TEST_ROOT, 'project', 'documents', 'test', 'file.txt')
self.find_first = (os.path.join('test', 'file.txt'), test_file_path)
@@ -47,7 +47,7 @@ class TestAppDirectoriesFinder(TestFinders, StaticFilesTestCase):
Test AppDirectoriesFinder.
"""
def setUp(self):
- super(TestAppDirectoriesFinder, self).setUp()
+ super().setUp()
self.finder = finders.AppDirectoriesFinder()
test_file_path = os.path.join(TEST_ROOT, 'apps', 'test', 'static', 'test', 'file1.txt')
self.find_first = (os.path.join('test', 'file1.txt'), test_file_path)
@@ -59,7 +59,7 @@ class TestDefaultStorageFinder(TestFinders, StaticFilesTestCase):
Test DefaultStorageFinder.
"""
def setUp(self):
- super(TestDefaultStorageFinder, self).setUp()
+ super().setUp()
self.finder = finders.DefaultStorageFinder(
storage=storage.StaticFilesStorage(location=settings.MEDIA_ROOT))
test_file_path = os.path.join(settings.MEDIA_ROOT, 'media-file.txt')
diff --git a/tests/staticfiles_tests/test_liveserver.py b/tests/staticfiles_tests/test_liveserver.py
index f45a95ba89..264242bbae 100644
--- a/tests/staticfiles_tests/test_liveserver.py
+++ b/tests/staticfiles_tests/test_liveserver.py
@@ -29,11 +29,11 @@ class LiveServerBase(StaticLiveServerTestCase):
# Override settings
cls.settings_override = override_settings(**TEST_SETTINGS)
cls.settings_override.enable()
- super(LiveServerBase, cls).setUpClass()
+ super().setUpClass()
@classmethod
def tearDownClass(cls):
- super(LiveServerBase, cls).tearDownClass()
+ super().tearDownClass()
# Restore original settings
cls.settings_override.disable()
@@ -57,14 +57,14 @@ class StaticLiveServerChecks(LiveServerBase):
@classmethod
def raises_exception(cls):
try:
- super(StaticLiveServerChecks, cls).setUpClass()
+ super().setUpClass()
raise Exception("The line above should have raised an exception")
except ImproperlyConfigured:
# This raises ImproperlyConfigured("You're using the staticfiles
# app without having set the required STATIC_URL setting.")
pass
finally:
- super(StaticLiveServerChecks, cls).tearDownClass()
+ super().tearDownClass()
def test_test_test(self):
# Intentionally empty method so that the test is picked up by the
diff --git a/tests/staticfiles_tests/test_management.py b/tests/staticfiles_tests/test_management.py
index 5e1f49a5d3..ea58f9afb6 100644
--- a/tests/staticfiles_tests/test_management.py
+++ b/tests/staticfiles_tests/test_management.py
@@ -161,14 +161,14 @@ class TestCollectionClear(CollectionTestCase):
clear_filepath = os.path.join(settings.STATIC_ROOT, 'cleared.txt')
with open(clear_filepath, 'w') as f:
f.write('should be cleared')
- super(TestCollectionClear, self).run_collectstatic(clear=True)
+ super().run_collectstatic(clear=True)
def test_cleared_not_found(self):
self.assertFileNotFound('cleared.txt')
def test_dir_not_exists(self, **kwargs):
shutil.rmtree(settings.STATIC_ROOT)
- super(TestCollectionClear, self).run_collectstatic(clear=True)
+ super().run_collectstatic(clear=True)
@override_settings(STATICFILES_STORAGE='staticfiles_tests.storage.PathNotImplementedStorage')
def test_handle_path_notimplemented(self):
@@ -234,8 +234,7 @@ class TestCollectionExcludeNoDefaultIgnore(TestDefaults, CollectionTestCase):
``collectstatic`` management command.
"""
def run_collectstatic(self):
- super(TestCollectionExcludeNoDefaultIgnore, self).run_collectstatic(
- use_default_ignore_patterns=False)
+ super().run_collectstatic(use_default_ignore_patterns=False)
def test_no_common_ignore_patterns(self):
"""
@@ -266,7 +265,7 @@ class TestCollectionDryRun(TestNoFilesCreated, CollectionTestCase):
Test ``--dry-run`` option for ``collectstatic`` management command.
"""
def run_collectstatic(self):
- super(TestCollectionDryRun, self).run_collectstatic(dry_run=True)
+ super().run_collectstatic(dry_run=True)
class TestCollectionFilesOverride(CollectionTestCase):
@@ -308,10 +307,10 @@ class TestCollectionFilesOverride(CollectionTestCase):
with extend_sys_path(self.temp_dir):
self.settings_with_test_app.enable()
- super(TestCollectionFilesOverride, self).setUp()
+ super().setUp()
def tearDown(self):
- super(TestCollectionFilesOverride, self).tearDown()
+ super().tearDown()
self.settings_with_test_app.disable()
def test_ordering_override(self):
@@ -422,7 +421,7 @@ class TestCollectionLinks(TestDefaults, CollectionTestCase):
``--link`` does not change the file-selection semantics.
"""
def run_collectstatic(self, clear=False, link=True, **kwargs):
- super(TestCollectionLinks, self).run_collectstatic(link=link, clear=clear, **kwargs)
+ super().run_collectstatic(link=link, clear=clear, **kwargs)
def test_links_created(self):
"""
diff --git a/tests/staticfiles_tests/test_storage.py b/tests/staticfiles_tests/test_storage.py
index 2bbe912507..7e7b31fa67 100644
--- a/tests/staticfiles_tests/test_storage.py
+++ b/tests/staticfiles_tests/test_storage.py
@@ -27,7 +27,7 @@ class TestHashedFiles:
def setUp(self):
self._max_post_process_passes = storage.staticfiles_storage.max_post_process_passes
- super(TestHashedFiles, self).setUp()
+ super().setUp()
def tearDown(self):
# Clear hashed files to avoid side effects among tests.
@@ -305,7 +305,7 @@ class TestExtraPatternsCachedStorage(CollectionTestCase):
def setUp(self):
storage.staticfiles_storage.hashed_files.clear() # avoid cache interference
- super(TestExtraPatternsCachedStorage, self).setUp()
+ super().setUp()
def cached_file_path(self, path):
fullpath = self.render_template(self.static_template_snippet(path))
@@ -338,7 +338,7 @@ class TestCollectionManifestStorage(TestHashedFiles, CollectionTestCase):
Tests for the Cache busting storage
"""
def setUp(self):
- super(TestCollectionManifestStorage, self).setUp()
+ super().setUp()
temp_dir = tempfile.mkdtemp()
os.makedirs(os.path.join(temp_dir, 'test'))
@@ -359,7 +359,7 @@ class TestCollectionManifestStorage(TestHashedFiles, CollectionTestCase):
os.unlink(self._clear_filename)
storage.staticfiles_storage.manifest_strict = self._manifest_strict
- super(TestCollectionManifestStorage, self).tearDown()
+ super().tearDown()
def assertPostCondition(self):
hashed_files = storage.staticfiles_storage.hashed_files
@@ -446,7 +446,7 @@ class TestCollectionSimpleCachedStorage(CollectionTestCase):
def setUp(self):
storage.staticfiles_storage.hashed_files.clear() # avoid cache interference
- super(TestCollectionSimpleCachedStorage, self).setUp()
+ super().setUp()
def test_template_tag_return(self):
"""
@@ -474,7 +474,7 @@ class CustomStaticFilesStorage(storage.StaticFilesStorage):
def __init__(self, *args, **kwargs):
kwargs['file_permissions_mode'] = 0o640
kwargs['directory_permissions_mode'] = 0o740
- super(CustomStaticFilesStorage, self).__init__(*args, **kwargs)
+ super().__init__(*args, **kwargs)
@unittest.skipIf(sys.platform.startswith('win'), "Windows only partially supports chmod.")
@@ -489,11 +489,11 @@ class TestStaticFilePermissions(CollectionTestCase):
def setUp(self):
self.umask = 0o027
self.old_umask = os.umask(self.umask)
- super(TestStaticFilePermissions, self).setUp()
+ super().setUp()
def tearDown(self):
os.umask(self.old_umask)
- super(TestStaticFilePermissions, self).tearDown()
+ super().tearDown()
# Don't run collectstatic command in this test class.
def run_collectstatic(self, **kwargs):
@@ -556,12 +556,12 @@ class TestCollectionHashedFilesCache(CollectionTestCase):
)
with open(self.testimage_path, 'r+b') as f:
self._orig_image_content = f.read()
- super(TestCollectionHashedFilesCache, self).setUp()
+ super().setUp()
def tearDown(self):
with open(self.testimage_path, 'w+b') as f:
f.write(self._orig_image_content)
- super(TestCollectionHashedFilesCache, self).tearDown()
+ super().tearDown()
def test_file_change_after_collectstatic(self):
finders.get_finder.cache_clear()
diff --git a/tests/syndication_tests/feeds.py b/tests/syndication_tests/feeds.py
index 87c8d962b7..0805258138 100644
--- a/tests/syndication_tests/feeds.py
+++ b/tests/syndication_tests/feeds.py
@@ -131,7 +131,7 @@ class TemplateContextFeed(TestRss2Feed):
description_template = 'syndication/description_context.html'
def get_context_data(self, **kwargs):
- context = super(TemplateContextFeed, self).get_context_data(**kwargs)
+ context = super().get_context_data(**kwargs)
context['foo'] = 'bar'
return context
@@ -164,21 +164,21 @@ class MyCustomAtom1Feed(feedgenerator.Atom1Feed):
Test of a custom feed generator class.
"""
def root_attributes(self):
- attrs = super(MyCustomAtom1Feed, self).root_attributes()
+ attrs = super().root_attributes()
attrs['django'] = 'rocks'
return attrs
def add_root_elements(self, handler):
- super(MyCustomAtom1Feed, self).add_root_elements(handler)
+ super().add_root_elements(handler)
handler.addQuickElement('spam', 'eggs')
def item_attributes(self, item):
- attrs = super(MyCustomAtom1Feed, self).item_attributes(item)
+ attrs = super().item_attributes(item)
attrs['bacon'] = 'yum'
return attrs
def add_item_elements(self, handler, item):
- super(MyCustomAtom1Feed, self).add_item_elements(handler, item)
+ super().add_item_elements(handler, item)
handler.addQuickElement('ministry', 'silly walks')
diff --git a/tests/syndication_tests/tests.py b/tests/syndication_tests/tests.py
index c9baa6537b..0563fd444c 100644
--- a/tests/syndication_tests/tests.py
+++ b/tests/syndication_tests/tests.py
@@ -64,7 +64,7 @@ class SyndicationFeedTest(FeedTestCase):
"""
@classmethod
def setUpClass(cls):
- super(SyndicationFeedTest, cls).setUpClass()
+ super().setUpClass()
# This cleanup is necessary because contrib.sites cache
# makes tests interfere with each other, see #11505
Site.objects.clear_cache()
diff --git a/tests/template_backends/test_dummy.py b/tests/template_backends/test_dummy.py
index dededfe390..5e1639cd80 100644
--- a/tests/template_backends/test_dummy.py
+++ b/tests/template_backends/test_dummy.py
@@ -18,7 +18,7 @@ class TemplateStringsTests(SimpleTestCase):
@classmethod
def setUpClass(cls):
- super(TemplateStringsTests, cls).setUpClass()
+ super().setUpClass()
params = {
'DIRS': [],
'APP_DIRS': True,
diff --git a/tests/template_tests/syntax_tests/test_cache.py b/tests/template_tests/syntax_tests/test_cache.py
index 7f7a6cd2cb..7dec02eb10 100644
--- a/tests/template_tests/syntax_tests/test_cache.py
+++ b/tests/template_tests/syntax_tests/test_cache.py
@@ -128,7 +128,7 @@ class CacheTests(SimpleTestCase):
@classmethod
def setUpClass(cls):
cls.engine = Engine(libraries={'cache': 'django.templatetags.cache'})
- super(CacheTests, cls).setUpClass()
+ super().setUpClass()
def test_cache_regression_20130(self):
t = self.engine.from_string('{% load cache %}{% cache 1 regression_20130 %}foo{% endcache %}')
diff --git a/tests/template_tests/syntax_tests/test_if_changed.py b/tests/template_tests/syntax_tests/test_if_changed.py
index bf8a95d8a4..889a24fcd8 100644
--- a/tests/template_tests/syntax_tests/test_if_changed.py
+++ b/tests/template_tests/syntax_tests/test_if_changed.py
@@ -161,7 +161,7 @@ class IfChangedTests(SimpleTestCase):
@classmethod
def setUpClass(cls):
cls.engine = Engine()
- super(IfChangedTests, cls).setUpClass()
+ super().setUpClass()
def test_ifchanged_concurrency(self):
"""
diff --git a/tests/template_tests/test_callables.py b/tests/template_tests/test_callables.py
index 6a361e8409..b72b122deb 100644
--- a/tests/template_tests/test_callables.py
+++ b/tests/template_tests/test_callables.py
@@ -8,7 +8,7 @@ class CallableVariablesTests(TestCase):
@classmethod
def setUpClass(cls):
cls.engine = Engine()
- super(CallableVariablesTests, cls).setUpClass()
+ super().setUpClass()
def test_callable(self):
diff --git a/tests/template_tests/test_custom.py b/tests/template_tests/test_custom.py
index 8eec22504c..5b788468b5 100644
--- a/tests/template_tests/test_custom.py
+++ b/tests/template_tests/test_custom.py
@@ -31,7 +31,7 @@ class TagTestCase(SimpleTestCase):
@classmethod
def setUpClass(cls):
cls.engine = Engine(app_dirs=True, libraries=LIBRARIES)
- super(TagTestCase, cls).setUpClass()
+ super().setUpClass()
def verify_tag(self, tag, name):
self.assertEqual(tag.__name__, name)
@@ -307,7 +307,7 @@ class TemplateTagLoadingTests(SimpleTestCase):
@classmethod
def setUpClass(cls):
cls.egg_dir = os.path.join(ROOT, 'eggs')
- super(TemplateTagLoadingTests, cls).setUpClass()
+ super().setUpClass()
def test_load_error(self):
msg = (
diff --git a/tests/template_tests/test_loaders.py b/tests/template_tests/test_loaders.py
index c36e1ba6be..b90586a078 100644
--- a/tests/template_tests/test_loaders.py
+++ b/tests/template_tests/test_loaders.py
@@ -99,7 +99,7 @@ class FileSystemLoaderTests(SimpleTestCase):
@classmethod
def setUpClass(cls):
cls.engine = Engine(dirs=[TEMPLATE_DIR], loaders=['django.template.loaders.filesystem.Loader'])
- super(FileSystemLoaderTests, cls).setUpClass()
+ super().setUpClass()
@contextmanager
def set_dirs(self, dirs):
@@ -213,7 +213,7 @@ class AppDirectoriesLoaderTests(SimpleTestCase):
cls.engine = Engine(
loaders=['django.template.loaders.app_directories.Loader'],
)
- super(AppDirectoriesLoaderTests, cls).setUpClass()
+ super().setUpClass()
@override_settings(INSTALLED_APPS=['template_tests'])
def test_get_template(self):
@@ -237,7 +237,7 @@ class LocmemLoaderTests(SimpleTestCase):
'index.html': 'index',
})],
)
- super(LocmemLoaderTests, cls).setUpClass()
+ super().setUpClass()
def test_get_template(self):
template = self.engine.get_template('index.html')
diff --git a/tests/template_tests/test_logging.py b/tests/template_tests/test_logging.py
index e03809d864..802015cf97 100644
--- a/tests/template_tests/test_logging.py
+++ b/tests/template_tests/test_logging.py
@@ -7,7 +7,7 @@ from django.utils.deprecation import RemovedInDjango21Warning
class TestHandler(logging.Handler):
def __init__(self):
- super(TestHandler, self).__init__()
+ super().__init__()
self.log_record = None
def emit(self, record):
@@ -88,7 +88,7 @@ class IncludeNodeLoggingTests(BaseTemplateLoggingTestCase):
@classmethod
def setUpClass(cls):
- super(IncludeNodeLoggingTests, cls).setUpClass()
+ super().setUpClass()
cls.engine = Engine(loaders=[
('django.template.loaders.locmem.Loader', {
'child': '{{ raises_exception }}',
diff --git a/tests/template_tests/test_nodelist.py b/tests/template_tests/test_nodelist.py
index b69e7c063b..35f382a163 100644
--- a/tests/template_tests/test_nodelist.py
+++ b/tests/template_tests/test_nodelist.py
@@ -9,7 +9,7 @@ class NodelistTest(TestCase):
@classmethod
def setUpClass(cls):
cls.engine = Engine()
- super(NodelistTest, cls).setUpClass()
+ super().setUpClass()
def test_for(self):
template = self.engine.from_string('{% for i in 1 %}{{ a }}{% endfor %}')
diff --git a/tests/test_client_regress/session.py b/tests/test_client_regress/session.py
index 461f66b624..ab374d37f0 100644
--- a/tests/test_client_regress/session.py
+++ b/tests/test_client_regress/session.py
@@ -9,7 +9,7 @@ class SessionStore(SessionBase):
This means that saving the session will change the session key.
"""
def __init__(self, session_key=None):
- super(SessionStore, self).__init__(session_key)
+ super().__init__(session_key)
def exists(self, session_key):
return False
diff --git a/tests/test_runner/runner.py b/tests/test_runner/runner.py
index e61de58a93..ac95aac403 100644
--- a/tests/test_runner/runner.py
+++ b/tests/test_runner/runner.py
@@ -5,9 +5,7 @@ class CustomOptionsTestRunner(DiscoverRunner):
def __init__(self, verbosity=1, interactive=True, failfast=True,
option_a=None, option_b=None, option_c=None, **kwargs):
- super(CustomOptionsTestRunner, self).__init__(
- verbosity=verbosity, interactive=interactive, failfast=failfast,
- )
+ super().__init__(verbosity=verbosity, interactive=interactive, failfast=failfast)
self.option_a = option_a
self.option_b = option_b
self.option_c = option_c
diff --git a/tests/test_runner/test_parallel.py b/tests/test_runner/test_parallel.py
index 08731f68eb..0b575a606a 100644
--- a/tests/test_runner/test_parallel.py
+++ b/tests/test_runner/test_parallel.py
@@ -15,7 +15,7 @@ class ExceptionThatFailsUnpickling(Exception):
arguments passed to __init__().
"""
def __init__(self, arg):
- super(ExceptionThatFailsUnpickling, self).__init__()
+ super().__init__()
class ParallelTestRunnerTest(SimpleTestCase):
diff --git a/tests/test_utils/tests.py b/tests/test_utils/tests.py
index ea094bbd55..19ef405852 100644
--- a/tests/test_utils/tests.py
+++ b/tests/test_utils/tests.py
@@ -799,7 +799,7 @@ class SkippingExtraTests(TestCase):
def __call__(self, result=None):
# Detect fixture loading by counting SQL queries, should be zero
with self.assertNumQueries(0):
- super(SkippingExtraTests, self).__call__(result)
+ super().__call__(result)
@unittest.skip("Fixture loading should not be performed for skipped tests.")
def test_fixtures_are_skipped(self):
@@ -1017,7 +1017,7 @@ class TestBadSetUpTestData(TestCase):
@classmethod
def setUpClass(cls):
try:
- super(TestBadSetUpTestData, cls).setUpClass()
+ super().setUpClass()
except cls.MyException:
cls._in_atomic_block = connection.in_atomic_block
diff --git a/tests/timezones/tests.py b/tests/timezones/tests.py
index e5a67f745e..586a2a3b47 100644
--- a/tests/timezones/tests.py
+++ b/tests/timezones/tests.py
@@ -596,7 +596,7 @@ class ForcedTimeZoneDatabaseTests(TransactionTestCase):
if not connection.features.test_db_allows_multiple_connections:
raise SkipTest("Database doesn't support feature(s): test_db_allows_multiple_connections")
- super(ForcedTimeZoneDatabaseTests, cls).setUpClass()
+ super().setUpClass()
@contextmanager
def override_database_connection_timezone(self, timezone):
diff --git a/tests/utils_tests/test_lazyobject.py b/tests/utils_tests/test_lazyobject.py
index 11bf163747..4a4e929cda 100644
--- a/tests/utils_tests/test_lazyobject.py
+++ b/tests/utils_tests/test_lazyobject.py
@@ -366,7 +366,7 @@ class BaseBaz:
def __reduce__(self):
self.baz = 'right'
- return super(BaseBaz, self).__reduce__()
+ return super().__reduce__()
def __eq__(self, other):
if self.__class__ != other.__class__:
@@ -385,11 +385,11 @@ class Baz(BaseBaz):
"""
def __init__(self, bar):
self.bar = bar
- super(Baz, self).__init__()
+ super().__init__()
def __reduce_ex__(self, proto):
self.quux = 'quux'
- return super(Baz, self).__reduce_ex__(proto)
+ return super().__reduce_ex__(proto)
class BazProxy(Baz):
@@ -401,6 +401,7 @@ class BazProxy(Baz):
def __init__(self, baz):
self.__dict__ = baz.__dict__
self._baz = baz
+ # Grandparent super
super(BaseBaz, self).__init__()
diff --git a/tests/utils_tests/test_module_loading.py b/tests/utils_tests/test_module_loading.py
index ad1135aa19..f66c167974 100644
--- a/tests/utils_tests/test_module_loading.py
+++ b/tests/utils_tests/test_module_loading.py
@@ -235,10 +235,10 @@ class CustomLoader(EggLoader):
into one class, this isn't required.
"""
def setUp(self):
- super(CustomLoader, self).setUp()
+ super().setUp()
sys.path_hooks.insert(0, TestFinder)
sys.path_importer_cache.clear()
def tearDown(self):
- super(CustomLoader, self).tearDown()
+ super().tearDown()
sys.path_hooks.pop(0)
diff --git a/tests/utils_tests/test_numberformat.py b/tests/utils_tests/test_numberformat.py
index dd6057bb64..f78fc91087 100644
--- a/tests/utils_tests/test_numberformat.py
+++ b/tests/utils_tests/test_numberformat.py
@@ -64,7 +64,7 @@ class TestNumberFormat(TestCase):
Wrapper for Decimal which prefixes each amount with the € symbol.
"""
def __format__(self, specifier, **kwargs):
- amount = super(EuroDecimal, self).__format__(specifier, **kwargs)
+ amount = super().__format__(specifier, **kwargs)
return '€ {}'.format(amount)
price = EuroDecimal('1.23')
diff --git a/tests/validation/models.py b/tests/validation/models.py
index 043aa4ded7..f954cc3a4f 100644
--- a/tests/validation/models.py
+++ b/tests/validation/models.py
@@ -33,7 +33,7 @@ class ModelToValidate(models.Model):
slug = models.SlugField(blank=True)
def clean(self):
- super(ModelToValidate, self).clean()
+ super().clean()
if self.number == 11:
raise ValidationError('Invalid number supplied!')
diff --git a/tests/view_tests/tests/test_csrf.py b/tests/view_tests/tests/test_csrf.py
index d0dd07b9e1..d5da576758 100644
--- a/tests/view_tests/tests/test_csrf.py
+++ b/tests/view_tests/tests/test_csrf.py
@@ -10,7 +10,7 @@ from django.views.csrf import CSRF_FAILURE_TEMPLATE_NAME, csrf_failure
class CsrfViewTests(SimpleTestCase):
def setUp(self):
- super(CsrfViewTests, self).setUp()
+ super().setUp()
self.client = Client(enforce_csrf_checks=True)
@override_settings(
diff --git a/tests/view_tests/tests/test_static.py b/tests/view_tests/tests/test_static.py
index f1a992789f..e2d22eb54c 100644
--- a/tests/view_tests/tests/test_static.py
+++ b/tests/view_tests/tests/test_static.py
@@ -116,12 +116,12 @@ class StaticHelperTest(StaticTests):
Test case to make sure the static URL pattern helper works as expected
"""
def setUp(self):
- super(StaticHelperTest, self).setUp()
+ super().setUp()
self._old_views_urlpatterns = urls.urlpatterns[:]
urls.urlpatterns += static('/media/', document_root=media_dir)
def tearDown(self):
- super(StaticHelperTest, self).tearDown()
+ super().tearDown()
urls.urlpatterns = self._old_views_urlpatterns