Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Fixed #21115 -- Fixed NameError in migrate --list command

  • Loading branch information...
commit a772ea8117c42a0027c79212a572f87614bb7173 1 parent 2c60797
@MarkusH MarkusH authored timgraham committed
View
2  django/core/management/commands/migrate.py
@@ -264,7 +264,7 @@ def show_migration_list(self, connection, apps=None):
if apps:
invalid_apps = []
for app in apps:
- if app_label not in loader.migrated_apps:
+ if app not in loader.migrated_apps:
invalid_apps.append(app)
if invalid_apps:
raise CommandError("No migrations present for: %s" % (", ".join(invalid_apps)))
View
22 tests/migrations/test_commands.py
@@ -49,6 +49,28 @@ def test_migrate(self):
self.assertTableNotExists("migrations_book")
@override_settings(MIGRATION_MODULES={"migrations": "migrations.test_migrations"})
+ def test_migrate_list(self):
+ """
+ Tests --list output of migrate command
+ """
+ stdout = six.StringIO()
+ call_command("migrate", list=True, stdout=stdout, verbosity=0)
+ self.assertIn("migrations", stdout.getvalue().lower())
+ self.assertIn("[ ] 0001_initial", stdout.getvalue().lower())
+ self.assertIn("[ ] 0002_second", stdout.getvalue().lower())
+
+ call_command("migrate", "migrations", "0001", verbosity=0)
+
+ stdout = six.StringIO()
+ # Giving the explicit app_label tests for selective `show_migration_list` in the command
+ call_command("migrate", "migrations", list=True, stdout=stdout, verbosity=0)
+ self.assertIn("migrations", stdout.getvalue().lower())
+ self.assertIn("[x] 0001_initial", stdout.getvalue().lower())
+ self.assertIn("[ ] 0002_second", stdout.getvalue().lower())
+ # Cleanup by unmigrating everything
+ call_command("migrate", "migrations", "zero", verbosity=0)
+
+ @override_settings(MIGRATION_MODULES={"migrations": "migrations.test_migrations"})
def test_sqlmigrate(self):
"""
Makes sure that sqlmigrate does something.
Please sign in to comment.
Something went wrong with that request. Please try again.