summaryrefslogtreecommitdiff
path: root/tests/model_fields
diff options
context:
space:
mode:
authorMariusz Felisiak <felisiak.mariusz@gmail.com>2022-04-14 12:12:13 +0200
committerGitHub <noreply@github.com>2022-04-14 12:12:13 +0200
commit1760ad4e8cdbf34a0f38deae300460a0b9c38eac (patch)
tree1815c8c1f40069c434fb38e2487036afd64bece5 /tests/model_fields
parent08f30d1b6ac9b7bc05857f88a70277d5ceb27ba1 (diff)
downloaddjango-1760ad4e8cdbf34a0f38deae300460a0b9c38eac.tar.gz
Relaxed some query ordering assertions in various tests.
It accounts for differences seen on MySQL with MyISAM storage engine.
Diffstat (limited to 'tests/model_fields')
-rw-r--r--tests/model_fields/test_durationfield.py2
-rw-r--r--tests/model_fields/test_jsonfield.py42
-rw-r--r--tests/model_fields/tests.py2
3 files changed, 23 insertions, 23 deletions
diff --git a/tests/model_fields/test_durationfield.py b/tests/model_fields/test_durationfield.py
index 2fd9984613..c93b81ecf0 100644
--- a/tests/model_fields/test_durationfield.py
+++ b/tests/model_fields/test_durationfield.py
@@ -44,7 +44,7 @@ class TestQuerying(TestCase):
)
def test_gt(self):
- self.assertSequenceEqual(
+ self.assertCountEqual(
DurationModel.objects.filter(field__gt=datetime.timedelta(days=0)),
[self.objs[0], self.objs[1]],
)
diff --git a/tests/model_fields/test_jsonfield.py b/tests/model_fields/test_jsonfield.py
index 60cc694843..25dfef7a24 100644
--- a/tests/model_fields/test_jsonfield.py
+++ b/tests/model_fields/test_jsonfield.py
@@ -326,7 +326,7 @@ class TestQuerying(TestCase):
)
def test_icontains(self):
- self.assertSequenceEqual(
+ self.assertCountEqual(
NullableJSONModel.objects.filter(value__icontains="BaX"),
self.objs[6:8],
)
@@ -495,7 +495,7 @@ class TestQuerying(TestCase):
)
def test_expression_wrapper_key_transform(self):
- self.assertSequenceEqual(
+ self.assertCountEqual(
NullableJSONModel.objects.annotate(
expr=ExpressionWrapper(
KeyTransform("c", "value"),
@@ -506,7 +506,7 @@ class TestQuerying(TestCase):
)
def test_has_key(self):
- self.assertSequenceEqual(
+ self.assertCountEqual(
NullableJSONModel.objects.filter(value__has_key="a"),
[self.objs[3], self.objs[4]],
)
@@ -570,7 +570,7 @@ class TestQuerying(TestCase):
)
def test_has_any_keys(self):
- self.assertSequenceEqual(
+ self.assertCountEqual(
NullableJSONModel.objects.filter(value__has_any_keys=["c", "l"]),
[self.objs[3], self.objs[4], self.objs[6]],
)
@@ -622,7 +622,7 @@ class TestQuerying(TestCase):
for value, expected in tests:
with self.subTest(value=value):
qs = NullableJSONModel.objects.filter(value__contains=value)
- self.assertSequenceEqual(qs, expected)
+ self.assertCountEqual(qs, expected)
@skipIfDBFeature("supports_json_field_contains")
def test_contains_unsupported(self):
@@ -647,7 +647,7 @@ class TestQuerying(TestCase):
qs = NullableJSONModel.objects.filter(
value__contained_by={"a": "b", "c": 14, "h": True}
)
- self.assertSequenceEqual(qs, self.objs[2:4])
+ self.assertCountEqual(qs, self.objs[2:4])
@skipIfDBFeature("supports_json_field_contains")
def test_contained_by_unsupported(self):
@@ -656,7 +656,7 @@ class TestQuerying(TestCase):
NullableJSONModel.objects.filter(value__contained_by={"a": "b"}).get()
def test_deep_values(self):
- qs = NullableJSONModel.objects.values_list("value__k__l")
+ qs = NullableJSONModel.objects.values_list("value__k__l").order_by("pk")
expected_objs = [(None,)] * len(self.objs)
expected_objs[4] = ("m",)
self.assertSequenceEqual(qs, expected_objs)
@@ -670,15 +670,15 @@ class TestQuerying(TestCase):
def test_isnull_key(self):
# key__isnull=False works the same as has_key='key'.
- self.assertSequenceEqual(
+ self.assertCountEqual(
NullableJSONModel.objects.filter(value__a__isnull=True),
self.objs[:3] + self.objs[5:],
)
- self.assertSequenceEqual(
+ self.assertCountEqual(
NullableJSONModel.objects.filter(value__j__isnull=True),
self.objs[:4] + self.objs[5:],
)
- self.assertSequenceEqual(
+ self.assertCountEqual(
NullableJSONModel.objects.filter(value__a__isnull=False),
[self.objs[3], self.objs[4]],
)
@@ -689,7 +689,7 @@ class TestQuerying(TestCase):
def test_isnull_key_or_none(self):
obj = NullableJSONModel.objects.create(value={"a": None})
- self.assertSequenceEqual(
+ self.assertCountEqual(
NullableJSONModel.objects.filter(
Q(value__a__isnull=True) | Q(value__a=None)
),
@@ -723,7 +723,7 @@ class TestQuerying(TestCase):
)
def test_shallow_obj_lookup(self):
- self.assertSequenceEqual(
+ self.assertCountEqual(
NullableJSONModel.objects.filter(value__a="b"),
[self.objs[3], self.objs[4]],
)
@@ -734,7 +734,7 @@ class TestQuerying(TestCase):
NullableJSONModel.objects.filter(pk=OuterRef("pk")).values("value")
),
).filter(field__a="b")
- self.assertSequenceEqual(qs, [self.objs[3], self.objs[4]])
+ self.assertCountEqual(qs, [self.objs[3], self.objs[4]])
def test_deep_lookup_objs(self):
self.assertSequenceEqual(
@@ -761,11 +761,11 @@ class TestQuerying(TestCase):
)
def test_deep_lookup_transform(self):
- self.assertSequenceEqual(
+ self.assertCountEqual(
NullableJSONModel.objects.filter(value__c__gt=2),
[self.objs[3], self.objs[4]],
)
- self.assertSequenceEqual(
+ self.assertCountEqual(
NullableJSONModel.objects.filter(value__c__gt=2.33),
[self.objs[3], self.objs[4]],
)
@@ -777,11 +777,11 @@ class TestQuerying(TestCase):
(Q(value__foo="bax"), [self.objs[0], self.objs[7]]),
]
for condition, expected in tests:
- self.assertSequenceEqual(
+ self.assertCountEqual(
NullableJSONModel.objects.exclude(condition),
expected,
)
- self.assertSequenceEqual(
+ self.assertCountEqual(
NullableJSONModel.objects.filter(~condition),
expected,
)
@@ -791,7 +791,7 @@ class TestQuerying(TestCase):
condition = Q(value__foo="bax")
objs_with_value = [self.objs[6]]
objs_with_different_value = [self.objs[0], self.objs[7]]
- self.assertSequenceEqual(
+ self.assertCountEqual(
NullableJSONModel.objects.exclude(condition),
objs_with_different_value,
)
@@ -808,7 +808,7 @@ class TestQuerying(TestCase):
objs_with_value + objs_with_different_value,
)
# Add the __isnull lookup to get an exhaustive set.
- self.assertSequenceEqual(
+ self.assertCountEqual(
NullableJSONModel.objects.exclude(condition & Q(value__foo__isnull=False)),
self.objs[0:6] + self.objs[7:],
)
@@ -818,7 +818,7 @@ class TestQuerying(TestCase):
)
def test_usage_in_subquery(self):
- self.assertSequenceEqual(
+ self.assertCountEqual(
NullableJSONModel.objects.filter(
id__in=NullableJSONModel.objects.filter(value__c=14),
),
@@ -876,7 +876,7 @@ class TestQuerying(TestCase):
]
for lookup, value, expected in tests:
with self.subTest(lookup=lookup, value=value):
- self.assertSequenceEqual(
+ self.assertCountEqual(
NullableJSONModel.objects.filter(**{lookup: value}),
expected,
)
diff --git a/tests/model_fields/tests.py b/tests/model_fields/tests.py
index eb21d436d8..6d4a91afa2 100644
--- a/tests/model_fields/tests.py
+++ b/tests/model_fields/tests.py
@@ -347,7 +347,7 @@ class GetChoicesLimitChoicesToTests(TestCase):
cls.field = Bar._meta.get_field("a")
def assertChoicesEqual(self, choices, objs):
- self.assertEqual(choices, [(obj.pk, str(obj)) for obj in objs])
+ self.assertCountEqual(choices, [(obj.pk, str(obj)) for obj in objs])
def test_get_choices(self):
self.assertChoicesEqual(