summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorLoic Bistuer <loic.bistuer@sixmedia.com>2013-03-08 09:15:23 -0500
committerSimon Charette <charette.s@gmail.com>2013-03-08 10:11:45 -0500
commit6983a1a540a6e6c3bd941fa15ddd8cb49f9ec74e (patch)
treee57559ebfd704705458e6e218dc1f3d868b2922c /tests
parent477d737e1e6bdf93950c8a381906925c594fac2f (diff)
Fixed #15363 -- Renamed and normalized to `get_queryset` the methods that return a QuerySet.
Diffstat (limited to 'tests')
-rw-r--r--tests/admin_changelist/admin.py8
-rw-r--r--tests/admin_changelist/models.py4
-rw-r--r--tests/admin_changelist/tests.py14
-rw-r--r--tests/admin_filters/tests.py50
-rw-r--r--tests/admin_ordering/tests.py20
-rw-r--r--tests/admin_views/admin.py36
-rw-r--r--tests/admin_views/customadmin.py4
-rw-r--r--tests/admin_views/tests.py12
-rw-r--r--tests/admin_widgets/models.py4
-rw-r--r--tests/custom_managers/models.py10
-rw-r--r--tests/custom_managers_regress/models.py4
-rw-r--r--tests/deprecation/__init__.py0
-rw-r--r--tests/deprecation/models.py0
-rw-r--r--tests/deprecation/tests.py158
-rw-r--r--tests/fixtures/models.py4
-rw-r--r--tests/generic_relations/models.py4
-rw-r--r--tests/get_object_or_404/models.py4
-rw-r--r--tests/managers_regress/models.py12
-rw-r--r--tests/modeladmin/tests.py4
-rw-r--r--tests/prefetch_related/models.py4
-rw-r--r--tests/proxy_models/models.py8
-rw-r--r--tests/queries/models.py8
-rw-r--r--tests/reverse_single_related/models.py4
23 files changed, 267 insertions, 109 deletions
diff --git a/tests/admin_changelist/admin.py b/tests/admin_changelist/admin.py
index 5751d04bce..8387ba77a1 100644
--- a/tests/admin_changelist/admin.py
+++ b/tests/admin_changelist/admin.py
@@ -34,8 +34,8 @@ class ChildAdmin(admin.ModelAdmin):
list_per_page = 10
list_filter = ['parent', 'age']
- def queryset(self, request):
- return super(ChildAdmin, self).queryset(request).select_related("parent__name")
+ def get_queryset(self, request):
+ return super(ChildAdmin, self).get_queryset(request).select_related("parent__name")
class CustomPaginationAdmin(ChildAdmin):
@@ -46,8 +46,8 @@ class FilteredChildAdmin(admin.ModelAdmin):
list_display = ['name', 'parent']
list_per_page = 10
- def queryset(self, request):
- return super(FilteredChildAdmin, self).queryset(request).filter(
+ def get_queryset(self, request):
+ return super(FilteredChildAdmin, self).get_queryset(request).filter(
name__contains='filtered')
diff --git a/tests/admin_changelist/models.py b/tests/admin_changelist/models.py
index 4ba2f9c503..786b4385aa 100644
--- a/tests/admin_changelist/models.py
+++ b/tests/admin_changelist/models.py
@@ -74,8 +74,8 @@ class UnorderedObject(models.Model):
class OrderedObjectManager(models.Manager):
- def get_query_set(self):
- return super(OrderedObjectManager, self).get_query_set().order_by('number')
+ def get_queryset(self):
+ return super(OrderedObjectManager, self).get_queryset().order_by('number')
class OrderedObject(models.Model):
"""
diff --git a/tests/admin_changelist/tests.py b/tests/admin_changelist/tests.py
index bb39f22411..05cdcdb73d 100644
--- a/tests/admin_changelist/tests.py
+++ b/tests/admin_changelist/tests.py
@@ -39,15 +39,15 @@ class ChangeListTests(TestCase):
def test_select_related_preserved(self):
"""
- Regression test for #10348: ChangeList.get_query_set() shouldn't
- overwrite a custom select_related provided by ModelAdmin.queryset().
+ Regression test for #10348: ChangeList.get_queryset() shouldn't
+ overwrite a custom select_related provided by ModelAdmin.get_queryset().
"""
m = ChildAdmin(Child, admin.site)
request = self.factory.get('/child/')
cl = ChangeList(request, Child, m.list_display, m.list_display_links,
m.list_filter, m.date_hierarchy, m.search_fields,
m.list_select_related, m.list_per_page, m.list_max_show_all, m.list_editable, m)
- self.assertEqual(cl.query_set.query.select_related, {'parent': {'name': {}}})
+ self.assertEqual(cl.queryset.query.select_related, {'parent': {'name': {}}})
def test_result_list_empty_changelist_value(self):
"""
@@ -277,7 +277,7 @@ class ChangeListTests(TestCase):
m.list_max_show_all, m.list_editable, m)
# Make sure distinct() was called
- self.assertEqual(cl.query_set.count(), 1)
+ self.assertEqual(cl.queryset.count(), 1)
def test_distinct_for_non_unique_related_object_in_search_fields(self):
"""
@@ -297,7 +297,7 @@ class ChangeListTests(TestCase):
m.list_max_show_all, m.list_editable, m)
# Make sure distinct() was called
- self.assertEqual(cl.query_set.count(), 1)
+ self.assertEqual(cl.queryset.count(), 1)
def test_pagination(self):
"""
@@ -317,7 +317,7 @@ class ChangeListTests(TestCase):
m.list_filter, m.date_hierarchy, m.search_fields,
m.list_select_related, m.list_per_page, m.list_max_show_all,
m.list_editable, m)
- self.assertEqual(cl.query_set.count(), 60)
+ self.assertEqual(cl.queryset.count(), 60)
self.assertEqual(cl.paginator.count, 60)
self.assertEqual(list(cl.paginator.page_range), [1, 2, 3, 4, 5, 6])
@@ -327,7 +327,7 @@ class ChangeListTests(TestCase):
m.list_filter, m.date_hierarchy, m.search_fields,
m.list_select_related, m.list_per_page, m.list_max_show_all,
m.list_editable, m)
- self.assertEqual(cl.query_set.count(), 30)
+ self.assertEqual(cl.queryset.count(), 30)
self.assertEqual(cl.paginator.count, 30)
self.assertEqual(list(cl.paginator.page_range), [1, 2, 3])
diff --git a/tests/admin_filters/tests.py b/tests/admin_filters/tests.py
index 11f792e07a..f05e8e2011 100644
--- a/tests/admin_filters/tests.py
+++ b/tests/admin_filters/tests.py
@@ -61,7 +61,7 @@ class DecadeListFilterWithFailingQueryset(DecadeListFilterWithTitleAndParameter)
class DecadeListFilterWithQuerysetBasedLookups(DecadeListFilterWithTitleAndParameter):
def lookups(self, request, model_admin):
- qs = model_admin.queryset(request)
+ qs = model_admin.get_queryset(request)
if qs.filter(year__gte=1980, year__lte=1989).exists():
yield ('the 80s', "the 1980's")
if qs.filter(year__gte=1990, year__lte=1999).exists():
@@ -86,7 +86,7 @@ class DepartmentListFilterLookupWithNonStringValue(SimpleListFilter):
return sorted(set([
(employee.department.id, # Intentionally not a string (Refs #19318)
employee.department.code)
- for employee in model_admin.queryset(request).all()
+ for employee in model_admin.get_queryset(request).all()
]))
def queryset(self, request, queryset):
@@ -183,7 +183,7 @@ class ListFiltersTests(TestCase):
changelist = self.get_changelist(request, Book, modeladmin)
# Make sure the correct queryset is returned
- queryset = changelist.get_query_set(request)
+ queryset = changelist.get_queryset(request)
self.assertEqual(list(queryset), [self.django_book, self.djangonaut_book])
# Make sure the correct choice is selected
@@ -200,7 +200,7 @@ class ListFiltersTests(TestCase):
changelist = self.get_changelist(request, Book, modeladmin)
# Make sure the correct queryset is returned
- queryset = changelist.get_query_set(request)
+ queryset = changelist.get_queryset(request)
if (self.today.year, self.today.month) == (self.one_week_ago.year, self.one_week_ago.month):
# In case one week ago is in the same month.
self.assertEqual(list(queryset), [self.gipsy_book, self.django_book, self.djangonaut_book])
@@ -221,7 +221,7 @@ class ListFiltersTests(TestCase):
changelist = self.get_changelist(request, Book, modeladmin)
# Make sure the correct queryset is returned
- queryset = changelist.get_query_set(request)
+ queryset = changelist.get_queryset(request)
if self.today.year == self.one_week_ago.year:
# In case one week ago is in the same year.
self.assertEqual(list(queryset), [self.gipsy_book, self.django_book, self.djangonaut_book])
@@ -242,7 +242,7 @@ class ListFiltersTests(TestCase):
changelist = self.get_changelist(request, Book, modeladmin)
# Make sure the correct queryset is returned
- queryset = changelist.get_query_set(request)
+ queryset = changelist.get_queryset(request)
self.assertEqual(list(queryset), [self.gipsy_book, self.django_book, self.djangonaut_book])
# Make sure the correct choice is selected
@@ -266,7 +266,7 @@ class ListFiltersTests(TestCase):
changelist = self.get_changelist(request, Book, modeladmin)
# Make sure the correct queryset is returned
- queryset = changelist.get_query_set(request)
+ queryset = changelist.get_queryset(request)
self.assertEqual(list(queryset), [self.django_book])
# Make sure the last choice is None and is selected
@@ -293,7 +293,7 @@ class ListFiltersTests(TestCase):
changelist = self.get_changelist(request, Book, modeladmin)
# Make sure the correct queryset is returned
- queryset = changelist.get_query_set(request)
+ queryset = changelist.get_queryset(request)
self.assertEqual(list(queryset), [self.gipsy_book])
# Make sure the last choice is None and is selected
@@ -321,7 +321,7 @@ class ListFiltersTests(TestCase):
changelist = self.get_changelist(request, Book, modeladmin)
# Make sure the correct queryset is returned
- queryset = changelist.get_query_set(request)
+ queryset = changelist.get_queryset(request)
self.assertEqual(list(queryset), [self.django_book, self.bio_book, self.djangonaut_book])
# Make sure the last choice is None and is selected
@@ -349,7 +349,7 @@ class ListFiltersTests(TestCase):
changelist = self.get_changelist(request, User, modeladmin)
# Make sure the correct queryset is returned
- queryset = changelist.get_query_set(request)
+ queryset = changelist.get_queryset(request)
self.assertEqual(list(queryset), [self.lisa])
# Make sure the last choice is None and is selected
@@ -374,7 +374,7 @@ class ListFiltersTests(TestCase):
changelist = self.get_changelist(request, User, modeladmin)
# Make sure the correct queryset is returned
- queryset = changelist.get_query_set(request)
+ queryset = changelist.get_queryset(request)
self.assertEqual(list(queryset), [self.alfred])
# Make sure the last choice is None and is selected
@@ -410,7 +410,7 @@ class ListFiltersTests(TestCase):
changelist = self.get_changelist(request, Book, modeladmin)
# Make sure the correct queryset is returned
- queryset = changelist.get_query_set(request)
+ queryset = changelist.get_queryset(request)
self.assertEqual(list(queryset), [self.bio_book])
# Make sure the correct choice is selected
@@ -424,7 +424,7 @@ class ListFiltersTests(TestCase):
changelist = self.get_changelist(request, Book, modeladmin)
# Make sure the correct queryset is returned
- queryset = changelist.get_query_set(request)
+ queryset = changelist.get_queryset(request)
self.assertEqual(list(queryset), [self.gipsy_book, self.djangonaut_book])
# Make sure the correct choice is selected
@@ -438,7 +438,7 @@ class ListFiltersTests(TestCase):
changelist = self.get_changelist(request, Book, modeladmin)
# Make sure the correct queryset is returned
- queryset = changelist.get_query_set(request)
+ queryset = changelist.get_queryset(request)
self.assertEqual(list(queryset), [self.django_book])
# Make sure the correct choice is selected
@@ -457,7 +457,7 @@ class ListFiltersTests(TestCase):
changelist = self.get_changelist(request, Book, modeladmin)
# Make sure the correct queryset is returned
- queryset = changelist.get_query_set(request)
+ queryset = changelist.get_queryset(request)
self.assertEqual(list(queryset), list(Book.objects.all().order_by('-id')))
# Make sure the correct choice is selected
@@ -474,7 +474,7 @@ class ListFiltersTests(TestCase):
changelist = self.get_changelist(request, Book, modeladmin)
# Make sure the correct queryset is returned
- queryset = changelist.get_query_set(request)
+ queryset = changelist.get_queryset(request)
self.assertEqual(list(queryset), [])
# Make sure the correct choice is selected
@@ -491,7 +491,7 @@ class ListFiltersTests(TestCase):
changelist = self.get_changelist(request, Book, modeladmin)
# Make sure the correct queryset is returned
- queryset = changelist.get_query_set(request)
+ queryset = changelist.get_queryset(request)
self.assertEqual(list(queryset), [self.bio_book])
# Make sure the correct choice is selected
@@ -508,7 +508,7 @@ class ListFiltersTests(TestCase):
changelist = self.get_changelist(request, Book, modeladmin)
# Make sure the correct queryset is returned
- queryset = changelist.get_query_set(request)
+ queryset = changelist.get_queryset(request)
self.assertEqual(list(queryset), [self.gipsy_book, self.djangonaut_book])
# Make sure the correct choice is selected
@@ -525,7 +525,7 @@ class ListFiltersTests(TestCase):
changelist = self.get_changelist(request, Book, modeladmin)
# Make sure the correct queryset is returned
- queryset = changelist.get_query_set(request)
+ queryset = changelist.get_queryset(request)
self.assertEqual(list(queryset), [self.djangonaut_book])
# Make sure the correct choices are selected
@@ -615,7 +615,7 @@ class ListFiltersTests(TestCase):
changelist = self.get_changelist(request, Book, modeladmin)
# Make sure the correct queryset is returned
- queryset = changelist.get_query_set(request)
+ queryset = changelist.get_queryset(request)
self.assertEqual(list(queryset), [self.bio_book])
filterspec = changelist.get_filters(request)[0][-1]
@@ -637,7 +637,7 @@ class ListFiltersTests(TestCase):
changelist = self.get_changelist(request, Book, modeladmin)
# Make sure the correct queryset is returned
- queryset = changelist.get_query_set(request)
+ queryset = changelist.get_queryset(request)
self.assertEqual(list(queryset), [self.bio_book])
# Make sure the correct choice is selected
@@ -654,7 +654,7 @@ class ListFiltersTests(TestCase):
changelist = self.get_changelist(request, Book, modeladmin)
# Make sure the correct queryset is returned
- queryset = changelist.get_query_set(request)
+ queryset = changelist.get_queryset(request)
self.assertEqual(list(queryset), [self.bio_book])
# Make sure the correct choice is selected
@@ -676,7 +676,7 @@ class ListFiltersTests(TestCase):
request = self.request_factory.get('/', {'department': self.john.pk})
changelist = self.get_changelist(request, Employee, modeladmin)
- queryset = changelist.get_query_set(request)
+ queryset = changelist.get_queryset(request)
self.assertEqual(list(queryset), [self.john])
@@ -698,7 +698,7 @@ class ListFiltersTests(TestCase):
changelist = self.get_changelist(request, Employee, modeladmin)
# Make sure the correct queryset is returned
- queryset = changelist.get_query_set(request)
+ queryset = changelist.get_queryset(request)
self.assertEqual(list(queryset), [self.jack, self.john])
filterspec = changelist.get_filters(request)[0][-1]
@@ -723,7 +723,7 @@ class ListFiltersTests(TestCase):
changelist = self.get_changelist(request, Employee, modeladmin)
# Make sure the correct queryset is returned
- queryset = changelist.get_query_set(request)
+ queryset = changelist.get_queryset(request)
self.assertEqual(list(queryset), [self.john])
filterspec = changelist.get_filters(request)[0][-1]
diff --git a/tests/admin_ordering/tests.py b/tests/admin_ordering/tests.py
index 10faa9533f..6655ad37ad 100644
--- a/tests/admin_ordering/tests.py
+++ b/tests/admin_ordering/tests.py
@@ -22,8 +22,8 @@ request.user = MockSuperUser()
class TestAdminOrdering(TestCase):
"""
- Let's make sure that ModelAdmin.queryset uses the ordering we define in
- ModelAdmin rather that ordering defined in the model's inner Meta
+ Let's make sure that ModelAdmin.get_queryset uses the ordering we define
+ in ModelAdmin rather that ordering defined in the model's inner Meta
class.
"""
@@ -42,7 +42,7 @@ class TestAdminOrdering(TestCase):
class.
"""
ma = ModelAdmin(Band, None)
- names = [b.name for b in ma.queryset(request)]
+ names = [b.name for b in ma.get_queryset(request)]
self.assertEqual(['Aerosmith', 'Radiohead', 'Van Halen'], names)
def test_specified_ordering(self):
@@ -53,7 +53,7 @@ class TestAdminOrdering(TestCase):
class BandAdmin(ModelAdmin):
ordering = ('rank',) # default ordering is ('name',)
ma = BandAdmin(Band, None)
- names = [b.name for b in ma.queryset(request)]
+ names = [b.name for b in ma.get_queryset(request)]
self.assertEqual(['Radiohead', 'Van Halen', 'Aerosmith'], names)
def test_dynamic_ordering(self):
@@ -65,17 +65,17 @@ class TestAdminOrdering(TestCase):
request = self.request_factory.get('/')
request.user = super_user
ma = DynOrderingBandAdmin(Band, None)
- names = [b.name for b in ma.queryset(request)]
+ names = [b.name for b in ma.get_queryset(request)]
self.assertEqual(['Radiohead', 'Van Halen', 'Aerosmith'], names)
request.user = other_user
- names = [b.name for b in ma.queryset(request)]
+ names = [b.name for b in ma.get_queryset(request)]
self.assertEqual(['Aerosmith', 'Radiohead', 'Van Halen'], names)
class TestInlineModelAdminOrdering(TestCase):
"""
- Let's make sure that InlineModelAdmin.queryset uses the ordering we define
- in InlineModelAdmin.
+ Let's make sure that InlineModelAdmin.get_queryset uses the ordering we
+ define in InlineModelAdmin.
"""
def setUp(self):
@@ -95,7 +95,7 @@ class TestInlineModelAdminOrdering(TestCase):
class.
"""
inline = SongInlineDefaultOrdering(self.b, None)
- names = [s.name for s in inline.queryset(request)]
+ names = [s.name for s in inline.get_queryset(request)]
self.assertEqual(['Dude (Looks Like a Lady)', 'Jaded', 'Pink'], names)
def test_specified_ordering(self):
@@ -103,7 +103,7 @@ class TestInlineModelAdminOrdering(TestCase):
Let's check with ordering set to something different than the default.
"""
inline = SongInlineNewOrdering(self.b, None)
- names = [s.name for s in inline.queryset(request)]
+ names = [s.name for s in inline.get_queryset(request)]
self.assertEqual(['Jaded', 'Pink', 'Dude (Looks Like a Lady)'], names)
diff --git a/tests/admin_views/admin.py b/tests/admin_views/admin.py
index d4348968e0..cc7585cd2d 100644
--- a/tests/admin_views/admin.py
+++ b/tests/admin_views/admin.py
@@ -177,10 +177,10 @@ class PersonAdmin(admin.ModelAdmin):
return super(PersonAdmin, self).get_changelist_formset(request,
formset=BasePersonModelFormSet, **kwargs)
- def queryset(self, request):
+ 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).queryset(request).order_by('age')
+ return super(PersonAdmin, self).get_queryset(request).order_by('age')
class FooAccount(Account):
@@ -283,8 +283,8 @@ class ParentAdmin(admin.ModelAdmin):
class EmptyModelAdmin(admin.ModelAdmin):
- def queryset(self, request):
- return super(EmptyModelAdmin, self).queryset(request).filter(pk__gt=1)
+ def get_queryset(self, request):
+ return super(EmptyModelAdmin, self).get_queryset(request).filter(pk__gt=1)
class OldSubscriberAdmin(admin.ModelAdmin):
@@ -427,8 +427,8 @@ class PostAdmin(admin.ModelAdmin):
class CustomChangeList(ChangeList):
- def get_query_set(self, request):
- return self.root_query_set.filter(pk=9999) # Does not exist
+ def get_queryset(self, request):
+ return self.root_queryset.filter(pk=9999) # Does not exist
class GadgetAdmin(admin.ModelAdmin):
@@ -452,52 +452,52 @@ class FoodDeliveryAdmin(admin.ModelAdmin):
class CoverLetterAdmin(admin.ModelAdmin):
"""
- A ModelAdmin with a custom queryset() method that uses defer(), to test
+ A ModelAdmin with a custom get_queryset() method that uses defer(), to test
verbose_name display in messages shown after adding/editing CoverLetter
instances.
Note that the CoverLetter model defines a __unicode__ method.
For testing fix for ticket #14529.
"""
- def queryset(self, request):
- return super(CoverLetterAdmin, self).queryset(request).defer('date_written')
+ def get_queryset(self, request):
+ return super(CoverLetterAdmin, self).get_queryset(request).defer('date_written')
class PaperAdmin(admin.ModelAdmin):
"""
- A ModelAdmin with a custom queryset() method that uses only(), to test
+ A ModelAdmin with a custom get_queryset() method that uses only(), to test
verbose_name display in messages shown after adding/editing Paper
instances.
For testing fix for ticket #14529.
"""
- def queryset(self, request):
- return super(PaperAdmin, self).queryset(request).only('title')
+ def get_queryset(self, request):
+ return super(PaperAdmin, self).get_queryset(request).only('title')
class ShortMessageAdmin(admin.ModelAdmin):
"""
- A ModelAdmin with a custom queryset() method that uses defer(), to test
+ A ModelAdmin with a custom get_queryset() method that uses defer(), to test
verbose_name display in messages shown after adding/editing ShortMessage
instances.
For testing fix for ticket #14529.
"""
- def queryset(self, request):
- return super(ShortMessageAdmin, self).queryset(request).defer('timestamp')
+ def get_queryset(self, request):
+ return super(ShortMessageAdmin, self).get_queryset(request).defer('timestamp')
class TelegramAdmin(admin.ModelAdmin):
"""
- A ModelAdmin with a custom queryset() method that uses only(), to test
+ A ModelAdmin with a custom get_queryset() method that uses only(), to test
verbose_name display in messages shown after adding/editing Telegram
instances.
Note that the Telegram model defines a __unicode__ method.
For testing fix for ticket #14529.
"""
- def queryset(self, request):
- return super(TelegramAdmin, self).queryset(request).only('title')
+ def get_queryset(self, request):
+ return super(TelegramAdmin, self).get_queryset(request).only('title')
class StoryForm(forms.ModelForm):
diff --git a/tests/admin_views/customadmin.py b/tests/admin_views/customadmin.py
index d69d690af0..c204b81edd 100644
--- a/tests/admin_views/customadmin.py
+++ b/tests/admin_views/customadmin.py
@@ -35,8 +35,8 @@ class Admin2(admin.AdminSite):
class UserLimitedAdmin(UserAdmin):
# used for testing password change on a user not in queryset
- def queryset(self, request):
- qs = super(UserLimitedAdmin, self).queryset(request)
+ def get_queryset(self, request):
+ qs = super(UserLimitedAdmin, self).get_queryset(request)
return qs.filter(is_superuser=False)
diff --git a/tests/admin_views/tests.py b/tests/admin_views/tests.py
index ff2eb95745..53dc74fa88 100644
--- a/tests/admin_views/tests.py
+++ b/tests/admin_views/tests.py
@@ -291,7 +291,7 @@ class AdminViewBasicTest(TestCase):
"""
If no ordering is defined in `ModelAdmin.ordering` or in the query
string, then the underlying order of the queryset should not be
- changed, even if it is defined in `Modeladmin.queryset()`.
+ changed, even if it is defined in `Modeladmin.get_queryset()`.
Refs #11868, #7309.
"""
p1 = Person.objects.create(name="Amy", gender=1, alive=True, age=80)
@@ -440,7 +440,7 @@ class AdminViewBasicTest(TestCase):
self.urlbit, query_string))
self.assertEqual(filtered_response.status_code, 200)
# ensure changelist contains only valid objects
- for obj in filtered_response.context['cl'].query_set.all():
+ for obj in filtered_response.context['cl'].queryset.all():
self.assertTrue(params['test'](obj, value))
def testIncorrectLookupParameters(self):
@@ -2583,7 +2583,7 @@ class AdminCustomQuerysetTest(TestCase):
self.assertEqual(response.status_code, 404)
def test_add_model_modeladmin_defer_qs(self):
- # Test for #14529. defer() is used in ModelAdmin.queryset()
+ # Test for #14529. defer() is used in ModelAdmin.get_queryset()
# model has __unicode__ method
self.assertEqual(CoverLetter.objects.count(), 0)
@@ -2622,7 +2622,7 @@ class AdminCustomQuerysetTest(TestCase):
)
def test_add_model_modeladmin_only_qs(self):
- # Test for #14529. only() is used in ModelAdmin.queryset()
+ # Test for #14529. only() is used in ModelAdmin.get_queryset()
# model has __unicode__ method
self.assertEqual(Telegram.objects.count(), 0)
@@ -2661,7 +2661,7 @@ class AdminCustomQuerysetTest(TestCase):
)
def test_edit_model_modeladmin_defer_qs(self):
- # Test for #14529. defer() is used in ModelAdmin.queryset()
+ # Test for #14529. defer() is used in ModelAdmin.get_queryset()
# model has __unicode__ method
cl = CoverLetter.objects.create(author="John Doe")
@@ -2708,7 +2708,7 @@ class AdminCustomQuerysetTest(TestCase):
)
def test_edit_model_modeladmin_only_qs(self):
- # Test for #14529. only() is used in ModelAdmin.queryset()
+ # Test for #14529. only() is used in ModelAdmin.get_queryset()
# model has __unicode__ method
t = Telegram.objects.create(title="Frist Telegram")
diff --git a/tests/admin_widgets/models.py b/tests/admin_widgets/models.py
index 2977b86f3e..ae19d58cc4 100644
--- a/tests/admin_widgets/models.py
+++ b/tests/admin_widgets/models.py
@@ -37,8 +37,8 @@ class Album(models.Model):
return self.name
class HiddenInventoryManager(models.Manager):
- def get_query_set(self):
- return super(HiddenInventoryManager, self).get_query_set().filter(hidden=False)
+ def get_queryset(self):
+ return super(HiddenInventoryManager, self).get_queryset().filter(hidden=False)
@python_2_unicode_compatible
class Inventory(models.Model):
diff --git a/tests/custom_managers/models.py b/tests/custom_managers/models.py
index de7c1772ed..2f5e62fc7a 100644
--- a/tests/custom_managers/models.py
+++ b/tests/custom_managers/models.py
@@ -30,11 +30,11 @@ class Person(models.Model):
def __str__(self):
return "%s %s" % (self.first_name, self.last_name)
-# An example of a custom manager that sets get_query_set().
+# An example of a custom manager that sets get_queryset().
class PublishedBookManager(models.Manager):
- def get_query_set(self):
- return super(PublishedBookManager, self).get_query_set().filter(is_published=True)
+ def get_queryset(self):
+ return super(PublishedBookManager, self).get_queryset().filter(is_published=True)
@python_2_unicode_compatible
class Book(models.Model):
@@ -50,8 +50,8 @@ class Book(models.Model):
# An example of providing multiple custom managers.
class FastCarManager(models.Manager):
- def get_query_set(self):
- return super(FastCarManager, self).get_query_set().filter(top_speed__gt=150)
+ def get_queryset(self):
+ return super(FastCarManager, self).get_queryset().filter(top_speed__gt=150)
@python_2_unicode_compatible
class Car(models.Model):
diff --git a/tests/custom_managers_regress/models.py b/tests/custom_managers_regress/models.py
index 71073f0fe7..95cf6e8ca1 100644
--- a/tests/custom_managers_regress/models.py
+++ b/tests/custom_managers_regress/models.py
@@ -10,8 +10,8 @@ class RestrictedManager(models.Manager):
"""
A manager that filters out non-public instances.
"""
- def get_query_set(self):
- return super(RestrictedManager, self).get_query_set().filter(is_public=True)
+ def get_queryset(self):
+ return super(RestrictedManager, self).get_queryset().filter(is_public=True)
@python_2_unicode_compatible
class RelatedModel(models.Model):
diff --git a/tests/deprecation/__init__.py b/tests/deprecation/__init__.py
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/tests/deprecation/__init__.py
diff --git a/tests/deprecation/models.py b/tests/deprecation/models.py
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/tests/deprecation/models.py
diff --git a/tests/deprecation/tests.py b/tests/deprecation/tests.py
new file mode 100644
index 0000000000..df752b3149
--- /dev/null
+++ b/tests/deprecation/tests.py
@@ -0,0 +1,158 @@
+from __future__ import unicode_literals
+import warnings
+
+from django.test.testcases import SimpleTestCase
+from django.utils import six
+from django.utils.deprecation import RenameMethodsBase
+
+
+class RenameManagerMethods(RenameMethodsBase):
+ renamed_methods = (
+ ('old', 'new', PendingDeprecationWarning),
+ )
+
+
+class RenameMethodsTests(SimpleTestCase):
+ """
+ Tests the `RenameMethodsBase` type introduced to rename `get_query_set`
+ to `get_queryset` across the code base following #15363.
+ """
+
+ def test_class_definition_warnings(self):
+ """
+ Ensure a warning is raised upon class definition to suggest renaming
+ the faulty method.
+ """
+ with warnings.catch_warnings(record=True) as recorded:
+ warnings.simplefilter('always')
+ class Manager(six.with_metaclass(RenameManagerMethods)):
+ def old(self):
+ pass
+ self.assertEqual(len(recorded), 1)
+ msg = str(recorded[0].message)
+ self.assertEqual(msg,
+ '`Manager.old` method should be renamed `new`.')
+
+ def test_get_new_defined(self):
+ """
+ Ensure `old` complains and not `new` when only `new` is defined.
+ """
+ with warnings.catch_warnings(record=True) as recorded:
+ warnings.simplefilter('ignore')
+ class Manager(six.with_metaclass(RenameManagerMethods)):
+ def new(self):
+ pass
+ warnings.simplefilter('always')
+ manager = Manager()
+ manager.new()
+ self.assertEqual(len(recorded), 0)
+ manager.old()
+ self.assertEqual(len(recorded), 1)
+ msg = str(recorded.pop().message)
+ self.assertEqual(msg,
+ '`Manager.old` is deprecated, use `new` instead.')
+
+ def test_get_old_defined(self):
+ """
+ Ensure `old` complains when only `old` is defined.
+ """
+ with warnings.catch_warnings(record=True) as recorded:
+ warnings.simplefilter('ignore')
+ class Manager(six.with_metaclass(RenameManagerMethods)):
+ def old(self):
+ pass
+ warnings.simplefilter('always')
+ manager = Manager()
+ manager.new()
+ self.assertEqual(len(recorded), 0)
+ manager.old()
+ self.assertEqual(len(recorded), 1)
+ msg = str(recorded.pop().message)
+ self.assertEqual(msg,
+ '`Manager.old` is deprecated, use `new` instead.')
+
+ def test_deprecated_subclass_renamed(self):
+ """
+ Ensure the correct warnings are raised when a class that didn't rename
+ `old` subclass one that did.
+ """
+ with warnings.catch_warnings(record=True) as recorded:
+ warnings.simplefilter('ignore')
+ class Renamed(six.with_metaclass(RenameManagerMethods)):
+ def new(self):
+ pass
+ class Deprecated(Renamed):
+ def old(self):
+ super(Deprecated, self).old()
+ warnings.simplefilter('always')
+ deprecated = Deprecated()
+ deprecated.new()
+ self.assertEqual(len(recorded), 1)
+ msg = str(recorded.pop().message)
+ self.assertEqual(msg,
+ '`Renamed.old` is deprecated, use `new` instead.')
+ recorded[:] = []
+ deprecated.old()
+ self.assertEqual(len(recorded), 2)
+ msgs = [str(warning.message) for warning in recorded]
+ self.assertEqual(msgs, [
+ '`Deprecated.old` is deprecated, use `new` instead.',
+ '`Renamed.old` is deprecated, use `new` instead.',
+ ])
+
+ def test_renamed_subclass_deprecated(self):
+ """
+ Ensure the correct warnings are raised when a class that renamed
+ `old` subclass one that didn't.
+ """
+ with warnings.catch_warnings(record=True) as recorded:
+ warnings.simplefilter('ignore')
+ class Deprecated(six.with_metaclass(RenameManagerMethods)):
+ def old(self):
+ pass
+ class Renamed(Deprecated):
+ def new(self):
+ super(Renamed, self).new()
+ warnings.simplefilter('always')
+ renamed = Renamed()
+ renamed.new()
+ self.assertEqual(len(recorded), 0)
+ renamed.old()
+ self.assertEqual(len(recorded), 1)
+ msg = str(recorded.pop().message)
+ self.assertEqual(msg,
+ '`Renamed.old` is deprecated, use `new` instead.')
+
+ def test_deprecated_subclass_renamed_and_mixins(self):
+ """
+ Ensure the correct warnings are raised when a subclass inherit from a
+ class that renamed `old` and mixins that may or may not have renamed
+ `new`.
+ """
+ with warnings.catch_warnings(record=True) as recorded:
+ warnings.simplefilter('ignore')
+ class Renamed(six.with_metaclass(RenameManagerMethods)):
+ def new(self):
+ pass
+ class RenamedMixin(object):
+ def new(self):
+ super(RenamedMixin, self).new()
+ class DeprecatedMixin(object):
+ def old(self):
+ super(DeprecatedMixin, self).old()
+ class Deprecated(DeprecatedMixin, RenamedMixin, Renamed):
+ pass
+ warnings.simplefilter('always')
+ deprecated = Deprecated()
+ deprecated.new()
+ self.assertEqual(len(recorded), 1)
+ msg = str(recorded.pop().message)
+ self.assertEqual(msg,
+ '`RenamedMixin.old` is deprecated, use `new` instead.')
+ deprecated.old()
+ self.assertEqual(len(recorded), 2)
+ msgs = [str(warning.message) for warning in recorded]
+ self.assertEqual(msgs, [
+ '`DeprecatedMixin.old` is deprecated, use `new` instead.',
+ '`RenamedMixin.old` is deprecated, use `new` instead.',
+ ])
diff --git a/tests/fixtures/models.py b/tests/fixtures/models.py
index 8bd3501926..976716fdc9 100644
--- a/tests/fixtures/models.py
+++ b/tests/fixtures/models.py
@@ -78,8 +78,8 @@ class Person(models.Model):
return (self.name,)
class SpyManager(PersonManager):
- def get_query_set(self):
- return super(SpyManager, self).get_query_set().filter(cover_blown=False)
+ def get_queryset(self):
+ return super(SpyManager, self).get_queryset().filter(cover_blown=False)
class Spy(Person):
objects = SpyManager()
diff --git a/tests/generic_relations/models.py b/tests/generic_relations/models.py
index 18d7623971..34dc8d3a7d 100644
--- a/tests/generic_relations/models.py
+++ b/tests/generic_relations/models.py
@@ -88,8 +88,8 @@ class Mineral(models.Model):
return self.name
class GeckoManager(models.Manager):
- def get_query_set(self):
- return super(GeckoManager, self).get_query_set().filter(has_tail=True)
+ def get_queryset(self):
+ return super(GeckoManager, self).get_queryset().filter(has_tail=True)
class Gecko(models.Model):
has_tail = models.BooleanField()
diff --git a/tests/get_object_or_404/models.py b/tests/get_object_or_404/models.py
index bda060569e..bb9aa60383 100644
--- a/tests/get_object_or_404/models.py
+++ b/tests/get_object_or_404/models.py
@@ -22,8 +22,8 @@ class Author(models.Model):
return self.name
class ArticleManager(models.Manager):
- def get_query_set(self):
- return super(ArticleManager, self).get_query_set().filter(authors__name__icontains='sir')
+ def get_queryset(self):
+ return super(ArticleManager, self).get_queryset().filter(authors__name__icontains='sir')
@python_2_unicode_compatible
class Article(models.Model):
diff --git a/tests/managers_regress/models.py b/tests/managers_regress/models.py
index d72970d86e..d8dd22ec9a 100644
--- a/tests/managers_regress/models.py
+++ b/tests/managers_regress/models.py
@@ -7,18 +7,18 @@ from django.utils.encoding import python_2_unicode_compatible
class OnlyFred(models.Manager):
- def get_query_set(self):
- return super(OnlyFred, self).get_query_set().filter(name='fred')
+ def get_queryset(self):
+ return super(OnlyFred, self).get_queryset().filter(name='fred')
class OnlyBarney(models.Manager):
- def get_query_set(self):
- return super(OnlyBarney, self).get_query_set().filter(name='barney')
+ def get_queryset(self):
+ return super(OnlyBarney, self).get_queryset().filter(name='barney')
class Value42(models.Manager):
- def get_query_set(self):
- return super(Value42, self).get_query_set().filter(value=42)
+ def get_queryset(self):
+ return super(Value42, self).get_queryset().filter(value=42)
class AbstractBase1(models.Model):
diff --git a/tests/modeladmin/tests.py b/tests/modeladmin/tests.py
index b0a181218b..e5450ab8ff 100644
--- a/tests/modeladmin/tests.py
+++ b/tests/modeladmin/tests.py
@@ -69,7 +69,7 @@ class ModelAdminTests(TestCase):
# If we specify the fields argument, fieldsets_add and fielsets_change should
# just stick the fields into a formsets structure and return it.
class BandAdmin(ModelAdmin):
- fields = ['name']
+ fields = ['name']
ma = BandAdmin(Band, self.site)
@@ -1074,7 +1074,7 @@ class ValidationTests(unittest.TestCase):
return 'awesomeness'
def get_choices(self, request):
return (('bit', 'A bit awesome'), ('very', 'Very awesome'), )
- def get_query_set(self, cl, qs):
+ def get_queryset(self, cl, qs):
return qs
class ValidationTestModelAdmin(ModelAdmin):
diff --git a/tests/prefetch_related/models.py b/tests/prefetch_related/models.py
index e58997d200..81c569844f 100644
--- a/tests/prefetch_related/models.py
+++ b/tests/prefetch_related/models.py
@@ -87,8 +87,8 @@ class Qualification(models.Model):
class TeacherManager(models.Manager):
- def get_query_set(self):
- return super(TeacherManager, self).get_query_set().prefetch_related('qualifications')
+ def get_queryset(self):
+ return super(TeacherManager, self).get_queryset().prefetch_related('qualifications')
@python_2_unicode_compatible
diff --git a/tests/proxy_models/models.py b/tests/proxy_models/models.py
index 6c962aadc8..ffb36657e1 100644
--- a/tests/proxy_models/models.py
+++ b/tests/proxy_models/models.py
@@ -10,12 +10,12 @@ from django.utils.encoding import python_2_unicode_compatible
# A couple of managers for testing managing overriding in proxy model cases.
class PersonManager(models.Manager):
- def get_query_set(self):
- return super(PersonManager, self).get_query_set().exclude(name="fred")
+ def get_queryset(self):
+ return super(PersonManager, self).get_queryset().exclude(name="fred")
class SubManager(models.Manager):
- def get_query_set(self):
- return super(SubManager, self).get_query_set().exclude(name="wilma")
+ def get_queryset(self):
+ return super(SubManager, self).get_queryset().exclude(name="wilma")
@python_2_unicode_compatible
class Person(models.Model):
diff --git a/tests/queries/models.py b/tests/queries/models.py
index c8598371a6..f7f643d585 100644
--- a/tests/queries/models.py
+++ b/tests/queries/models.py
@@ -176,8 +176,8 @@ class LoopZ(models.Model):
# A model and custom default manager combination.
class CustomManager(models.Manager):
- def get_query_set(self):
- qs = super(CustomManager, self).get_query_set()
+ def get_queryset(self):
+ qs = super(CustomManager, self).get_queryset()
return qs.filter(public=True, tag__name='t1')
@python_2_unicode_compatible
@@ -197,8 +197,8 @@ class Detail(models.Model):
data = models.CharField(max_length=10)
class MemberManager(models.Manager):
- def get_query_set(self):
- return super(MemberManager, self).get_query_set().select_related("details")
+ def get_queryset(self):
+ return super(MemberManager, self).get_queryset().select_related("details")
class Member(models.Model):
name = models.CharField(max_length=10)
diff --git a/tests/reverse_single_related/models.py b/tests/reverse_single_related/models.py
index 898be8411b..30ba345120 100644
--- a/tests/reverse_single_related/models.py
+++ b/tests/reverse_single_related/models.py
@@ -2,8 +2,8 @@ from django.db import models
class SourceManager(models.Manager):
- def get_query_set(self):
- return super(SourceManager, self).get_query_set().filter(is_public=True)
+ def get_queryset(self):
+ return super(SourceManager, self).get_queryset().filter(is_public=True)
class Source(models.Model):
is_public = models.BooleanField()