|
@@ -3662,7 +3662,7 @@ class OperationTests(OperationTestBase):
|
|
|
),
|
|
|
# Literal "%" should be escaped in a way that is not a considered a
|
|
|
# wildcard.
|
|
|
- (models.Q(rebate__endswith="%"), {"rebate": "10%"}, {"rebate": "10$"}),
|
|
|
+ (models.Q(rebate__endswith="%"), {"rebate": "10%"}, {"rebate": "10%$"}),
|
|
|
# Right-hand-side baked "%" literals should not be used for
|
|
|
# parameters interpolation.
|
|
|
(
|
|
@@ -3670,6 +3670,12 @@ class OperationTests(OperationTestBase):
|
|
|
{"name": "Albert"},
|
|
|
{"name": "Albert", "surname": "Alberto"},
|
|
|
),
|
|
|
+ # Exact matches against "%" literals should also be supported.
|
|
|
+ (
|
|
|
+ models.Q(name="%"),
|
|
|
+ {"name": "%"},
|
|
|
+ {"name": "Albert"},
|
|
|
+ ),
|
|
|
]
|
|
|
for check, valid, invalid in checks:
|
|
|
with self.subTest(check=check, valid=valid, invalid=invalid):
|