@@ -117,10 +117,6 @@ def django_test_expected_failures(self):
117
117
'serializers.test_data.SerializerDataTests.test_yaml_serializer' ,
118
118
# No sequence for AutoField in CockroachDB.
119
119
'introspection.tests.IntrospectionTests.test_sequence_list' ,
120
- # Unsupported query: unsupported binary operator: <int> / <int>:
121
- # https://github.com/cockroachdb/django-cockroachdb/issues/21
122
- 'expressions.tests.ExpressionOperatorTests.test_lefthand_division' ,
123
- 'expressions.tests.ExpressionOperatorTests.test_right_hand_division' ,
124
120
# CockroachDB doesn't support disabling constraints:
125
121
# https://github.com/cockroachdb/cockroach/issues/19444
126
122
'auth_tests.test_views.UUIDUserTests.test_admin_password_change' ,
@@ -196,6 +192,63 @@ def django_test_expected_failures(self):
196
192
# https://github.com/cockroachdb/cockroach/issues/73587#issuecomment-988408190
197
193
'aggregation.tests.AggregateTestCase.test_aggregation_default_using_decimal_from_database' ,
198
194
})
195
+ if self .uses_server_side_binding :
196
+ expected_failures .update ({
197
+ # could not determine data type of placeholder:
198
+ # https://github.com/cockroachdb/cockroach/issues/91396
199
+ 'backends.tests.EscapingChecks.test_parameter_escaping' ,
200
+ 'backends.tests.EscapingChecksDebug.test_parameter_escaping' ,
201
+ 'expressions.tests.BasicExpressionsTests.test_annotate_values_filter' ,
202
+ 'expressions_case.tests.CaseDocumentationExamples.test_lookup_example' ,
203
+ 'expressions_case.tests.CaseDocumentationExamples.test_simple_example' ,
204
+ 'expressions_case.tests.CaseExpressionTests.test_aggregation_empty_cases' ,
205
+ 'expressions_case.tests.CaseExpressionTests.test_annotate' ,
206
+ 'expressions_case.tests.CaseExpressionTests.test_annotate_exclude' ,
207
+ 'expressions_case.tests.CaseExpressionTests.test_annotate_values_not_in_order_by' ,
208
+ 'expressions_case.tests.CaseExpressionTests.test_annotate_with_aggregation_in_condition' ,
209
+ 'expressions_case.tests.CaseExpressionTests.test_annotate_with_aggregation_in_predicate' ,
210
+ 'expressions_case.tests.CaseExpressionTests.test_annotate_with_annotation_in_condition' ,
211
+ 'expressions_case.tests.CaseExpressionTests.test_annotate_with_annotation_in_predicate' ,
212
+ 'expressions_case.tests.CaseExpressionTests.test_annotate_with_empty_when' ,
213
+ 'expressions_case.tests.CaseExpressionTests.test_annotate_with_expression_as_condition' ,
214
+ 'expressions_case.tests.CaseExpressionTests.test_annotate_with_full_when' ,
215
+ 'expressions_case.tests.CaseExpressionTests.test_annotate_with_join_in_condition' ,
216
+ 'expressions_case.tests.CaseExpressionTests.test_annotate_with_join_in_predicate' ,
217
+ 'expressions_case.tests.CaseExpressionTests.test_case_reuse' ,
218
+ 'expressions_case.tests.CaseExpressionTests.test_combined_q_object' ,
219
+ 'expressions_case.tests.CaseExpressionTests.test_lookup_different_fields' ,
220
+ 'expressions_case.tests.CaseExpressionTests.test_lookup_in_condition' ,
221
+ 'expressions_case.tests.CaseExpressionTests.test_update_generic_ip_address' ,
222
+ 'lookup.tests.LookupQueryingTests.test_conditional_expression' ,
223
+ 'ordering.tests.OrderingTests.test_order_by_constant_value' ,
224
+ 'queries.test_bulk_update.BulkUpdateNoteTests.test_batch_size' ,
225
+ 'queries.test_bulk_update.BulkUpdateNoteTests.test_multiple_fields' ,
226
+ 'queries.test_bulk_update.BulkUpdateNoteTests.test_simple' ,
227
+ 'queries.test_bulk_update.BulkUpdateTests.test_custom_pk' ,
228
+ 'queries.test_bulk_update.BulkUpdateTests.test_database_routing' ,
229
+ 'queries.test_bulk_update.BulkUpdateTests.test_database_routing_batch_atomicity' ,
230
+ 'queries.test_bulk_update.BulkUpdateTests.test_falsey_pk_value' ,
231
+ 'queries.test_bulk_update.BulkUpdateTests.test_inherited_fields' ,
232
+ 'queries.test_bulk_update.BulkUpdateTests.test_large_batch' ,
233
+ 'queries.test_bulk_update.BulkUpdateTests.test_updated_rows_when_passing_duplicates' ,
234
+ 'queries.test_q.QCheckTests.test_expression' ,
235
+ # unsupported binary operator: <interval> / <decimal>
236
+ 'expressions.tests.FTimeDeltaTests.test_durationfield_multiply_divide' ,
237
+ # InvalidParameterValue: unsupported binary operator: <int4> / <float>
238
+ 'queries.tests.Ticket23605Tests.test_ticket_23605' ,
239
+ # InvalidParameterValue: unsupported binary operator: <int2> + <float>
240
+ 'annotations.tests.NonAggregateAnnotationTestCase.test_combined_annotation_commutative' ,
241
+ # incompatible COALESCE expressions: unsupported binary
242
+ # operator: <decimal> / <float> (desired <decimal>)
243
+ 'aggregation.tests.AggregateTestCase.test_aggregation_default_passed_another_aggregate' ,
244
+ })
245
+ else :
246
+ expected_failures .update ({
247
+ # Unsupported query: unsupported binary operator: <int> / <int>:
248
+ # https://github.com/cockroachdb/django-cockroachdb/issues/21
249
+ 'expressions.tests.ExpressionOperatorTests.test_lefthand_division' ,
250
+ 'expressions.tests.ExpressionOperatorTests.test_right_hand_division' ,
251
+ })
199
252
return expected_failures
200
253
201
254
@cached_property
@@ -224,7 +277,7 @@ def django_test_skips(self):
224
277
# output in the logs:
225
278
# Exception in thread Thread-1:
226
279
# ...
227
- # psycopg2 .errors.SerializationFailure: restart transaction:
280
+ # psycopg .errors.SerializationFailure: restart transaction:
228
281
# TransactionRetryWithProtoRefreshError: WriteTooOldError: write
229
282
# at timestamp 1598314405.858850941,0 too old; wrote at
230
283
# 1598314405.883337663,1
0 commit comments