/
features.py
1879 lines (1873 loc) · 159 KB
/
features.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
# Copyright 2020 Google LLC
#
# Use of this source code is governed by a BSD-style
# license that can be found in the LICENSE file or at
# https://developers.google.com/open-source/licenses/bsd
import os
from django.db.backends.base.features import BaseDatabaseFeatures
from django.db.utils import InterfaceError
class DatabaseFeatures(BaseDatabaseFeatures):
can_introspect_big_integer_field = False
can_introspect_duration_field = False
can_introspect_foreign_keys = False
# TimeField is introspected as DateTimeField because they both use
# TIMESTAMP.
can_introspect_time_field = False
closed_cursor_error_class = InterfaceError
# Spanner uses REGEXP_CONTAINS which is case-sensitive.
has_case_insensitive_like = False
# https://cloud.google.com/spanner/quotas#query_limits
max_query_params = 900
supports_foreign_keys = False
supports_ignore_conflicts = False
supports_partial_indexes = False
supports_regex_backreferencing = False
supports_select_for_update_with_limit = False
supports_sequence_reset = False
supports_timezones = False
supports_transactions = False
supports_column_check_constraints = False
supports_table_check_constraints = False
uses_savepoints = False
# Django tests that aren't supported by Spanner.
skip_tests = (
# No foreign key constraints in Spanner.
"backends.tests.FkConstraintsTests.test_check_constraints",
"fixtures_regress.tests.TestFixtures.test_loaddata_raises_error_when_fixture_has_invalid_foreign_key",
# No Django transaction management in Spanner.
"basic.tests.SelectOnSaveTests.test_select_on_save_lying_update",
# django_spanner monkey patches AutoField to have a default value.
"basic.tests.ModelTest.test_hash",
"custom_managers.tests.CustomManagerTests.test_slow_removal_through_specified_fk_related_manager",
"custom_managers.tests.CustomManagerTests.test_slow_removal_through_default_fk_related_manager",
"generic_relations.test_forms.GenericInlineFormsetTests.test_options",
"generic_relations.tests.GenericRelationsTests.test_add_bulk_false",
"generic_relations.tests.GenericRelationsTests.test_generic_update_or_create_when_updated",
"generic_relations.tests.GenericRelationsTests.test_update_or_create_defaults",
"generic_relations.tests.GenericRelationsTests.test_unsaved_instance_on_generic_foreign_key",
"generic_relations_regress.tests.GenericRelationTests.test_target_model_is_unsaved",
"m2m_through_regress.tests.ToFieldThroughTests.test_m2m_relations_unusable_on_null_pk_obj",
"many_to_many.tests.ManyToManyTests.test_add",
"many_to_one.tests.ManyToOneTests.test_fk_assignment_and_related_object_cache",
"many_to_one.tests.ManyToOneTests.test_relation_unsaved",
"model_fields.test_durationfield.TestSerialization.test_dumping",
"model_fields.test_uuid.TestSerialization.test_dumping",
"model_fields.test_booleanfield.ValidationTest.test_nullbooleanfield_blank",
"model_inheritance.tests.ModelInheritanceTests.test_create_child_no_update",
"model_regress.tests.ModelTests.test_get_next_prev_by_field_unsaved",
"one_to_one.tests.OneToOneTests.test_get_reverse_on_unsaved_object",
"one_to_one.tests.OneToOneTests.test_o2o_primary_key_delete",
"one_to_one.tests.OneToOneTests.test_set_reverse_on_unsaved_object",
"one_to_one.tests.OneToOneTests.test_unsaved_object",
"queries.test_bulk_update.BulkUpdateNoteTests.test_unsaved_models",
"expressions_case.tests.CaseExpressionTests.test_update_decimal",
"serializers.test_json.JsonSerializerTestCase.test_pkless_serialized_strings",
"serializers.test_json.JsonSerializerTestCase.test_serialize_with_null_pk",
"serializers.test_xml.XmlSerializerTestCase.test_pkless_serialized_strings",
"serializers.test_xml.XmlSerializerTestCase.test_serialize_with_null_pk",
"serializers.test_yaml.YamlSerializerTestCase.test_pkless_serialized_strings",
"serializers.test_yaml.YamlSerializerTestCase.test_serialize_with_null_pk",
"serializers.test_data.SerializerDataTests.test_yaml_serializer",
"serializers.test_data.SerializerDataTests.test_xml_serializer",
"serializers.test_data.SerializerDataTests.test_python_serializer",
"serializers.test_data.SerializerDataTests.test_json_serializer",
"timezones.tests.LegacyDatabaseTests.test_cursor_execute_accepts_naive_datetime",
"timezones.tests.NewDatabaseTests.test_cursor_execute_accepts_naive_datetime",
"timezones.tests.AdminTests.test_change_editable",
"timezones.tests.AdminTests.test_change_editable_in_other_timezone",
"timezones.tests.AdminTests.test_change_readonly",
"timezones.tests.AdminTests.test_change_readonly_in_other_timezone",
"timezones.tests.AdminTests.test_changelist",
"timezones.tests.AdminTests.test_changelist_in_other_timezone",
"validation.test_custom_messages.CustomMessagesTests.test_custom_null_message",
"validation.test_custom_messages.CustomMessagesTests.test_custom_simple_validator_message",
"validation.test_unique.PerformUniqueChecksTest.test_primary_key_unique_check_not_performed_when_adding_and_pk_not_specified", # noqa
"validation.test_unique.PerformUniqueChecksTest.test_primary_key_unique_check_not_performed_when_not_adding",
"validation.test_validators.TestModelsWithValidators.test_custom_validator_passes_for_correct_value",
"validation.test_validators.TestModelsWithValidators.test_custom_validator_raises_error_for_incorrect_value",
"validation.test_validators.TestModelsWithValidators.test_field_validators_can_be_any_iterable",
# Tests that assume a serial pk.
"admin_filters.tests.ListFiltersTests.test_booleanfieldlistfilter_nullbooleanfield",
"admin_filters.tests.ListFiltersTests.test_booleanfieldlistfilter_tuple",
"admin_filters.tests.ListFiltersTests.test_booleanfieldlistfilter",
"admin_filters.tests.ListFiltersTests.test_datefieldlistfilter_with_time_zone_support",
"admin_filters.tests.ListFiltersTests.test_datefieldlistfilter",
"admin_filters.tests.ListFiltersTests.test_fieldlistfilter_underscorelookup_tuple",
"admin_filters.tests.ListFiltersTests.test_fk_with_to_field",
"admin_filters.tests.ListFiltersTests.test_listfilter_genericrelation",
"admin_filters.tests.ListFiltersTests.test_lookup_with_non_string_value_underscored",
"admin_filters.tests.ListFiltersTests.test_lookup_with_non_string_value",
"admin_filters.tests.ListFiltersTests.test_relatedfieldlistfilter_manytomany",
"admin_filters.tests.ListFiltersTests.test_simplelistfilter",
"admin_inlines.tests.TestInline.test_inline_hidden_field_no_column",
"proxy_models.tests.ProxyModelAdminTests.test_delete_str_in_model_admin",
"admin_utils.test_logentry.LogEntryTests.test_logentry_change_message",
"admin_utils.test_logentry.LogEntryTests.test_logentry_change_message_localized_datetime_input",
"admin_utils.test_logentry.LogEntryTests.test_proxy_model_content_type_is_used_for_log_entries",
"admin_utils.test_logentry.LogEntryTests.test_action_flag_choices",
"admin_utils.test_logentry.LogEntryTests.test_log_action",
"admin_utils.test_logentry.LogEntryTests.test_logentry_change_message_formsets",
"admin_utils.test_logentry.LogEntryTests.test_logentry_change_message_not_json",
"admin_utils.test_logentry.LogEntryTests.test_logentry_get_admin_url",
"admin_utils.test_logentry.LogEntryTests.test_logentry_get_edited_object",
"admin_utils.test_logentry.LogEntryTests.test_logentry_repr",
"admin_utils.test_logentry.LogEntryTests.test_logentry_save",
"admin_utils.test_logentry.LogEntryTests.test_logentry_unicode",
"admin_utils.test_logentry.LogEntryTests.test_recentactions_without_content_type",
"admin_views.tests.AdminViewPermissionsTest.test_history_view",
"aggregation.test_filter_argument.FilteredAggregateTests.test_plain_annotate",
"aggregation.tests.AggregateTestCase.test_annotate_basic",
"aggregation.tests.AggregateTestCase.test_annotation",
"aggregation.tests.AggregateTestCase.test_filtering",
"aggregation_regress.tests.AggregationTests.test_more_more",
"aggregation_regress.tests.AggregationTests.test_more_more_more",
"aggregation_regress.tests.AggregationTests.test_ticket_11293",
"defer_regress.tests.DeferRegressionTest.test_ticket_12163",
"defer_regress.tests.DeferRegressionTest.test_ticket_23270",
"distinct_on_fields.tests.DistinctOnTests.test_basic_distinct_on",
"extra_regress.tests.ExtraRegressTests.test_regression_7314_7372",
"generic_relations_regress.tests.GenericRelationTests.test_annotate",
"get_earliest_or_latest.tests.TestFirstLast",
"known_related_objects.tests.ExistingRelatedInstancesTests.test_reverse_one_to_one_multi_prefetch_related",
"known_related_objects.tests.ExistingRelatedInstancesTests.test_reverse_one_to_one_multi_select_related",
"lookup.tests.LookupTests.test_get_next_previous_by",
"lookup.tests.LookupTests.test_values_list",
"migrations.test_operations.OperationTests.test_alter_order_with_respect_to",
"model_fields.tests.GetChoicesOrderingTests.test_get_choices_reverse_related_field",
"model_formsets.tests.ModelFormsetTest.test_custom_pk",
"model_formsets_regress.tests.FormfieldShouldDeleteFormTests.test_custom_delete",
"multiple_database.tests.RouterTestCase.test_generic_key_cross_database_protection",
"ordering.tests.OrderingTests.test_default_ordering_by_f_expression",
"ordering.tests.OrderingTests.test_order_by_fk_attname",
"ordering.tests.OrderingTests.test_order_by_override",
"ordering.tests.OrderingTests.test_order_by_pk",
"prefetch_related.test_prefetch_related_objects.PrefetchRelatedObjectsTests.test_m2m_then_m2m",
"prefetch_related.tests.CustomPrefetchTests.test_custom_qs",
"prefetch_related.tests.CustomPrefetchTests.test_nested_prefetch_related_are_not_overwritten",
"prefetch_related.tests.DirectPrefechedObjectCacheReuseTests.test_detect_is_fetched",
"prefetch_related.tests.DirectPrefechedObjectCacheReuseTests.test_detect_is_fetched_with_to_attr",
"prefetch_related.tests.ForeignKeyToFieldTest.test_m2m",
"queries.test_bulk_update.BulkUpdateNoteTests.test_multiple_fields",
"queries.test_bulk_update.BulkUpdateTests.test_inherited_fields",
"queries.tests.Queries1Tests.test_ticket9411",
"queries.tests.Queries4Tests.test_ticket15316_exclude_true",
"queries.tests.Queries5Tests.test_ticket7256",
"queries.tests.SubqueryTests.test_related_sliced_subquery",
"queries.tests.Ticket14056Tests.test_ticket_14056",
"queries.tests.RelatedLookupTypeTests.test_values_queryset_lookup",
"raw_query.tests.RawQueryTests.test_annotations",
"raw_query.tests.RawQueryTests.test_get_item",
"select_related.tests.SelectRelatedTests.test_field_traversal",
"syndication_tests.tests.SyndicationFeedTest.test_rss2_feed",
"syndication_tests.tests.SyndicationFeedTest.test_latest_post_date",
"syndication_tests.tests.SyndicationFeedTest.test_rss091_feed",
"syndication_tests.tests.SyndicationFeedTest.test_template_feed",
# datetimes retrieved from the database with the wrong hour when
# USE_TZ = True: https://github.com/googleapis/python-spanner-django/issues/193
"datetimes.tests.DateTimesTests.test_21432",
"db_functions.datetime.test_extract_trunc.DateFunctionWithTimeZoneTests.test_trunc_func_with_timezone",
"db_functions.datetime.test_extract_trunc.DateFunctionWithTimeZoneTests.test_trunc_timezone_applied_before_truncation", # noqa
# extract() with timezone not working as expected:
# https://github.com/googleapis/python-spanner-django/issues/191
"timezones.tests.NewDatabaseTests.test_query_datetimes",
# using NULL with + crashes: https://github.com/googleapis/python-spanner-django/issues/201
"annotations.tests.NonAggregateAnnotationTestCase.test_combined_annotation_commutative",
# Spanner loses DecimalField precision due to conversion to float:
# https://github.com/googleapis/python-spanner-django/pull/133#pullrequestreview-328482925
"aggregation.tests.AggregateTestCase.test_decimal_max_digits_has_no_effect",
"aggregation.tests.AggregateTestCase.test_related_aggregate",
"db_functions.comparison.test_cast.CastTests.test_cast_to_decimal_field",
"model_fields.test_decimalfield.DecimalFieldTests.test_fetch_from_db_without_float_rounding",
"model_fields.test_decimalfield.DecimalFieldTests.test_roundtrip_with_trailing_zeros",
# Spanner does not support unsigned integer field.
"model_fields.test_integerfield.PositiveIntegerFieldTests.test_negative_values",
# Spanner doesn't support the variance the standard deviation database
# functions:
"aggregation.test_filter_argument.FilteredAggregateTests.test_filtered_numerical_aggregates",
"aggregation_regress.tests.AggregationTests.test_stddev",
# SELECT list expression references <column> which is neither grouped
# nor aggregated: https://github.com/googleapis/python-spanner-django/issues/245
"aggregation_regress.tests.AggregationTests.test_annotated_conditional_aggregate",
"aggregation_regress.tests.AggregationTests.test_annotation_with_value",
"expressions.tests.BasicExpressionsTests.test_filtering_on_annotate_that_uses_q",
# "No matching signature for operator" crash when comparing TIMESTAMP
# and DATE: https://github.com/googleapis/python-spanner-django/issues/255
"expressions.tests.BasicExpressionsTests.test_outerref_mixed_case_table_name",
"expressions.tests.FTimeDeltaTests.test_mixed_comparisons1",
# duration arithmetic fails with dates: No matching signature for
# function TIMESTAMP_ADD: https://github.com/googleapis/python-spanner-django/issues/253
"expressions.tests.FTimeDeltaTests.test_date_comparison",
"expressions.tests.FTimeDeltaTests.test_date_minus_duration",
"expressions.tests.FTimeDeltaTests.test_delta_add",
"expressions.tests.FTimeDeltaTests.test_duration_with_datetime",
"expressions.tests.FTimeDeltaTests.test_mixed_comparisons2",
# This test doesn't raise NotSupportedError because Spanner doesn't
# support select for update either (besides the "with limit"
# restriction).
"select_for_update.tests.SelectForUpdateTests.test_unsupported_select_for_update_with_limit",
# integer division produces a float result, which can't be assigned to
# an integer column:
# https://github.com/googleapis/python-spanner-django/issues/331
"expressions.tests.ExpressionOperatorTests.test_lefthand_division",
"expressions.tests.ExpressionOperatorTests.test_right_hand_division",
# power operator produces a float result, which can't be assigned to
# an integer column:
# https://github.com/googleapis/python-spanner-django/issues/331
"expressions.tests.ExpressionOperatorTests.test_lefthand_power",
"expressions.tests.ExpressionOperatorTests.test_righthand_power",
# Cloud Spanner's docs: "The rows that are returned by LIMIT and OFFSET
# is unspecified unless these operators are used after ORDER BY."
"aggregation_regress.tests.AggregationTests.test_sliced_conditional_aggregate",
"queries.tests.QuerySetBitwiseOperationTests.test_or_with_both_slice",
"queries.tests.QuerySetBitwiseOperationTests.test_or_with_both_slice_and_ordering",
"queries.tests.QuerySetBitwiseOperationTests.test_or_with_lhs_slice",
"queries.tests.QuerySetBitwiseOperationTests.test_or_with_rhs_slice",
"queries.tests.SubqueryTests.test_slice_subquery_and_query",
# Cloud Spanner limit: "Number of functions exceeds the maximum
# allowed limit of 1000."
"queries.test_bulk_update.BulkUpdateTests.test_large_batch",
# Spanner doesn't support random ordering.
"ordering.tests.OrderingTests.test_random_ordering",
# casting DateField to DateTimeField adds an unexpected hour:
# https://github.com/googleapis/python-spanner-django/issues/260
"db_functions.comparison.test_cast.CastTests.test_cast_from_db_date_to_datetime",
# Tests that fail during tear down on databases that don't support
# transactions: https://github.com/googleapis/python-spanner-django/issues/271
"admin_views.test_multidb.MultiDatabaseTests.test_add_view",
"admin_views.test_multidb.MultiDatabaseTests.test_change_view",
"admin_views.test_multidb.MultiDatabaseTests.test_delete_view",
"auth_tests.test_admin_multidb.MultiDatabaseTests.test_add_view",
"auth_tests.test_remote_user_deprecation.RemoteUserCustomTest.test_configure_user_deprecation_warning",
"contenttypes_tests.test_models.ContentTypesMultidbTests.test_multidb",
# Tests that by-pass using django_spanner and generate
# invalid DDL: https://github.com/googleapis/python-spanner-django/issues/298
"cache.tests.CreateCacheTableForDBCacheTests",
"cache.tests.DBCacheTests",
"cache.tests.DBCacheWithTimeZoneTests",
"delete.tests.DeletionTests.test_queryset_delete_returns_num_rows",
"delete.tests.DeletionTests.test_model_delete_returns_num_rows",
"delete.tests.DeletionTests.test_deletion_order",
"delete.tests.FastDeleteTests.test_fast_delete_empty_no_update_can_self_select",
# Tests that require transactions.
"transaction_hooks.tests.TestConnectionOnCommit.test_does_not_execute_if_transaction_rolled_back",
"transaction_hooks.tests.TestConnectionOnCommit.test_hooks_cleared_after_rollback",
"transaction_hooks.tests.TestConnectionOnCommit.test_hooks_cleared_on_reconnect",
"transaction_hooks.tests.TestConnectionOnCommit.test_no_hooks_run_from_failed_transaction",
"transaction_hooks.tests.TestConnectionOnCommit.test_no_savepoints_atomic_merged_with_outer",
# Tests that require savepoints.
"get_or_create.tests.UpdateOrCreateTests.test_integrity",
"get_or_create.tests.UpdateOrCreateTests.test_manual_primary_key_test",
"get_or_create.tests.UpdateOrCreateTestsWithManualPKs.test_create_with_duplicate_primary_key",
"test_utils.tests.TestBadSetUpTestData.test_failure_in_setUpTestData_should_rollback_transaction",
"transaction_hooks.tests.TestConnectionOnCommit.test_discards_hooks_from_rolled_back_savepoint",
"transaction_hooks.tests.TestConnectionOnCommit.test_inner_savepoint_rolled_back_with_outer",
"transaction_hooks.tests.TestConnectionOnCommit.test_inner_savepoint_does_not_affect_outer",
# Spanner doesn't support views.
"inspectdb.tests.InspectDBTransactionalTests.test_include_views",
"introspection.tests.IntrospectionTests.test_table_names_with_views",
# No sequence for AutoField in Spanner.
"introspection.tests.IntrospectionTests.test_sequence_list",
# DatabaseIntrospection.get_key_columns() is only required if this
# backend needs it (which it currently doesn't).
"introspection.tests.IntrospectionTests.test_get_key_columns",
# DatabaseIntrospection.get_relations() isn't implemented:
# https://github.com/googleapis/python-spanner-django/issues/311
"introspection.tests.IntrospectionTests.test_get_relations",
# pyformat parameters not supported on INSERT:
# https://github.com/googleapis/python-spanner-django/issues/343
"backends.tests.BackendTestCase.test_cursor_execute_with_pyformat",
"backends.tests.BackendTestCase.test_cursor_executemany_with_pyformat",
"backends.tests.BackendTestCase.test_cursor_executemany_with_pyformat_iterator",
"migrations.test_commands.MigrateTests.test_migrate_fake_initial",
"migrations.test_commands.MigrateTests.test_migrate_initial_false",
"migrations.test_executor.ExecutorTests.test_soft_apply",
# Spanner limitation: Cannot change type of column.
"migrations.test_executor.ExecutorTests.test_alter_id_type_with_fk",
"schema.tests.SchemaTests.test_alter_auto_field_to_char_field",
"schema.tests.SchemaTests.test_alter_text_field_to_date_field",
"schema.tests.SchemaTests.test_alter_text_field_to_datetime_field",
"schema.tests.SchemaTests.test_alter_text_field_to_time_field",
# Spanner limitation: Cannot rename tables and columns.
"contenttypes_tests.test_operations.ContentTypeOperationsTests",
"migrations.test_operations.OperationTests.test_alter_fk_non_fk",
"migrations.test_operations.OperationTests.test_alter_model_table",
"migrations.test_operations.OperationTests.test_alter_model_table_m2m",
"migrations.test_operations.OperationTests.test_rename_field",
"migrations.test_operations.OperationTests.test_rename_field_reloads_state_on_fk_target_changes",
"migrations.test_operations.OperationTests.test_rename_m2m_model_after_rename_field",
"migrations.test_operations.OperationTests.test_rename_m2m_target_model",
"migrations.test_operations.OperationTests.test_rename_m2m_through_model",
"migrations.test_operations.OperationTests.test_rename_model",
"migrations.test_operations.OperationTests.test_rename_model_with_m2m",
"migrations.test_operations.OperationTests.test_rename_model_with_self_referential_fk",
"migrations.test_operations.OperationTests.test_rename_model_with_self_referential_m2m",
"migrations.test_operations.OperationTests.test_rename_model_with_superclass_fk",
"migrations.test_operations.OperationTests.test_repoint_field_m2m",
"schema.tests.SchemaTests.test_alter_db_table_case",
"schema.tests.SchemaTests.test_alter_pk_with_self_referential_field",
"schema.tests.SchemaTests.test_rename",
"schema.tests.SchemaTests.test_db_table",
"schema.tests.SchemaTests.test_m2m_rename_field_in_target_model",
"schema.tests.SchemaTests.test_m2m_repoint",
"schema.tests.SchemaTests.test_m2m_repoint_custom",
"schema.tests.SchemaTests.test_m2m_repoint_inherited",
"schema.tests.SchemaTests.test_rename_column_renames_deferred_sql_references",
"schema.tests.SchemaTests.test_rename_keep_null_status",
"schema.tests.SchemaTests.test_rename_referenced_field",
"schema.tests.SchemaTests.test_rename_table_renames_deferred_sql_references",
"schema.tests.SchemaTests.test_referenced_field_without_constraint_rename_inside_atomic_block",
"schema.tests.SchemaTests.test_referenced_table_without_constraint_rename_inside_atomic_block",
"schema.tests.SchemaTests.test_unique_name_quoting",
# Spanner limitation: Cannot change a field to a primary key.
"schema.tests.SchemaTests.test_alter_not_unique_field_to_primary_key",
# Spanner limitation: Cannot drop column in primary key.
"schema.tests.SchemaTests.test_primary_key",
# Spanner limitation: Cannot remove a column from the primary key.
"schema.tests.SchemaTests.test_alter_int_pk_to_int_unique",
# Spanner limitation: migrations aren't atomic since Spanner doesn't
# support transactions.
"migrations.test_executor.ExecutorTests.test_atomic_operation_in_non_atomic_migration",
# changing a not null constraint isn't allowed if it affects an index:
# https://github.com/googleapis/python-spanner-django/issues/378
"migrations.test_operations.OperationTests.test_alter_field_with_index",
# parsing INSERT with one inlined value and one placeholder fails:
# https://github.com/googleapis/python-spanner-django/issues/393
"migrations.test_operations.OperationTests.test_run_sql_params",
# This test doesn't flush the database properly:
# https://code.djangoproject.com/ticket/31398
"multiple_database.tests.AuthTestCase",
# This test isn't isolated on databases like Spanner that don't
# support transactions: https://code.djangoproject.com/ticket/31413
"migrations.test_loader.LoaderTests.test_loading_squashed",
# Probably due to django-spanner setting a default on AutoField:
# https://github.com/googleapis/python-spanner-django/issues/422
"model_inheritance_regress.tests.ModelInheritanceTest.test_issue_6755",
# Probably due to django-spanner setting a default on AutoField:
# https://github.com/googleapis/python-spanner-django/issues/424
"model_forms.tests.ModelFormBasicTests.test_runtime_choicefield_populated",
"model_forms.tests.ModelFormBasicTests.test_multi_fields",
"model_forms.tests.ModelFormBasicTests.test_m2m_initial_callable",
"model_forms.tests.ModelFormBasicTests.test_initial_values",
"model_forms.tests.OtherModelFormTests.test_prefetch_related_queryset",
"model_formsets.tests.ModelFormsetTest.test_prevent_change_outer_model_and_create_invalid_data",
"model_formsets_regress.tests.FormfieldShouldDeleteFormTests.test_no_delete",
"model_formsets_regress.tests.FormsetTests.test_extraneous_query_is_not_run",
# Numeric field is not supported in primary key/unique key.
"model_formsets.tests.ModelFormsetTest.test_inline_formsets_with_custom_pk",
"model_forms.tests.ModelFormBaseTest.test_exclude_and_validation",
"model_forms.tests.UniqueTest.test_unique_together",
"model_forms.tests.UniqueTest.test_override_unique_together_message",
# os.chmod() doesn't work on Kokoro?
"file_uploads.tests.DirectoryCreationTests.test_readonly_root",
# Tests that sometimes fail on Kokoro for unknown reasons.
"contenttypes_tests.test_models.ContentTypesTests.test_cache_not_shared_between_managers",
"migration_test_data_persistence.tests.MigrationDataNormalPersistenceTestCase.test_persistence",
"servers.test_liveserverthread.LiveServerThreadTest.test_closes_connections",
"servers.tests.LiveServerDatabase.test_fixtures_loaded",
"view_tests.tests.test_csrf.CsrfViewTests.test_no_cookies",
"view_tests.tests.test_csrf.CsrfViewTests.test_no_referer",
"view_tests.tests.test_i18n.SetLanguageTests.test_lang_from_translated_i18n_pattern",
)
if os.environ.get("SPANNER_EMULATOR_HOST", None):
# Some code isn't yet supported by the Spanner emulator.
skip_tests += (
# Untyped parameters are not supported:
# https://github.com/GoogleCloudPlatform/cloud-spanner-emulator#features-and-limitations
"admin_changelist.test_date_hierarchy.DateHierarchyTests.test_bounded_params", # noqa
"admin_changelist.test_date_hierarchy.DateHierarchyTests.test_bounded_params_with_time_zone", # noqa
"admin_changelist.test_date_hierarchy.DateHierarchyTests.test_invalid_params", # noqa
"admin_changelist.tests.ChangeListTests.test_builtin_lookup_in_search_fields", # noqa
"admin_changelist.tests.ChangeListTests.test_changelist_view_list_editable_changed_objects_uses_filter", # noqa
"admin_changelist.tests.ChangeListTests.test_computed_list_display_localization", # noqa
"admin_changelist.tests.ChangeListTests.test_custom_lookup_in_search_fields", # noqa
"admin_changelist.tests.ChangeListTests.test_custom_lookup_with_pk_shortcut", # noqa
"admin_changelist.tests.ChangeListTests.test_custom_paginator", # noqa
"admin_changelist.tests.ChangeListTests.test_deterministic_order_for_model_ordered_by_its_manager", # noqa
"admin_changelist.tests.ChangeListTests.test_deterministic_order_for_unordered_model", # noqa
"admin_changelist.tests.ChangeListTests.test_distinct_for_inherited_m2m_in_list_filter", # noqa
"admin_changelist.tests.ChangeListTests.test_distinct_for_m2m_in_list_filter", # noqa
"admin_changelist.tests.ChangeListTests.test_distinct_for_m2m_to_inherited_in_list_filter", # noqa
"admin_changelist.tests.ChangeListTests.test_distinct_for_many_to_many_at_second_level_in_search_fields", # noqa
"admin_changelist.tests.ChangeListTests.test_distinct_for_non_unique_related_object_in_list_filter", # noqa
"admin_changelist.tests.ChangeListTests.test_distinct_for_non_unique_related_object_in_search_fields", # noqa
"admin_changelist.tests.ChangeListTests.test_distinct_for_through_m2m_at_second_level_in_list_filter", # noqa
"admin_changelist.tests.ChangeListTests.test_distinct_for_through_m2m_in_list_filter", # noqa
"admin_changelist.tests.ChangeListTests.test_dynamic_list_display", # noqa
"admin_changelist.tests.ChangeListTests.test_dynamic_list_display_links", # noqa
"admin_changelist.tests.ChangeListTests.test_dynamic_list_filter", # noqa
"admin_changelist.tests.ChangeListTests.test_dynamic_search_fields", # noqa
"admin_changelist.tests.ChangeListTests.test_get_edited_object_ids", # noqa
"admin_changelist.tests.ChangeListTests.test_get_list_editable_queryset", # noqa
"admin_changelist.tests.ChangeListTests.test_get_list_editable_queryset_with_regex_chars_in_prefix", # noqa
"admin_changelist.tests.ChangeListTests.test_get_select_related_custom_method", # noqa
"admin_changelist.tests.ChangeListTests.test_multiuser_edit", # noqa
"admin_changelist.tests.ChangeListTests.test_no_distinct_for_m2m_in_list_filter_without_params", # noqa
"admin_changelist.tests.ChangeListTests.test_no_list_display_links", # noqa
"admin_changelist.tests.ChangeListTests.test_object_tools_displayed_no_add_permission", # noqa
"admin_changelist.tests.ChangeListTests.test_pagination", # noqa
"admin_changelist.tests.ChangeListTests.test_pagination_page_range", # noqa
"admin_changelist.tests.ChangeListTests.test_pk_in_search_fields", # noqa
"admin_changelist.tests.ChangeListTests.test_result_list_editable", # noqa
"admin_changelist.tests.ChangeListTests.test_result_list_editable_html", # noqa
"admin_changelist.tests.ChangeListTests.test_result_list_empty_changelist_value", # noqa
"admin_changelist.tests.ChangeListTests.test_result_list_html", # noqa
"admin_changelist.tests.ChangeListTests.test_result_list_set_empty_value_display_in_model_admin", # noqa
"admin_changelist.tests.ChangeListTests.test_result_list_set_empty_value_display_on_admin_site", # noqa
"admin_changelist.tests.ChangeListTests.test_select_related_as_empty_tuple", # noqa
"admin_changelist.tests.ChangeListTests.test_select_related_as_tuple", # noqa
"admin_changelist.tests.ChangeListTests.test_select_related_preserved", # noqa
"admin_changelist.tests.ChangeListTests.test_show_all", # noqa
"admin_changelist.tests.ChangeListTests.test_spanning_relations_with_custom_lookup_in_search_fields", # noqa
"admin_changelist.tests.ChangeListTests.test_specified_ordering_by_f_expression", # noqa
"admin_changelist.tests.ChangeListTests.test_specified_ordering_by_f_expression_without_asc_desc", # noqa
"admin_changelist.tests.ChangeListTests.test_total_ordering_optimization", # noqa
"admin_changelist.tests.ChangeListTests.test_tuple_list_display", # noqa
"admin_changelist.tests.GetAdminLogTests.test_no_user", # noqa
"admin_custom_urls.tests.AdminCustomUrlsTest.test_add_with_GET_args", # noqa
"admin_custom_urls.tests.AdminCustomUrlsTest.test_admin_URLs_no_clash", # noqa
"admin_custom_urls.tests.AdminCustomUrlsTest.test_basic_add_GET", # noqa
"admin_custom_urls.tests.AdminCustomUrlsTest.test_basic_add_POST", # noqa
"admin_custom_urls.tests.AdminCustomUrlsTest.test_post_save_add_redirect", # noqa
"admin_custom_urls.tests.AdminCustomUrlsTest.test_post_save_change_redirect", # noqa
"admin_custom_urls.tests.AdminCustomUrlsTest.test_post_url_continue", # noqa
"admin_docs.test_middleware.XViewMiddlewareTest.test_callable_object_view", # noqa
"admin_docs.test_middleware.XViewMiddlewareTest.test_xview_class", # noqa
"admin_docs.test_middleware.XViewMiddlewareTest.test_xview_func", # noqa
"admin_docs.test_views.AdminDocViewTests.test_bookmarklets", # noqa
"admin_docs.test_views.AdminDocViewTests.test_index", # noqa
"admin_docs.test_views.AdminDocViewTests.test_missing_docutils", # noqa
"admin_docs.test_views.AdminDocViewTests.test_model_index", # noqa
"admin_docs.test_views.AdminDocViewTests.test_namespaced_view_detail", # noqa
"admin_docs.test_views.AdminDocViewTests.test_no_sites_framework", # noqa
"admin_docs.test_views.AdminDocViewTests.test_template_detail", # noqa
"admin_docs.test_views.AdminDocViewTests.test_templatefilter_index", # noqa
"admin_docs.test_views.AdminDocViewTests.test_templatetag_index", # noqa
"admin_docs.test_views.AdminDocViewTests.test_view_detail", # noqa
"admin_docs.test_views.AdminDocViewTests.test_view_detail_as_method", # noqa
"admin_docs.test_views.AdminDocViewTests.test_view_detail_illegal_import", # noqa
"admin_docs.test_views.AdminDocViewTests.test_view_index", # noqa
"admin_docs.test_views.AdminDocViewTests.test_view_index_with_method", # noqa
"admin_docs.test_views.AdminDocViewWithMultipleEngines.test_bookmarklets", # noqa
"admin_docs.test_views.AdminDocViewWithMultipleEngines.test_index", # noqa
"admin_docs.test_views.AdminDocViewWithMultipleEngines.test_missing_docutils", # noqa
"admin_docs.test_views.AdminDocViewWithMultipleEngines.test_model_index", # noqa
"admin_docs.test_views.AdminDocViewWithMultipleEngines.test_namespaced_view_detail", # noqa
"admin_docs.test_views.AdminDocViewWithMultipleEngines.test_no_sites_framework", # noqa
"admin_docs.test_views.AdminDocViewWithMultipleEngines.test_template_detail", # noqa
"admin_docs.test_views.AdminDocViewWithMultipleEngines.test_templatefilter_index", # noqa
"admin_docs.test_views.AdminDocViewWithMultipleEngines.test_templatetag_index", # noqa
"admin_docs.test_views.AdminDocViewWithMultipleEngines.test_view_detail", # noqa
"admin_docs.test_views.AdminDocViewWithMultipleEngines.test_view_detail_as_method", # noqa
"admin_docs.test_views.AdminDocViewWithMultipleEngines.test_view_detail_illegal_import", # noqa
"admin_docs.test_views.AdminDocViewWithMultipleEngines.test_view_index", # noqa
"admin_docs.test_views.AdminDocViewWithMultipleEngines.test_view_index_with_method", # noqa
"admin_docs.test_views.TestModelDetailView.test_app_not_found", # noqa
"admin_docs.test_views.TestModelDetailView.test_descriptions_render_correctly", # noqa
"admin_docs.test_views.TestModelDetailView.test_instance_of_property_methods_are_displayed", # noqa
"admin_docs.test_views.TestModelDetailView.test_method_data_types", # noqa
"admin_docs.test_views.TestModelDetailView.test_method_excludes", # noqa
"admin_docs.test_views.TestModelDetailView.test_methods_with_arguments", # noqa
"admin_docs.test_views.TestModelDetailView.test_methods_with_arguments_display_arguments", # noqa
"admin_docs.test_views.TestModelDetailView.test_methods_with_arguments_display_arguments_default_value", # noqa
"admin_docs.test_views.TestModelDetailView.test_methods_with_multiple_arguments_display_arguments", # noqa
"admin_docs.test_views.TestModelDetailView.test_model_detail_title", # noqa
"admin_docs.test_views.TestModelDetailView.test_model_docstring_renders_correctly", # noqa
"admin_docs.test_views.TestModelDetailView.test_model_not_found", # noqa
"admin_docs.test_views.TestModelDetailView.test_model_with_many_to_one", # noqa
"admin_docs.test_views.TestModelDetailView.test_model_with_no_backward_relations_render_only_relevant_fields", # noqa
"admin_inlines.tests.TestInline.test_callable_lookup", # noqa
"admin_inlines.tests.TestInline.test_can_delete", # noqa
"admin_inlines.tests.TestInline.test_create_inlines_on_inherited_model", # noqa
"admin_inlines.tests.TestInline.test_custom_form_tabular_inline_label", # noqa
"admin_inlines.tests.TestInline.test_custom_form_tabular_inline_overridden_label", # noqa
"admin_inlines.tests.TestInline.test_custom_get_extra_form", # noqa
"admin_inlines.tests.TestInline.test_custom_min_num", # noqa
"admin_inlines.tests.TestInline.test_custom_pk_shortcut", # noqa
"admin_inlines.tests.TestInline.test_help_text", # noqa
"admin_inlines.tests.TestInline.test_inline_editable_pk", # noqa
"admin_inlines.tests.TestInline.test_inline_nonauto_noneditable_inherited_pk", # noqa
"admin_inlines.tests.TestInline.test_inline_nonauto_noneditable_pk", # noqa
"admin_inlines.tests.TestInline.test_inline_primary", # noqa
"admin_inlines.tests.TestInline.test_inlines_show_change_link_registered", # noqa
"admin_inlines.tests.TestInline.test_inlines_show_change_link_unregistered", # noqa
"admin_inlines.tests.TestInline.test_localize_pk_shortcut", # noqa
"admin_inlines.tests.TestInline.test_many_to_many_inlines", # noqa
"admin_inlines.tests.TestInline.test_min_num", # noqa
"admin_inlines.tests.TestInline.test_no_parent_callable_lookup", # noqa
"admin_inlines.tests.TestInline.test_non_related_name_inline", # noqa
"admin_inlines.tests.TestInline.test_noneditable_inline_has_field_inputs", # noqa
"admin_inlines.tests.TestInline.test_readonly_stacked_inline_label", # noqa
"admin_inlines.tests.TestInline.test_stacked_inline_edit_form_contains_has_original_class", # noqa
"admin_inlines.tests.TestInline.test_tabular_inline_column_css_class", # noqa
"admin_inlines.tests.TestInline.test_tabular_inline_show_change_link_false_registered", # noqa
"admin_inlines.tests.TestInline.test_tabular_model_form_meta_readonly_field", # noqa
"admin_inlines.tests.TestInline.test_tabular_non_field_errors", # noqa
"admin_inlines.tests.TestInlineMedia.test_all_inline_media", # noqa
"admin_inlines.tests.TestInlineMedia.test_inline_media_only_base", # noqa
"admin_inlines.tests.TestInlineMedia.test_inline_media_only_inline", # noqa
"admin_inlines.tests.TestInlinePermissions.test_inline_add_fk_add_perm", # noqa
"admin_inlines.tests.TestInlinePermissions.test_inline_add_fk_noperm", # noqa
"admin_inlines.tests.TestInlinePermissions.test_inline_add_m2m_add_perm", # noqa
"admin_inlines.tests.TestInlinePermissions.test_inline_add_m2m_noperm", # noqa
"admin_inlines.tests.TestInlinePermissions.test_inline_add_m2m_view_only_perm", # noqa
"admin_inlines.tests.TestInlinePermissions.test_inline_change_fk_add_change_perm", # noqa
"admin_inlines.tests.TestInlinePermissions.test_inline_change_fk_add_perm", # noqa
"admin_inlines.tests.TestInlinePermissions.test_inline_change_fk_all_perms", # noqa
"admin_inlines.tests.TestInlinePermissions.test_inline_change_fk_change_del_perm", # noqa
"admin_inlines.tests.TestInlinePermissions.test_inline_change_fk_change_perm", # noqa
"admin_inlines.tests.TestInlinePermissions.test_inline_change_fk_noperm", # noqa
"admin_inlines.tests.TestInlinePermissions.test_inline_change_m2m_add_perm", # noqa
"admin_inlines.tests.TestInlinePermissions.test_inline_change_m2m_change_perm", # noqa
"admin_inlines.tests.TestInlinePermissions.test_inline_change_m2m_noperm", # noqa
"admin_inlines.tests.TestInlinePermissions.test_inline_change_m2m_view_only_perm", # noqa
"admin_inlines.tests.TestInlineProtectedOnDelete.test_deleting_inline_with_protected_delete_does_not_validate", # noqa
"admin_inlines.tests.TestReadOnlyChangeViewInlinePermissions.test_add_url_not_allowed", # noqa
"admin_inlines.tests.TestReadOnlyChangeViewInlinePermissions.test_extra_inlines_are_not_shown", # noqa
"admin_inlines.tests.TestReadOnlyChangeViewInlinePermissions.test_get_to_change_url_is_allowed", # noqa
"admin_inlines.tests.TestReadOnlyChangeViewInlinePermissions.test_inline_delete_buttons_are_not_shown", # noqa
"admin_inlines.tests.TestReadOnlyChangeViewInlinePermissions.test_inlines_are_rendered_as_read_only", # noqa
"admin_inlines.tests.TestReadOnlyChangeViewInlinePermissions.test_main_model_is_rendered_as_read_only", # noqa
"admin_inlines.tests.TestReadOnlyChangeViewInlinePermissions.test_post_to_change_url_not_allowed", # noqa
"admin_inlines.tests.TestReadOnlyChangeViewInlinePermissions.test_submit_line_shows_only_close_button", # noqa
"admin_ordering.tests.TestAdminOrdering.test_dynamic_ordering", # noqa
"aggregation.tests.AggregateTestCase.test_add_implementation", # noqa
"aggregation.tests.AggregateTestCase.test_aggregate_alias", # noqa
"aggregation.tests.AggregateTestCase.test_aggregate_annotation", # noqa
"aggregation.tests.AggregateTestCase.test_aggregate_in_order_by", # noqa
"aggregation.tests.AggregateTestCase.test_aggregate_multi_join", # noqa
"aggregation.tests.AggregateTestCase.test_aggregate_over_complex_annotation", # noqa
"aggregation.tests.AggregateTestCase.test_aggregation_expressions", # noqa
"aggregation.tests.AggregateTestCase.test_annotate_defer", # noqa
"aggregation.tests.AggregateTestCase.test_annotate_defer_select_related", # noqa
"aggregation.tests.AggregateTestCase.test_annotate_m2m", # noqa
"aggregation.tests.AggregateTestCase.test_annotate_ordering", # noqa
"aggregation.tests.AggregateTestCase.test_annotate_over_annotate", # noqa
"aggregation.tests.AggregateTestCase.test_annotate_values", # noqa
"aggregation.tests.AggregateTestCase.test_annotate_values_aggregate", # noqa
"aggregation.tests.AggregateTestCase.test_annotate_values_list", # noqa
"aggregation.tests.AggregateTestCase.test_annotated_aggregate_over_annotated_aggregate", # noqa
"aggregation.tests.AggregateTestCase.test_annotation_expressions", # noqa
"aggregation.tests.AggregateTestCase.test_arguments_must_be_expressions", # noqa
"aggregation.tests.AggregateTestCase.test_avg_decimal_field", # noqa
"aggregation.tests.AggregateTestCase.test_avg_duration_field", # noqa
"aggregation.tests.AggregateTestCase.test_backwards_m2m_annotate", # noqa
"aggregation.tests.AggregateTestCase.test_combine_different_types", # noqa
"aggregation.tests.AggregateTestCase.test_complex_aggregations_require_kwarg", # noqa
"aggregation.tests.AggregateTestCase.test_complex_values_aggregation", # noqa
"aggregation.tests.AggregateTestCase.test_count", # noqa
"aggregation.tests.AggregateTestCase.test_count_distinct_expression", # noqa
"aggregation.tests.AggregateTestCase.test_count_star", # noqa
"aggregation.tests.AggregateTestCase.test_dates_with_aggregation", # noqa
"aggregation.tests.AggregateTestCase.test_empty_aggregate", # noqa
"aggregation.tests.AggregateTestCase.test_even_more_aggregate", # noqa
"aggregation.tests.AggregateTestCase.test_expression_on_aggregation", # noqa
"aggregation.tests.AggregateTestCase.test_filter_aggregate", # noqa
"aggregation.tests.AggregateTestCase.test_fkey_aggregate", # noqa
"aggregation.tests.AggregateTestCase.test_grouped_annotation_in_group_by", # noqa
"aggregation.tests.AggregateTestCase.test_missing_output_field_raises_error", # noqa
"aggregation.tests.AggregateTestCase.test_more_aggregation", # noqa
"aggregation.tests.AggregateTestCase.test_multi_arg_aggregate", # noqa
"aggregation.tests.AggregateTestCase.test_multiple_aggregates", # noqa
"aggregation.tests.AggregateTestCase.test_non_grouped_annotation_not_in_group_by", # noqa
"aggregation.tests.AggregateTestCase.test_nonaggregate_aggregation_throws", # noqa
"aggregation.tests.AggregateTestCase.test_nonfield_annotation", # noqa
"aggregation.tests.AggregateTestCase.test_order_of_precedence", # noqa
"aggregation.tests.AggregateTestCase.test_reverse_fkey_annotate", # noqa
"aggregation.tests.AggregateTestCase.test_single_aggregate", # noqa
"aggregation.tests.AggregateTestCase.test_sum_distinct_aggregate", # noqa
"aggregation.tests.AggregateTestCase.test_sum_duration_field", # noqa
"aggregation.tests.AggregateTestCase.test_ticket11881", # noqa
"aggregation.tests.AggregateTestCase.test_ticket12886", # noqa
"aggregation.tests.AggregateTestCase.test_ticket17424", # noqa
"aggregation.tests.AggregateTestCase.test_values_aggregation", # noqa
"aggregation.tests.AggregateTestCase.test_values_annotation_with_expression", # noqa
"aggregation_regress.tests.JoinPromotionTests.test_ticket_21150", # noqa
"aggregation_regress.tests.SelfReferentialFKTests.test_ticket_24748", # noqa
"annotations.tests.NonAggregateAnnotationTestCase.test_custom_functions", # noqa
"annotations.tests.NonAggregateAnnotationTestCase.test_custom_functions_can_ref_other_functions", # noqa
"annotations.tests.NonAggregateAnnotationTestCase.test_filter_decimal_annotation", # noqa
"auth_tests.test_auth_backends.AllowAllUsersModelBackendTest.test_authenticate", # noqa
"auth_tests.test_auth_backends.AllowAllUsersModelBackendTest.test_get_user", # noqa
"auth_tests.test_auth_backends.AuthenticateTests.test_skips_backends_without_arguments", # noqa
"auth_tests.test_auth_backends.AuthenticateTests.test_type_error_raised", # noqa
"auth_tests.test_auth_backends.ChangedBackendSettingsTest.test_changed_backend_settings", # noqa
"auth_tests.test_auth_backends.CustomPermissionsUserModelBackendTest.test_anonymous_has_no_permissions", # noqa
"auth_tests.test_auth_backends.CustomPermissionsUserModelBackendTest.test_authentication_timing", # noqa
"auth_tests.test_auth_backends.CustomPermissionsUserModelBackendTest.test_custom_perms", # noqa
"auth_tests.test_auth_backends.CustomPermissionsUserModelBackendTest.test_get_all_superuser_permissions", # noqa
"auth_tests.test_auth_backends.CustomPermissionsUserModelBackendTest.test_has_no_object_perm", # noqa
"auth_tests.test_auth_backends.CustomPermissionsUserModelBackendTest.test_has_perm", # noqa
"auth_tests.test_auth_backends.CustomPermissionsUserModelBackendTest.test_inactive_has_no_permissions", # noqa
"auth_tests.test_auth_backends.CustomUserModelBackendAuthenticateTest.test_authenticate", # noqa
"auth_tests.test_auth_backends.ExtensionUserModelBackendTest.test_anonymous_has_no_permissions", # noqa
"auth_tests.test_auth_backends.ExtensionUserModelBackendTest.test_authentication_timing", # noqa
"auth_tests.test_auth_backends.ExtensionUserModelBackendTest.test_custom_perms", # noqa
"auth_tests.test_auth_backends.ExtensionUserModelBackendTest.test_get_all_superuser_permissions", # noqa
"auth_tests.test_auth_backends.ExtensionUserModelBackendTest.test_has_no_object_perm", # noqa
"auth_tests.test_auth_backends.ExtensionUserModelBackendTest.test_has_perm", # noqa
"auth_tests.test_auth_backends.ExtensionUserModelBackendTest.test_inactive_has_no_permissions", # noqa
"auth_tests.test_auth_backends.ImportedBackendTests.test_backend_path", # noqa
"auth_tests.test_auth_backends.ImproperlyConfiguredUserModelTest.test_does_not_shadow_exception", # noqa
"auth_tests.test_auth_backends.InActiveUserBackendTest.test_has_module_perms", # noqa
"auth_tests.test_auth_backends.InActiveUserBackendTest.test_has_perm", # noqa
"auth_tests.test_auth_backends.ModelBackendTest.test_anonymous_has_no_permissions", # noqa
"auth_tests.test_auth_backends.ModelBackendTest.test_authenticate_inactive", # noqa
"auth_tests.test_auth_backends.ModelBackendTest.test_authenticate_user_without_is_active_field", # noqa
"auth_tests.test_auth_backends.ModelBackendTest.test_authentication_timing", # noqa
"auth_tests.test_auth_backends.ModelBackendTest.test_custom_perms", # noqa
"auth_tests.test_auth_backends.ModelBackendTest.test_get_all_superuser_permissions", # noqa
"auth_tests.test_auth_backends.ModelBackendTest.test_has_no_object_perm", # noqa
"auth_tests.test_auth_backends.ModelBackendTest.test_has_perm", # noqa
"auth_tests.test_auth_backends.ModelBackendTest.test_inactive_has_no_permissions", # noqa
"auth_tests.test_auth_backends.NoBackendsTest.test_raises_exception", # noqa
"auth_tests.test_auth_backends.PermissionDeniedBackendTest.test_authenticates", # noqa
"auth_tests.test_auth_backends.PermissionDeniedBackendTest.test_has_perm", # noqa
"auth_tests.test_auth_backends.PermissionDeniedBackendTest.test_has_perm_denied", # noqa
"auth_tests.test_auth_backends.PermissionDeniedBackendTest.test_permission_denied", # noqa
"auth_tests.test_auth_backends.RowlevelBackendTest.test_get_all_permissions", # noqa
"auth_tests.test_auth_backends.RowlevelBackendTest.test_get_group_permissions", # noqa
"auth_tests.test_auth_backends.RowlevelBackendTest.test_has_perm", # noqa
"auth_tests.test_auth_backends.SelectingBackendTests.test_backend_path_login_with_explicit_backends", # noqa
"auth_tests.test_auth_backends.SelectingBackendTests.test_backend_path_login_without_authenticate_multiple_backends", # noqa
"auth_tests.test_auth_backends.SelectingBackendTests.test_backend_path_login_without_authenticate_single_backend", # noqa
"auth_tests.test_auth_backends.SelectingBackendTests.test_non_string_backend", # noqa
"auth_tests.test_auth_backends.UUIDUserTests.test_login", # noqa
"auth_tests.test_basic.BasicTestCase.test_superuser", # noqa
"auth_tests.test_basic.BasicTestCase.test_unicode_username", # noqa
"auth_tests.test_basic.BasicTestCase.test_user", # noqa
"auth_tests.test_basic.BasicTestCase.test_user_no_email", # noqa
"auth_tests.test_basic.TestGetUser.test_get_user", # noqa
"auth_tests.test_context_processors.AuthContextProcessorTests.test_message_attrs", # noqa
"auth_tests.test_context_processors.AuthContextProcessorTests.test_perm_in_perms_attrs", # noqa
"auth_tests.test_context_processors.AuthContextProcessorTests.test_perms_attrs", # noqa
"auth_tests.test_context_processors.AuthContextProcessorTests.test_session_is_accessed", # noqa
"auth_tests.test_context_processors.AuthContextProcessorTests.test_session_not_accessed", # noqa
"auth_tests.test_context_processors.AuthContextProcessorTests.test_user_attrs", # noqa
"auth_tests.test_decorators.LoginRequiredTestCase.testCallable", # noqa
"auth_tests.test_decorators.LoginRequiredTestCase.testLoginRequired", # noqa
"auth_tests.test_decorators.LoginRequiredTestCase.testLoginRequiredNextUrl", # noqa
"auth_tests.test_decorators.LoginRequiredTestCase.testView", # noqa
"auth_tests.test_decorators.PermissionsRequiredDecoratorTest.test_many_permissions_in_set_pass", # noqa
"auth_tests.test_decorators.PermissionsRequiredDecoratorTest.test_many_permissions_pass", # noqa
"auth_tests.test_decorators.PermissionsRequiredDecoratorTest.test_permissioned_denied_exception_raised", # noqa
"auth_tests.test_decorators.PermissionsRequiredDecoratorTest.test_permissioned_denied_redirect", # noqa
"auth_tests.test_decorators.PermissionsRequiredDecoratorTest.test_single_permission_pass", # noqa
"auth_tests.test_forms.AdminPasswordChangeFormTest.test_missing_passwords", # noqa
"auth_tests.test_forms.AdminPasswordChangeFormTest.test_non_matching_passwords", # noqa
"auth_tests.test_forms.AdminPasswordChangeFormTest.test_one_password", # noqa
"auth_tests.test_forms.AdminPasswordChangeFormTest.test_password_whitespace_not_stripped", # noqa
"auth_tests.test_forms.AdminPasswordChangeFormTest.test_success", # noqa
"auth_tests.test_forms.AuthenticationFormTest.test_custom_login_allowed_policy", # noqa
"auth_tests.test_forms.AuthenticationFormTest.test_get_invalid_login_error", # noqa
"auth_tests.test_forms.AuthenticationFormTest.test_inactive_user", # noqa
"auth_tests.test_forms.AuthenticationFormTest.test_inactive_user_i18n", # noqa
"auth_tests.test_forms.AuthenticationFormTest.test_inactive_user_incorrect_password", # noqa
"auth_tests.test_forms.AuthenticationFormTest.test_integer_username", # noqa
"auth_tests.test_forms.AuthenticationFormTest.test_invalid_username", # noqa
"auth_tests.test_forms.AuthenticationFormTest.test_login_failed", # noqa
"auth_tests.test_forms.AuthenticationFormTest.test_password_whitespace_not_stripped", # noqa
"auth_tests.test_forms.AuthenticationFormTest.test_success", # noqa
"auth_tests.test_forms.AuthenticationFormTest.test_unicode_username", # noqa
"auth_tests.test_forms.AuthenticationFormTest.test_username_field_label", # noqa
"auth_tests.test_forms.AuthenticationFormTest.test_username_field_label_empty_string", # noqa
"auth_tests.test_forms.AuthenticationFormTest.test_username_field_label_not_set", # noqa
"auth_tests.test_forms.AuthenticationFormTest.test_username_field_max_length_defaults_to_254", # noqa
"auth_tests.test_forms.AuthenticationFormTest.test_username_field_max_length_matches_user_model", # noqa
"auth_tests.test_forms.PasswordChangeFormTest.test_field_order", # noqa
"auth_tests.test_forms.PasswordChangeFormTest.test_incorrect_password", # noqa
"auth_tests.test_forms.PasswordChangeFormTest.test_password_verification", # noqa
"auth_tests.test_forms.PasswordChangeFormTest.test_password_whitespace_not_stripped", # noqa
"auth_tests.test_forms.PasswordChangeFormTest.test_success", # noqa
"auth_tests.test_forms.PasswordResetFormTest.test_cleaned_data", # noqa
"auth_tests.test_forms.PasswordResetFormTest.test_custom_email_constructor", # noqa
"auth_tests.test_forms.PasswordResetFormTest.test_custom_email_field", # noqa
"auth_tests.test_forms.PasswordResetFormTest.test_custom_email_subject", # noqa
"auth_tests.test_forms.PasswordResetFormTest.test_inactive_user", # noqa
"auth_tests.test_forms.PasswordResetFormTest.test_invalid_email", # noqa
"auth_tests.test_forms.PasswordResetFormTest.test_nonexistent_email", # noqa
"auth_tests.test_forms.PasswordResetFormTest.test_preserve_username_case", # noqa
"auth_tests.test_forms.PasswordResetFormTest.test_save_html_email_template_name", # noqa
"auth_tests.test_forms.PasswordResetFormTest.test_save_plaintext_email", # noqa
"auth_tests.test_forms.PasswordResetFormTest.test_unusable_password", # noqa
"auth_tests.test_forms.PasswordResetFormTest.test_user_email_domain_unicode_collision", # noqa
"auth_tests.test_forms.PasswordResetFormTest.test_user_email_domain_unicode_collision_nonexistent", # noqa
"auth_tests.test_forms.PasswordResetFormTest.test_user_email_unicode_collision", # noqa
"auth_tests.test_forms.PasswordResetFormTest.test_user_email_unicode_collision_nonexistent", # noqa
"auth_tests.test_forms.SetPasswordFormTest.test_help_text_translation", # noqa
"auth_tests.test_forms.SetPasswordFormTest.test_password_verification", # noqa
"auth_tests.test_forms.SetPasswordFormTest.test_password_whitespace_not_stripped", # noqa
"auth_tests.test_forms.SetPasswordFormTest.test_success", # noqa
"auth_tests.test_forms.SetPasswordFormTest.test_validates_password", # noqa
"auth_tests.test_forms.UserChangeFormTest.test_bug_14242", # noqa
"auth_tests.test_forms.UserChangeFormTest.test_bug_17944_empty_password", # noqa
"auth_tests.test_forms.UserChangeFormTest.test_bug_17944_unknown_password_algorithm", # noqa
"auth_tests.test_forms.UserChangeFormTest.test_bug_17944_unmanageable_password", # noqa
"auth_tests.test_forms.UserChangeFormTest.test_bug_19133", # noqa
"auth_tests.test_forms.UserChangeFormTest.test_bug_19349_bound_password_field", # noqa
"auth_tests.test_forms.UserChangeFormTest.test_custom_form", # noqa
"auth_tests.test_forms.UserChangeFormTest.test_password_excluded", # noqa
"auth_tests.test_forms.UserChangeFormTest.test_unusable_password", # noqa
"auth_tests.test_forms.UserChangeFormTest.test_username_validity", # noqa
"auth_tests.test_forms.UserCreationFormTest.test_both_passwords", # noqa
"auth_tests.test_forms.UserCreationFormTest.test_custom_form", # noqa
"auth_tests.test_forms.UserCreationFormTest.test_custom_form_hidden_username_field", # noqa
"auth_tests.test_forms.UserCreationFormTest.test_custom_form_with_different_username_field", # noqa
"auth_tests.test_forms.UserCreationFormTest.test_duplicate_normalized_unicode", # noqa
"auth_tests.test_forms.UserCreationFormTest.test_invalid_data", # noqa
"auth_tests.test_forms.UserCreationFormTest.test_normalize_username", # noqa
"auth_tests.test_forms.UserCreationFormTest.test_password_help_text", # noqa
"auth_tests.test_forms.UserCreationFormTest.test_password_verification", # noqa
"auth_tests.test_forms.UserCreationFormTest.test_password_whitespace_not_stripped", # noqa
"auth_tests.test_forms.UserCreationFormTest.test_success", # noqa
"auth_tests.test_forms.UserCreationFormTest.test_unicode_username", # noqa
"auth_tests.test_forms.UserCreationFormTest.test_user_already_exists", # noqa
"auth_tests.test_forms.UserCreationFormTest.test_user_create_form_validates_password_with_all_data", # noqa
"auth_tests.test_forms.UserCreationFormTest.test_validates_password", # noqa
"auth_tests.test_handlers.ModWsgiHandlerTestCase.test_check_password", # noqa
"auth_tests.test_handlers.ModWsgiHandlerTestCase.test_check_password_custom_user", # noqa
"auth_tests.test_handlers.ModWsgiHandlerTestCase.test_groups_for_user", # noqa
"auth_tests.test_management.ChangepasswordManagementCommandTestCase.test_get_pass", # noqa
"auth_tests.test_management.ChangepasswordManagementCommandTestCase.test_get_pass_no_input", # noqa
"auth_tests.test_management.ChangepasswordManagementCommandTestCase.test_nonexistent_username", # noqa
"auth_tests.test_management.ChangepasswordManagementCommandTestCase.test_password_validation", # noqa
"auth_tests.test_management.ChangepasswordManagementCommandTestCase.test_system_username", # noqa
"auth_tests.test_management.ChangepasswordManagementCommandTestCase.test_that_changepassword_command_changes_joes_password", # noqa
"auth_tests.test_management.ChangepasswordManagementCommandTestCase.test_that_changepassword_command_works_with_nonascii_output", # noqa
"auth_tests.test_management.ChangepasswordManagementCommandTestCase.test_that_max_tries_exits_1", # noqa
"auth_tests.test_management.CreatesuperuserManagementCommandTestCase.test_basic_usage", # noqa
"auth_tests.test_management.CreatesuperuserManagementCommandTestCase.test_default_username", # noqa
"auth_tests.test_management.CreatesuperuserManagementCommandTestCase.test_email_in_username", # noqa
"auth_tests.test_management.CreatesuperuserManagementCommandTestCase.test_existing_username", # noqa
"auth_tests.test_management.CreatesuperuserManagementCommandTestCase.test_existing_username_non_interactive", # noqa
"auth_tests.test_management.CreatesuperuserManagementCommandTestCase.test_existing_username_provided_via_option_and_interactive", # noqa
"auth_tests.test_management.CreatesuperuserManagementCommandTestCase.test_fields_with_fk", # noqa
"auth_tests.test_management.CreatesuperuserManagementCommandTestCase.test_fields_with_fk_interactive", # noqa
"auth_tests.test_management.CreatesuperuserManagementCommandTestCase.test_invalid_username", # noqa
"auth_tests.test_management.CreatesuperuserManagementCommandTestCase.test_non_ascii_verbose_name", # noqa
"auth_tests.test_management.CreatesuperuserManagementCommandTestCase.test_passing_stdin", # noqa
"auth_tests.test_management.CreatesuperuserManagementCommandTestCase.test_password_validation", # noqa
"auth_tests.test_management.CreatesuperuserManagementCommandTestCase.test_password_validation_bypass", # noqa
"auth_tests.test_management.CreatesuperuserManagementCommandTestCase.test_swappable_user", # noqa
"auth_tests.test_management.CreatesuperuserManagementCommandTestCase.test_swappable_user_username_non_unique", # noqa
"auth_tests.test_management.CreatesuperuserManagementCommandTestCase.test_validate_password_against_required_fields", # noqa
"auth_tests.test_management.CreatesuperuserManagementCommandTestCase.test_validate_password_against_username", # noqa
"auth_tests.test_management.CreatesuperuserManagementCommandTestCase.test_validation_blank_password_entered", # noqa
"auth_tests.test_management.CreatesuperuserManagementCommandTestCase.test_validation_mismatched_passwords", # noqa
"auth_tests.test_management.CreatesuperuserManagementCommandTestCase.test_verbosity_zero", # noqa
"auth_tests.test_management.GetDefaultUsernameTestCase.test_existing", # noqa
"auth_tests.test_management.MultiDBChangepasswordManagementCommandTestCase.test_that_changepassword_command_with_database_option_uses_given_db", # noqa
"auth_tests.test_management.MultiDBCreatesuperuserTestCase.test_createsuperuser_command_with_database_option", # noqa
"auth_tests.test_middleware.TestAuthenticationMiddleware.test_changed_password_invalidates_session", # noqa
"auth_tests.test_middleware.TestAuthenticationMiddleware.test_no_password_change_doesnt_invalidate_session", # noqa
"auth_tests.test_migrations.ProxyModelWithDifferentAppLabelTests.test_user_has_now_proxy_model_permissions", # noqa
"auth_tests.test_migrations.ProxyModelWithDifferentAppLabelTests.test_user_keeps_same_permissions_after_migrating_backward", # noqa
"auth_tests.test_migrations.ProxyModelWithSameAppLabelTests.test_user_keeps_same_permissions_after_migrating_backward", # noqa
"auth_tests.test_migrations.ProxyModelWithSameAppLabelTests.test_user_still_has_proxy_model_permissions", # noqa
"proxy_models.tests.ProxyModelAdminTests.test_delete_str_in_model_admin", # noqa
"auth_tests.test_mixins.AccessMixinTests.test_access_mixin_permission_denied_response", # noqa
"auth_tests.test_mixins.AccessMixinTests.test_stacked_mixins_missing_permission", # noqa
"auth_tests.test_mixins.AccessMixinTests.test_stacked_mixins_not_logged_in", # noqa
"auth_tests.test_mixins.AccessMixinTests.test_stacked_mixins_success", # noqa
"auth_tests.test_mixins.LoginRequiredMixinTests.test_login_required", # noqa
"auth_tests.test_mixins.PermissionsRequiredMixinTests.test_many_permissions_pass", # noqa
"auth_tests.test_mixins.PermissionsRequiredMixinTests.test_permissioned_denied_exception_raised", # noqa
"auth_tests.test_mixins.PermissionsRequiredMixinTests.test_permissioned_denied_redirect", # noqa
"auth_tests.test_mixins.PermissionsRequiredMixinTests.test_single_permission_pass", # noqa
"auth_tests.test_models.AbstractUserTestCase.test_check_password_upgrade", # noqa
"auth_tests.test_models.AbstractUserTestCase.test_last_login_default", # noqa
"auth_tests.test_models.AbstractUserTestCase.test_user_double_save", # noqa
"auth_tests.test_models.IsActiveTestCase.test_builtin_user_isactive", # noqa
"auth_tests.test_models.IsActiveTestCase.test_is_active_field_default", # noqa
"auth_tests.test_models.NaturalKeysTestCase.test_user_natural_key", # noqa
"auth_tests.test_models.TestCreateSuperUserSignals.test_create_superuser", # noqa
"auth_tests.test_models.TestCreateSuperUserSignals.test_create_user", # noqa
"auth_tests.test_models.UserManagerTestCase.test_create_user", # noqa
"auth_tests.test_models.UserManagerTestCase.test_create_user_is_staff", # noqa
"auth_tests.test_remote_user.AllowAllUsersRemoteUserBackendTest.test_header_disappears", # noqa
"auth_tests.test_remote_user.AllowAllUsersRemoteUserBackendTest.test_inactive_user", # noqa
"auth_tests.test_remote_user.AllowAllUsersRemoteUserBackendTest.test_known_user", # noqa
"auth_tests.test_remote_user.AllowAllUsersRemoteUserBackendTest.test_last_login", # noqa
"auth_tests.test_remote_user.AllowAllUsersRemoteUserBackendTest.test_unknown_user", # noqa
"auth_tests.test_remote_user.AllowAllUsersRemoteUserBackendTest.test_user_switch_forces_new_login", # noqa
"auth_tests.test_remote_user.CustomHeaderRemoteUserTest.test_header_disappears", # noqa
"auth_tests.test_remote_user.CustomHeaderRemoteUserTest.test_inactive_user", # noqa
"auth_tests.test_remote_user.CustomHeaderRemoteUserTest.test_known_user", # noqa
"auth_tests.test_remote_user.CustomHeaderRemoteUserTest.test_last_login", # noqa
"auth_tests.test_remote_user.CustomHeaderRemoteUserTest.test_unknown_user", # noqa
"auth_tests.test_remote_user.CustomHeaderRemoteUserTest.test_user_switch_forces_new_login", # noqa
"auth_tests.test_remote_user.PersistentRemoteUserTest.test_header_disappears", # noqa
"auth_tests.test_remote_user.PersistentRemoteUserTest.test_inactive_user", # noqa
"auth_tests.test_remote_user.PersistentRemoteUserTest.test_known_user", # noqa
"auth_tests.test_remote_user.PersistentRemoteUserTest.test_last_login", # noqa
"auth_tests.test_remote_user.PersistentRemoteUserTest.test_unknown_user", # noqa
"auth_tests.test_remote_user.PersistentRemoteUserTest.test_user_switch_forces_new_login", # noqa
"auth_tests.test_remote_user.RemoteUserCustomTest.test_header_disappears", # noqa
"auth_tests.test_remote_user.RemoteUserCustomTest.test_inactive_user", # noqa
"auth_tests.test_remote_user.RemoteUserCustomTest.test_known_user", # noqa
"auth_tests.test_remote_user.RemoteUserCustomTest.test_last_login", # noqa
"auth_tests.test_remote_user.RemoteUserCustomTest.test_unknown_user", # noqa
"auth_tests.test_remote_user.RemoteUserCustomTest.test_user_switch_forces_new_login", # noqa
"auth_tests.test_remote_user.RemoteUserNoCreateTest.test_header_disappears", # noqa
"auth_tests.test_remote_user.RemoteUserNoCreateTest.test_inactive_user", # noqa
"auth_tests.test_remote_user.RemoteUserNoCreateTest.test_known_user", # noqa
"auth_tests.test_remote_user.RemoteUserNoCreateTest.test_last_login", # noqa
"auth_tests.test_remote_user.RemoteUserNoCreateTest.test_user_switch_forces_new_login", # noqa
"auth_tests.test_remote_user.RemoteUserTest.test_header_disappears", # noqa
"auth_tests.test_remote_user.RemoteUserTest.test_inactive_user", # noqa
"auth_tests.test_remote_user.RemoteUserTest.test_known_user", # noqa
"auth_tests.test_remote_user.RemoteUserTest.test_last_login", # noqa
"auth_tests.test_remote_user.RemoteUserTest.test_unknown_user", # noqa
"auth_tests.test_remote_user.RemoteUserTest.test_user_switch_forces_new_login", # noqa
"auth_tests.test_remote_user_deprecation.RemoteUserCustomTest.test_configure_user_deprecation_warning", # noqa
"auth_tests.test_signals.SignalTestCase.test_failed_login_without_request", # noqa
"auth_tests.test_signals.SignalTestCase.test_login", # noqa
"auth_tests.test_signals.SignalTestCase.test_login_with_custom_user_without_last_login_field", # noqa
"auth_tests.test_signals.SignalTestCase.test_logout", # noqa
"auth_tests.test_signals.SignalTestCase.test_logout_anonymous", # noqa
"auth_tests.test_signals.SignalTestCase.test_update_last_login", # noqa
"auth_tests.test_templates.AuthTemplateTests.test_PasswordChangeDoneView", # noqa
"auth_tests.test_templates.AuthTemplateTests.test_PasswordResetChangeView", # noqa
"auth_tests.test_templates.AuthTemplateTests.test_PasswordResetCompleteView", # noqa
"auth_tests.test_templates.AuthTemplateTests.test_PasswordResetConfirmView_invalid_token", # noqa
"auth_tests.test_templates.AuthTemplateTests.test_PasswordResetConfirmView_valid_token", # noqa
"auth_tests.test_templates.AuthTemplateTests.test_PasswordResetDoneView", # noqa
"auth_tests.test_templates.AuthTemplateTests.test_PasswordResetView", # noqa
"auth_tests.test_tokens.TokenGeneratorTest.test_10265", # noqa
"auth_tests.test_tokens.TokenGeneratorTest.test_check_token_with_nonexistent_token_and_user", # noqa
"auth_tests.test_tokens.TokenGeneratorTest.test_make_token", # noqa
"auth_tests.test_tokens.TokenGeneratorTest.test_timeout", # noqa
"auth_tests.test_tokens.TokenGeneratorTest.test_token_with_different_secret", # noqa
"auth_tests.test_validators.UserAttributeSimilarityValidatorTest.test_validate", # noqa
"auth_tests.test_views.AuthViewNamedURLTests.test_named_urls", # noqa
"auth_tests.test_views.ChangePasswordTest.test_password_change_done_fails", # noqa
"auth_tests.test_views.ChangePasswordTest.test_password_change_done_succeeds", # noqa
"auth_tests.test_views.ChangePasswordTest.test_password_change_fails_with_invalid_old_password", # noqa
"auth_tests.test_views.ChangePasswordTest.test_password_change_fails_with_mismatched_passwords", # noqa
"auth_tests.test_views.ChangePasswordTest.test_password_change_redirect_custom", # noqa
"auth_tests.test_views.ChangePasswordTest.test_password_change_redirect_custom_named", # noqa
"auth_tests.test_views.ChangePasswordTest.test_password_change_redirect_default", # noqa
"auth_tests.test_views.ChangePasswordTest.test_password_change_succeeds", # noqa
"auth_tests.test_views.ChangelistTests.test_changelist_disallows_password_lookups", # noqa
"auth_tests.test_views.ChangelistTests.test_password_change_bad_url", # noqa
"auth_tests.test_views.ChangelistTests.test_user_change_different_user_password", # noqa
"auth_tests.test_views.ChangelistTests.test_user_change_email", # noqa
"auth_tests.test_views.ChangelistTests.test_user_change_password", # noqa
"auth_tests.test_views.ChangelistTests.test_user_change_password_passes_user_to_has_change_permission", # noqa
"auth_tests.test_views.ChangelistTests.test_user_not_change", # noqa
"auth_tests.test_views.ChangelistTests.test_view_user_password_is_readonly", # noqa
"auth_tests.test_views.CustomUserPasswordResetTest.test_confirm_valid_custom_user", # noqa
"auth_tests.test_views.LoginRedirectAuthenticatedUser.test_default", # noqa
"auth_tests.test_views.LoginRedirectAuthenticatedUser.test_guest", # noqa
"auth_tests.test_views.LoginRedirectAuthenticatedUser.test_permission_required_logged_in", # noqa
"auth_tests.test_views.LoginRedirectAuthenticatedUser.test_permission_required_not_logged_in", # noqa
"auth_tests.test_views.LoginRedirectAuthenticatedUser.test_redirect", # noqa
"auth_tests.test_views.LoginRedirectAuthenticatedUser.test_redirect_loop", # noqa
"auth_tests.test_views.LoginRedirectAuthenticatedUser.test_redirect_param", # noqa
"auth_tests.test_views.LoginRedirectAuthenticatedUser.test_redirect_url", # noqa
"auth_tests.test_views.LoginRedirectUrlTest.test_custom", # noqa
"auth_tests.test_views.LoginRedirectUrlTest.test_default", # noqa
"auth_tests.test_views.LoginRedirectUrlTest.test_named", # noqa
"auth_tests.test_views.LoginRedirectUrlTest.test_remote", # noqa
"auth_tests.test_views.LoginSuccessURLAllowedHostsTest.test_success_url_allowed_hosts_safe_host", # noqa
"auth_tests.test_views.LoginSuccessURLAllowedHostsTest.test_success_url_allowed_hosts_same_host", # noqa
"auth_tests.test_views.LoginSuccessURLAllowedHostsTest.test_success_url_allowed_hosts_unsafe_host", # noqa
"auth_tests.test_views.LoginTest.test_current_site_in_context_after_login", # noqa
"auth_tests.test_views.LoginTest.test_login_csrf_rotate", # noqa
"auth_tests.test_views.LoginTest.test_login_form_contains_request", # noqa
"auth_tests.test_views.LoginTest.test_login_session_without_hash_session_key", # noqa
"auth_tests.test_views.LoginTest.test_security_check", # noqa
"auth_tests.test_views.LoginTest.test_security_check_https", # noqa
"auth_tests.test_views.LoginTest.test_session_key_flushed_on_login", # noqa
"auth_tests.test_views.LoginTest.test_session_key_flushed_on_login_after_password_change", # noqa
"auth_tests.test_views.LoginURLSettings.test_https_login_url", # noqa
"auth_tests.test_views.LoginURLSettings.test_lazy_login_url", # noqa
"auth_tests.test_views.LoginURLSettings.test_login_url_with_querystring", # noqa
"auth_tests.test_views.LoginURLSettings.test_named_login_url", # noqa
"auth_tests.test_views.LoginURLSettings.test_remote_login_url", # noqa
"auth_tests.test_views.LoginURLSettings.test_remote_login_url_with_next_querystring", # noqa
"auth_tests.test_views.LoginURLSettings.test_standard_login_url", # noqa
"auth_tests.test_views.LogoutTest.test_14377", # noqa
"auth_tests.test_views.LogoutTest.test_logout_default", # noqa
"auth_tests.test_views.LogoutTest.test_logout_doesnt_cache", # noqa
"auth_tests.test_views.LogoutTest.test_logout_preserve_language", # noqa
"auth_tests.test_views.LogoutTest.test_logout_redirect_url_named_setting", # noqa
"auth_tests.test_views.LogoutTest.test_logout_redirect_url_setting", # noqa
"auth_tests.test_views.LogoutTest.test_logout_with_custom_redirect_argument", # noqa
"auth_tests.test_views.LogoutTest.test_logout_with_named_redirect", # noqa
"auth_tests.test_views.LogoutTest.test_logout_with_next_page_specified", # noqa
"auth_tests.test_views.LogoutTest.test_logout_with_overridden_redirect_url", # noqa
"auth_tests.test_views.LogoutTest.test_logout_with_post", # noqa
"auth_tests.test_views.LogoutTest.test_logout_with_redirect_argument", # noqa
"auth_tests.test_views.LogoutTest.test_security_check", # noqa
"auth_tests.test_views.LogoutTest.test_security_check_https", # noqa
"auth_tests.test_views.LogoutTest.test_success_url_allowed_hosts_safe_host", # noqa
"auth_tests.test_views.LogoutTest.test_success_url_allowed_hosts_same_host", # noqa
"auth_tests.test_views.LogoutTest.test_success_url_allowed_hosts_unsafe_host", # noqa
"auth_tests.test_views.LogoutThenLoginTests.test_default_logout_then_login", # noqa
"auth_tests.test_views.LogoutThenLoginTests.test_logout_then_login_with_custom_login", # noqa
"auth_tests.test_views.PasswordResetTest.test_confirm_complete", # noqa
"auth_tests.test_views.PasswordResetTest.test_confirm_different_passwords", # noqa
"auth_tests.test_views.PasswordResetTest.test_confirm_display_user_from_form", # noqa
"auth_tests.test_views.PasswordResetTest.test_confirm_invalid", # noqa
"auth_tests.test_views.PasswordResetTest.test_confirm_invalid_hash", # noqa
"auth_tests.test_views.PasswordResetTest.test_confirm_invalid_post", # noqa
"auth_tests.test_views.PasswordResetTest.test_confirm_invalid_user", # noqa
"auth_tests.test_views.PasswordResetTest.test_confirm_link_redirects_to_set_password_page", # noqa
"auth_tests.test_views.PasswordResetTest.test_confirm_login_post_reset", # noqa
"auth_tests.test_views.PasswordResetTest.test_confirm_login_post_reset_already_logged_in", # noqa
"auth_tests.test_views.PasswordResetTest.test_confirm_login_post_reset_custom_backend", # noqa
"auth_tests.test_views.PasswordResetTest.test_confirm_overflow_user", # noqa
"auth_tests.test_views.PasswordResetTest.test_confirm_redirect_custom", # noqa
"auth_tests.test_views.PasswordResetTest.test_confirm_redirect_custom_named", # noqa
"auth_tests.test_views.PasswordResetTest.test_confirm_redirect_default", # noqa
"auth_tests.test_views.PasswordResetTest.test_confirm_valid", # noqa
"auth_tests.test_views.PasswordResetTest.test_email_found", # noqa
"auth_tests.test_views.PasswordResetTest.test_email_found_custom_from", # noqa
"auth_tests.test_views.PasswordResetTest.test_email_not_found", # noqa
"auth_tests.test_views.PasswordResetTest.test_extra_email_context", # noqa
"auth_tests.test_views.PasswordResetTest.test_html_mail_template", # noqa
"auth_tests.test_views.PasswordResetTest.test_invalid_link_if_going_directly_to_the_final_reset_password_url", # noqa
"auth_tests.test_views.PasswordResetTest.test_poisoned_http_host", # noqa
"auth_tests.test_views.PasswordResetTest.test_poisoned_http_host_admin_site", # noqa
"auth_tests.test_views.PasswordResetTest.test_reset_custom_redirect", # noqa
"auth_tests.test_views.PasswordResetTest.test_reset_custom_redirect_named", # noqa
"auth_tests.test_views.PasswordResetTest.test_reset_redirect_default", # noqa
"auth_tests.test_views.RedirectToLoginTests.test_redirect_to_login_with_lazy", # noqa
"auth_tests.test_views.RedirectToLoginTests.test_redirect_to_login_with_lazy_and_unicode", # noqa
"auth_tests.test_views.SessionAuthenticationTests.test_user_password_change_updates_session", # noqa
"auth_tests.test_views.UUIDUserPasswordResetTest.test_confirm_invalid_uuid", # noqa
"auth_tests.test_views.UUIDUserPasswordResetTest.test_confirm_valid_custom_user", # noqa
"auth_tests.test_views.UUIDUserTests.test_admin_password_change", # noqa
"backends.tests.FkConstraintsTests.test_disable_constraint_checks_context_manager", # noqa
"backends.tests.FkConstraintsTests.test_disable_constraint_checks_manually", # noqa
"backends.tests.FkConstraintsTests.test_integrity_checks_on_creation", # noqa
"backends.tests.FkConstraintsTests.test_integrity_checks_on_update", # noqa
"basic.tests.ModelTest.test_ticket_20278",
"basic.tests.ModelRefreshTests.test_lookup_in_fields",
"basic.tests.ModelRefreshTests.test_prefetched_cache_cleared",
"basic.tests.ModelRefreshTests.test_lookup_in_fields",
"basic.tests.ModelRefreshTests.test_prefetched_cache_cleared",
"basic.tests.ModelRefreshTests.test_refresh_fk",
"basic.tests.ModelRefreshTests.test_refresh_fk_on_delete_set_null",
"basic.tests.ModelRefreshTests.test_refresh_null_fk",
"basic.tests.ModelRefreshTests.test_unknown_kwarg",
"bulk_create.tests.BulkCreateTests.test_bulk_insert_nullable_fields", # noqa
"custom_pk.tests.CustomPKTests.test_required_pk", # noqa
"custom_pk.tests.CustomPKTests.test_unique_pk", # noqa
"custom_lookups.tests.SubqueryTransformTests.test_subquery_usage", # noqa
"datatypes.tests.DataTypesTestCase.test_boolean_type", # noqa
"datatypes.tests.DataTypesTestCase.test_date_type", # noqa
"datatypes.tests.DataTypesTestCase.test_textfields_str", # noqa
"datatypes.tests.DataTypesTestCase.test_time_field", # noqa
"datatypes.tests.DataTypesTestCase.test_year_boundaries", # noqa
"dates.tests.DatesTests.test_related_model_traverse", # noqa
"datetimes.tests.DateTimesTests.test_datetimes_has_lazy_iterator", # noqa
"datetimes.tests.DateTimesTests.test_datetimes_returns_available_dates_for_given_scope_and_given_field", # noqa
"datetimes.tests.DateTimesTests.test_related_model_traverse", # noqa
"db_functions.comparison.test_cast.CastTests.test_cast_from_db_datetime_to_date", # noqa
"db_functions.comparison.test_cast.CastTests.test_cast_from_db_datetime_to_date_group_by", # noqa
"db_functions.comparison.test_cast.CastTests.test_cast_from_db_datetime_to_time", # noqa
"db_functions.comparison.test_cast.CastTests.test_cast_from_field", # noqa
"db_functions.comparison.test_cast.CastTests.test_cast_from_python", # noqa
"db_functions.comparison.test_cast.CastTests.test_cast_from_python_to_date", # noqa
"db_functions.comparison.test_cast.CastTests.test_cast_from_python_to_datetime", # noqa
"db_functions.comparison.test_cast.CastTests.test_cast_from_value", # noqa
"db_functions.comparison.test_cast.CastTests.test_cast_to_char_field_with_max_length", # noqa
"db_functions.comparison.test_cast.CastTests.test_cast_to_char_field_without_max_length", # noqa
"db_functions.comparison.test_cast.CastTests.test_cast_to_integer", # noqa
"db_functions.comparison.test_cast.CastTests.test_cast_to_text_field", # noqa
"db_functions.comparison.test_coalesce.CoalesceTests.test_basic", # noqa
"db_functions.comparison.test_coalesce.CoalesceTests.test_mixed_values", # noqa
"db_functions.comparison.test_coalesce.CoalesceTests.test_ordering", # noqa
"db_functions.comparison.test_greatest.GreatestTests.test_all_null", # noqa
"db_functions.comparison.test_greatest.GreatestTests.test_basic", # noqa
"db_functions.comparison.test_greatest.GreatestTests.test_coalesce_workaround", # noqa
"db_functions.comparison.test_greatest.GreatestTests.test_propagates_null", # noqa
"db_functions.comparison.test_greatest.GreatestTests.test_related_field", # noqa
"db_functions.comparison.test_greatest.GreatestTests.test_update", # noqa
"db_functions.comparison.test_least.LeastTests.test_all_null", # noqa
"db_functions.comparison.test_least.LeastTests.test_basic", # noqa
"db_functions.comparison.test_least.LeastTests.test_coalesce_workaround", # noqa
"db_functions.comparison.test_least.LeastTests.test_propagates_null", # noqa
"db_functions.comparison.test_least.LeastTests.test_related_field", # noqa
"db_functions.comparison.test_least.LeastTests.test_update", # noqa
"db_functions.comparison.test_nullif.NullIfTests.test_basic", # noqa