瀏覽代碼

Fixed isolation of test_showmigrations_unmigrated_app().

Follow up to 90916f050c64b817fdf2ea13b5c20986005fd029.
Mariusz Felisiak 3 年之前
父節點
當前提交
2f435e75ab
共有 1 個文件被更改,包括 9 次插入1 次删除
  1. 9 1
      tests/migrations/test_commands.py

+ 9 - 1
tests/migrations/test_commands.py

@@ -670,7 +670,15 @@ class MigrateTests(MigrationTestBase):
     def test_showmigrations_plan_app_label_no_migrations(self):
         out = io.StringIO()
         call_command('showmigrations', 'unmigrated_app', format='plan', stdout=out, no_color=True)
-        self.assertEqual('(no migrations)\n', out.getvalue())
+        try:
+            self.assertEqual('(no migrations)\n', out.getvalue())
+        finally:
+            # unmigrated_app.SillyModel has a foreign key to
+            # 'migrations.Tribble', but that model is only defined in a
+            # migration, so the global app registry never sees it and the
+            # reference is left dangling. Remove it to avoid problems in
+            # subsequent tests.
+            apps._pending_operations.pop(('migrations', 'tribble'), None)
 
     @override_settings(MIGRATION_MODULES={"migrations": "migrations.test_migrations"})
     def test_sqlmigrate_forwards(self):