From 8008795a3899d979d65832ca7c4946903de206f7 Mon Sep 17 00:00:00 2001
From: John Bowen <jbowen7@gmail.com>
Date: Fri, 22 Nov 2019 19:41:56 +0000
Subject: [PATCH] Refs #23950 --- Moved test DeconstructibleInstances class to
 a module level.

DeconstructibleInstances was not importable from the asserted path.
---
 tests/migrations/test_writer.py | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/tests/migrations/test_writer.py b/tests/migrations/test_writer.py
index ca924f35ec..addf10b0f0 100644
--- a/tests/migrations/test_writer.py
+++ b/tests/migrations/test_writer.py
@@ -26,6 +26,11 @@ from django.utils.translation import gettext_lazy as _
 from .models import FoodManager, FoodQuerySet
 
 
+class DeconstructibleInstances:
+    def deconstruct(self):
+        return ('DeconstructibleInstances', [], {})
+
+
 class Money(decimal.Decimal):
     def deconstruct(self):
         return (
@@ -726,10 +731,6 @@ class WriterTests(SimpleTestCase):
         # Yes, it doesn't make sense to use a class as a default for a
         # CharField. It does make sense for custom fields though, for example
         # an enumfield that takes the enum class as an argument.
-        class DeconstructibleInstances:
-            def deconstruct(self):
-                return ('DeconstructibleInstances', [], {})
-
         string = MigrationWriter.serialize(models.CharField(default=DeconstructibleInstances))[0]
         self.assertEqual(string, "models.CharField(default=migrations.test_writer.DeconstructibleInstances)")