diff options
author | Hasan Ramezani <hasan.r67@gmail.com> | 2020-10-18 18:29:52 +0200 |
---|---|---|
committer | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2020-11-06 09:24:50 +0100 |
commit | 3f7b3275627385f8f7531fca01cdda50d4ec6b6e (patch) | |
tree | fb082d40e73f6c877911eab92229ac21cdfaa5bc /tests/model_formsets | |
parent | 13b6fff11703a694e155b84d41d02822bbc0aaa0 (diff) | |
download | django-3f7b3275627385f8f7531fca01cdda50d4ec6b6e.tar.gz |
Fixed #31235 -- Made assertQuerysetEqual() compare querysets directly.
This also replaces assertQuerysetEqual() to
assertSequenceEqual()/assertCountEqual() where appropriate.
Co-authored-by: Peter Inglesby <peter.inglesby@gmail.com>
Co-authored-by: Mariusz Felisiak <felisiak.mariusz@gmail.com>
Diffstat (limited to 'tests/model_formsets')
-rw-r--r-- | tests/model_formsets/tests.py | 43 |
1 files changed, 13 insertions, 30 deletions
diff --git a/tests/model_formsets/tests.py b/tests/model_formsets/tests.py index 9c06d45339..98fd501ad6 100644 --- a/tests/model_formsets/tests.py +++ b/tests/model_formsets/tests.py @@ -368,21 +368,19 @@ class ModelFormsetTest(TestCase): instance.created = date.today() instance.save() formset.save_m2m() - self.assertQuerysetEqual(instances[0].authors.all(), [ - '<Author: Charles Baudelaire>', - '<Author: John Steinbeck>', - '<Author: Paul Verlaine>', - '<Author: Walt Whitman>', - ]) + self.assertSequenceEqual( + instances[0].authors.all(), + [author1, author4, author2, author3], + ) def test_max_num(self): # Test the behavior of max_num with model formsets. It should allow # all existing related objects/inlines for a given object to be # displayed, but not allow the creation of new inlines beyond max_num. - Author.objects.create(name='Charles Baudelaire') - Author.objects.create(name='Paul Verlaine') - Author.objects.create(name='Walt Whitman') + a1 = Author.objects.create(name='Charles Baudelaire') + a2 = Author.objects.create(name='Paul Verlaine') + a3 = Author.objects.create(name='Walt Whitman') qs = Author.objects.order_by('name') @@ -403,27 +401,15 @@ class ModelFormsetTest(TestCase): AuthorFormSet = modelformset_factory(Author, fields="__all__", max_num=None) formset = AuthorFormSet(queryset=qs) - self.assertQuerysetEqual(formset.get_queryset(), [ - '<Author: Charles Baudelaire>', - '<Author: Paul Verlaine>', - '<Author: Walt Whitman>', - ]) + self.assertSequenceEqual(formset.get_queryset(), [a1, a2, a3]) AuthorFormSet = modelformset_factory(Author, fields="__all__", max_num=0) formset = AuthorFormSet(queryset=qs) - self.assertQuerysetEqual(formset.get_queryset(), [ - '<Author: Charles Baudelaire>', - '<Author: Paul Verlaine>', - '<Author: Walt Whitman>', - ]) + self.assertSequenceEqual(formset.get_queryset(), [a1, a2, a3]) AuthorFormSet = modelformset_factory(Author, fields="__all__", max_num=4) formset = AuthorFormSet(queryset=qs) - self.assertQuerysetEqual(formset.get_queryset(), [ - '<Author: Charles Baudelaire>', - '<Author: Paul Verlaine>', - '<Author: Walt Whitman>', - ]) + self.assertSequenceEqual(formset.get_queryset(), [a1, a2, a3]) def test_min_num(self): # Test the behavior of min_num with model formsets. It should be @@ -633,7 +619,7 @@ class ModelFormsetTest(TestCase): self.assertEqual(len(saved), 1) book1, = saved self.assertEqual(book1, Book.objects.get(title='Les Fleurs du Mal')) - self.assertQuerysetEqual(author.book_set.all(), ['<Book: Les Fleurs du Mal>']) + self.assertSequenceEqual(author.book_set.all(), [book1]) # Now that we've added a book to Charles Baudelaire, let's try adding # another one. This time though, an edit form will be available for @@ -689,10 +675,7 @@ class ModelFormsetTest(TestCase): # As you can see, 'Les Paradis Artificiels' is now a book belonging to # Charles Baudelaire. - self.assertQuerysetEqual(author.book_set.order_by('title'), [ - '<Book: Les Fleurs du Mal>', - '<Book: Les Paradis Artificiels>', - ]) + self.assertSequenceEqual(author.book_set.order_by('title'), [book1, book2]) def test_inline_formsets_save_as_new(self): # The save_as_new parameter lets you re-associate the data to a new @@ -1722,7 +1705,7 @@ class ModelFormsetTest(TestCase): formset.save() # The name of other_author shouldn't be changed and new models aren't # created. - self.assertQuerysetEqual(Author.objects.all(), ['<Author: Charles>', '<Author: Walt>']) + self.assertSequenceEqual(Author.objects.all(), [author, other_author]) def test_validation_without_id(self): AuthorFormSet = modelformset_factory(Author, fields='__all__') |