1
0
forked from pool/python-Django
python-Django/fix_test_custom_fields_SQLite.patch
Alberto Planas Dominguez 4c26df157f Accepting request 958255 from home:aplanas:branches:devel:languages:python:django
- Update to 4.0.3
  + Prevented, following a regression in Django 4.0.1, makemigrations
    from generating infinite migrations for a model with
    ManyToManyField to a lowercased swappable model such as
    'auth.user'
  + Fixed a regression in Django 4.0 that caused a crash when
    rendering invalid inlines with readonly_fields in the admin

OBS-URL: https://build.opensuse.org/request/show/958255
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:django/python-Django?expand=0&rev=102
2022-03-01 11:24:38 +00:00

42 lines
1.7 KiB
Diff

From 402ed030933ffa1af74db50f737872d48f0152bb Mon Sep 17 00:00:00 2001
From: Mariusz Felisiak <felisiak.mariusz@gmail.com>
Date: Thu, 9 Dec 2021 13:21:36 +0100
Subject: [PATCH] Fixed inspectdb.tests.InspectDBTestCase.test_custom_fields()
on SQLite 3.37+.
Use FlexibleFieldLookupDict which is case-insensitive mapping because
SQLite 3.37+ returns some data type names uppercased e.g. TEXT.
---
tests/inspectdb/tests.py | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
Index: Django-4.0.3/tests/inspectdb/tests.py
===================================================================
--- Django-4.0.3.orig/tests/inspectdb/tests.py
+++ Django-4.0.3/tests/inspectdb/tests.py
@@ -387,18 +387,18 @@ class InspectDBTestCase(TestCase):
Introspection of columns with a custom field (#21090)
"""
out = StringIO()
- orig_data_types_reverse = connection.introspection.data_types_reverse
- try:
- connection.introspection.data_types_reverse = {
+ with mock.patch(
+ "django.db.connection.introspection.data_types_reverse."
+ "base_data_types_reverse",
+ {
"text": "myfields.TextField",
"bigint": "BigIntegerField",
- }
+ },
+ ):
call_command("inspectdb", "inspectdb_columntypes", stdout=out)
output = out.getvalue()
self.assertIn("text_field = myfields.TextField()", output)
self.assertIn("big_int_field = models.BigIntegerField()", output)
- finally:
- connection.introspection.data_types_reverse = orig_data_types_reverse
def test_introspection_errors(self):
"""