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/m2m_through_regress | |
| parent | 13b6fff11703a694e155b84d41d02822bbc0aaa0 (diff) | |
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/m2m_through_regress')
| -rw-r--r-- | tests/m2m_through_regress/tests.py | 94 |
1 files changed, 23 insertions, 71 deletions
diff --git a/tests/m2m_through_regress/tests.py b/tests/m2m_through_regress/tests.py index b0e12e2745..93d2260054 100644 --- a/tests/m2m_through_regress/tests.py +++ b/tests/m2m_through_regress/tests.py @@ -32,53 +32,31 @@ class M2MThroughTestCase(TestCase): cls.jane_rock = UserMembership.objects.create(user=cls.jane, group=cls.rock) def test_retrieve_reverse_m2m_items(self): - self.assertQuerysetEqual( - self.bob.group_set.all(), [ - "<Group: Rock>", - "<Group: Roll>", - ], - ordered=False - ) + self.assertCountEqual(self.bob.group_set.all(), [self.rock, self.roll]) def test_retrieve_forward_m2m_items(self): - self.assertQuerysetEqual( - self.roll.members.all(), [ - "<Person: Bob>", - ] - ) + self.assertSequenceEqual(self.roll.members.all(), [self.bob]) def test_retrieve_reverse_m2m_items_via_custom_id_intermediary(self): - self.assertQuerysetEqual( - self.frank.group_set.all(), [ - "<Group: Rock>", - "<Group: Roll>", - ], - ordered=False - ) + self.assertCountEqual(self.frank.group_set.all(), [self.rock, self.roll]) def test_retrieve_forward_m2m_items_via_custom_id_intermediary(self): - self.assertQuerysetEqual( - self.roll.user_members.all(), [ - "<User: frank>", - ] - ) + self.assertSequenceEqual(self.roll.user_members.all(), [self.frank]) def test_join_trimming_forwards(self): """ Too many copies of the intermediate table aren't involved when doing a join (#8046, #8254). """ - self.assertQuerysetEqual( - self.rock.members.filter(membership__price=50), [ - "<Person: Jim>", - ] + self.assertSequenceEqual( + self.rock.members.filter(membership__price=50), + [self.jim], ) def test_join_trimming_reverse(self): - self.assertQuerysetEqual( - self.bob.group_set.filter(membership__price=50), [ - "<Group: Roll>", - ] + self.assertSequenceEqual( + self.bob.group_set.filter(membership__price=50), + [self.roll], ) @@ -139,26 +117,18 @@ class ToFieldThroughTests(TestCase): cls.unused_car2 = Car.objects.create(make="Wartburg") def test_to_field(self): - self.assertQuerysetEqual( - self.car.drivers.all(), - ["<Driver: Ryan Briscoe>"] - ) + self.assertSequenceEqual(self.car.drivers.all(), [self.driver]) def test_to_field_reverse(self): - self.assertQuerysetEqual( - self.driver.car_set.all(), - ["<Car: Toyota>"] - ) + self.assertSequenceEqual(self.driver.car_set.all(), [self.car]) def test_to_field_clear_reverse(self): self.driver.car_set.clear() - self.assertQuerysetEqual( - self.driver.car_set.all(), []) + self.assertSequenceEqual(self.driver.car_set.all(), []) def test_to_field_clear(self): self.car.drivers.clear() - self.assertQuerysetEqual( - self.car.drivers.all(), []) + self.assertSequenceEqual(self.car.drivers.all(), []) # Low level tests for _add_items and _remove_items. We test these methods # because .add/.remove aren't available for m2m fields with through, but @@ -166,15 +136,12 @@ class ToFieldThroughTests(TestCase): # sure these methods are ready if the ability to use .add or .remove with # to_field relations is added some day. def test_add(self): - self.assertQuerysetEqual( - self.car.drivers.all(), - ["<Driver: Ryan Briscoe>"] - ) + self.assertSequenceEqual(self.car.drivers.all(), [self.driver]) # Yikes - barney is going to drive... self.car.drivers._add_items('car', 'driver', self.unused_driver) - self.assertQuerysetEqual( + self.assertSequenceEqual( self.car.drivers.all(), - ["<Driver: Barney Gumble>", "<Driver: Ryan Briscoe>"] + [self.unused_driver, self.driver], ) def test_m2m_relations_unusable_on_null_to_field(self): @@ -202,16 +169,9 @@ class ToFieldThroughTests(TestCase): def test_add_reverse(self): car2 = Car.objects.create(make="Honda") - self.assertQuerysetEqual( - self.driver.car_set.all(), - ["<Car: Toyota>"] - ) + self.assertCountEqual(self.driver.car_set.all(), [self.car]) self.driver.car_set._add_items('driver', 'car', car2) - self.assertQuerysetEqual( - self.driver.car_set.all(), - ["<Car: Toyota>", "<Car: Honda>"], - ordered=False - ) + self.assertCountEqual(self.driver.car_set.all(), [self.car, car2]) def test_add_null_reverse(self): nullcar = Car.objects.create(make=None) @@ -229,22 +189,14 @@ class ToFieldThroughTests(TestCase): nulldriver.car_set._add_items('driver', 'car', self.car) def test_remove(self): - self.assertQuerysetEqual( - self.car.drivers.all(), - ["<Driver: Ryan Briscoe>"] - ) + self.assertSequenceEqual(self.car.drivers.all(), [self.driver]) self.car.drivers._remove_items('car', 'driver', self.driver) - self.assertQuerysetEqual( - self.car.drivers.all(), []) + self.assertSequenceEqual(self.car.drivers.all(), []) def test_remove_reverse(self): - self.assertQuerysetEqual( - self.driver.car_set.all(), - ["<Car: Toyota>"] - ) + self.assertSequenceEqual(self.driver.car_set.all(), [self.car]) self.driver.car_set._remove_items('driver', 'car', self.car) - self.assertQuerysetEqual( - self.driver.car_set.all(), []) + self.assertSequenceEqual(self.driver.car_set.all(), []) class ThroughLoadDataTestCase(TestCase): |
