@@ -19,19 +19,8 @@ class DatabaseFeatures(BaseDatabaseFeatures):
19
19
# Database defaults not supported: bson.errors.InvalidDocument:
20
20
# cannot encode object: <django.db.models.expressions.DatabaseDefault
21
21
"basic.tests.ModelInstanceCreationTests.test_save_primary_with_db_default" ,
22
- # Date lookups aren't implemented: https://github.com/mongodb-labs/django-mongodb/issues/9
23
- # (e.g. ExtractWeekDay is not supported.)
24
- "basic.tests.ModelLookupTest.test_does_not_exist" ,
25
- "basic.tests.ModelLookupTest.test_equal_lookup" ,
26
- "basic.tests.ModelLookupTest.test_rich_lookup" ,
22
+ # Query for chained lookups not generated correctly.
27
23
"lookup.tests.LookupTests.test_chain_date_time_lookups" ,
28
- "lookup.test_timefield.TimeFieldLookupTests.test_hour_lookups" ,
29
- "lookup.test_timefield.TimeFieldLookupTests.test_minute_lookups" ,
30
- "lookup.test_timefield.TimeFieldLookupTests.test_second_lookups" ,
31
- "timezones.tests.LegacyDatabaseTests.test_query_datetime_lookups" ,
32
- "timezones.tests.NewDatabaseTests.test_query_convert_timezones" ,
33
- "timezones.tests.NewDatabaseTests.test_query_datetime_lookups" ,
34
- "timezones.tests.NewDatabaseTests.test_query_datetime_lookups_in_other_timezone" ,
35
24
# 'NulledTransform' object has no attribute 'as_mql'.
36
25
"lookup.tests.LookupTests.test_exact_none_transform" ,
37
26
# "Save with update_fields did not affect any rows."
@@ -62,6 +51,10 @@ class DatabaseFeatures(BaseDatabaseFeatures):
62
51
"db_functions.math.test_log.LogTests.test_decimal" ,
63
52
# MongoDB gives ROUND(365, -1)=360 instead of 370 like other databases.
64
53
"db_functions.math.test_round.RoundTests.test_integer_with_negative_precision" ,
54
+ # Truncating in another timezone doesn't work becauase MongoDB converts
55
+ # the result back to UTC.
56
+ "db_functions.datetime.test_extract_trunc.DateFunctionWithTimeZoneTests.test_trunc_func_with_timezone" ,
57
+ "db_functions.datetime.test_extract_trunc.DateFunctionWithTimeZoneTests.test_trunc_timezone_applied_before_truncation" ,
65
58
}
66
59
67
60
django_test_skips = {
@@ -171,6 +164,8 @@ class DatabaseFeatures(BaseDatabaseFeatures):
171
164
"lookup.tests.LookupQueryingTests.test_filter_lookup_lhs" ,
172
165
# Subquery not supported.
173
166
"annotations.tests.NonAggregateAnnotationTestCase.test_empty_queryset_annotation" ,
167
+ "db_functions.datetime.test_extract_trunc.DateFunctionTests.test_extract_outerref" ,
168
+ "db_functions.datetime.test_extract_trunc.DateFunctionTests.test_trunc_subquery_with_parameters" ,
174
169
"lookup.tests.LookupQueryingTests.test_filter_subquery_lhs" ,
175
170
# ExpressionWrapper not supported.
176
171
"annotations.tests.NonAggregateAnnotationTestCase.test_combined_expression_annotation_with_aggregation" ,
@@ -206,6 +201,11 @@ class DatabaseFeatures(BaseDatabaseFeatures):
206
201
"annotations.tests.AliasTests.test_order_by_alias" ,
207
202
"annotations.tests.NonAggregateAnnotationTestCase.test_order_by_aggregate" ,
208
203
"annotations.tests.NonAggregateAnnotationTestCase.test_order_by_annotation" ,
204
+ # annotate().filter().count() gives incorrect results.
205
+ "db_functions.datetime.test_extract_trunc.DateFunctionTests.test_extract_year_exact_lookup" ,
206
+ # Year lookup + lt/gt crashes: 'dict' object has no attribute 'startswith'
207
+ "db_functions.datetime.test_extract_trunc.DateFunctionTests.test_extract_year_greaterthan_lookup" ,
208
+ "db_functions.datetime.test_extract_trunc.DateFunctionTests.test_extract_year_lessthan_lookup" ,
209
209
},
210
210
"Count doesn't work in QuerySet.annotate()" : {
211
211
"annotations.tests.AliasTests.test_alias_annotate_with_aggregation" ,
@@ -312,9 +312,25 @@ class DatabaseFeatures(BaseDatabaseFeatures):
312
312
"db_functions.math.test_sqrt.SqrtTests.test_transform" ,
313
313
"db_functions.math.test_tan.TanTests.test_transform" ,
314
314
},
315
- "MongoDB does not support Sign." : {
315
+ "MongoDB does not support this database function." : {
316
+ "db_functions.datetime.test_now.NowTests" ,
316
317
"db_functions.math.test_sign.SignTests" ,
317
318
},
319
+ "ExtractQuarter database function not supported." : {
320
+ "db_functions.datetime.test_extract_trunc.DateFunctionTests.test_extract_quarter_func" ,
321
+ "db_functions.datetime.test_extract_trunc.DateFunctionTests.test_extract_quarter_func_boundaries" ,
322
+ },
323
+ "TruncDate database function not supported." : {
324
+ "db_functions.datetime.test_extract_trunc.DateFunctionTests.test_trunc_date_func" ,
325
+ "db_functions.datetime.test_extract_trunc.DateFunctionTests.test_trunc_date_none" ,
326
+ "db_functions.datetime.test_extract_trunc.DateFunctionTests.test_trunc_lookup_name_sql_injection" ,
327
+ "timezones.tests.NewDatabaseTests.test_query_convert_timezones" ,
328
+ },
329
+ "TruncTime database function not supported." : {
330
+ "db_functions.datetime.test_extract_trunc.DateFunctionTests.test_trunc_time_comparison" ,
331
+ "db_functions.datetime.test_extract_trunc.DateFunctionTests.test_trunc_time_func" ,
332
+ "db_functions.datetime.test_extract_trunc.DateFunctionTests.test_trunc_time_none" ,
333
+ },
318
334
"MongoDB can't annotate ($project) a function like PI()." : {
319
335
"db_functions.math.test_pi.PiTests.test" ,
320
336
},
0 commit comments