From 241ba23870221085cc31ae302b9647f375f9c6c6 Mon Sep 17 00:00:00 2001 From: Jacob Walls Date: Fri, 27 Aug 2021 09:10:48 -0400 Subject: [PATCH] Refs #29470 -- Added makemigrations test for adding fields with no default and auto_now_add=True in non-interactive mode. --- tests/migrations/test_commands.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/tests/migrations/test_commands.py b/tests/migrations/test_commands.py index 19bd0ef0431..3e76332630e 100644 --- a/tests/migrations/test_commands.py +++ b/tests/migrations/test_commands.py @@ -1872,6 +1872,21 @@ class MakeMigrationsTests(MigrationTestBase): with self.assertRaises(SystemExit): call_command('makemigrations', 'migrations', interactive=True) + def test_makemigrations_non_interactive_auto_now_add_addition(self): + """ + Non-interactive makemigrations fails when a default is missing on a + new field when auto_now_add=True. + """ + class Entry(models.Model): + creation_date = models.DateTimeField(auto_now_add=True) + + class Meta: + app_label = 'migrations' + + with self.temporary_migration_module(module='migrations.test_auto_now_add'): + with self.assertRaises(SystemExit): + call_command('makemigrations', 'migrations', interactive=False) + def test_makemigrations_interactive_unique_callable_default_addition(self): """ makemigrations prompts the user when adding a unique field with