From cee95e6172f2ea3dbf8cfd4214562cfc92f95392 Mon Sep 17 00:00:00 2001 From: Adam Johnson Date: Thu, 29 Aug 2024 18:52:31 +0100 Subject: Fixed #35717 -- Reduced Create/RemoveCollation operations when optimizing migrations. --- tests/postgres_tests/test_operations.py | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) (limited to 'tests/postgres_tests') diff --git a/tests/postgres_tests/test_operations.py b/tests/postgres_tests/test_operations.py index f344d4ae74..322f38148b 100644 --- a/tests/postgres_tests/test_operations.py +++ b/tests/postgres_tests/test_operations.py @@ -318,7 +318,7 @@ class CreateExtensionTests(PostgreSQLTestCase): @unittest.skipUnless(connection.vendor == "postgresql", "PostgreSQL specific tests.") -class CreateCollationTests(PostgreSQLTestCase): +class CreateCollationTests(OptimizerTestBase, PostgreSQLTestCase): app_label = "test_allow_create_collation" @override_settings(DATABASE_ROUTERS=[NoMigrationRouter()]) @@ -459,6 +459,24 @@ class CreateCollationTests(PostgreSQLTestCase): "),", ) + def test_reduce_create_remove(self): + self.assertOptimizesTo( + [ + CreateCollation( + "sample_collation", + "und-u-ks-level2", + provider="icu", + deterministic=False, + ), + RemoveCollation( + "sample_collation", + # Different locale + "de-u-ks-level1", + ), + ], + [], + ) + @unittest.skipUnless(connection.vendor == "postgresql", "PostgreSQL specific tests.") class RemoveCollationTests(PostgreSQLTestCase): -- cgit v1.3