summaryrefslogtreecommitdiff
path: root/tests/generic_inline_admin
diff options
context:
space:
mode:
Diffstat (limited to 'tests/generic_inline_admin')
-rw-r--r--tests/generic_inline_admin/admin.py2
-rw-r--r--tests/generic_inline_admin/tests.py22
-rw-r--r--tests/generic_inline_admin/urls.py2
3 files changed, 21 insertions, 5 deletions
diff --git a/tests/generic_inline_admin/admin.py b/tests/generic_inline_admin/admin.py
index 73cac7f7c5..1917024fa5 100644
--- a/tests/generic_inline_admin/admin.py
+++ b/tests/generic_inline_admin/admin.py
@@ -1,5 +1,3 @@
-from __future__ import absolute_import
-
from django.contrib import admin
from django.contrib.contenttypes import generic
diff --git a/tests/generic_inline_admin/tests.py b/tests/generic_inline_admin/tests.py
index ac2c191183..83bee2f4e0 100644
--- a/tests/generic_inline_admin/tests.py
+++ b/tests/generic_inline_admin/tests.py
@@ -1,5 +1,5 @@
# -*- coding: utf-8 -*-
-from __future__ import absolute_import, unicode_literals
+from __future__ import unicode_literals
from django.conf import settings
from django.contrib import admin
@@ -325,3 +325,23 @@ class GenericInlineModelAdminTest(TestCase):
self.assertEqual(
list(list(ma.get_formsets(request))[0]().forms[0].fields),
['description', 'keywords', 'id', 'DELETE'])
+
+ def test_get_fieldsets(self):
+ # Test that get_fieldsets is called when figuring out form fields.
+ # Refs #18681.
+ class MediaForm(ModelForm):
+ class Meta:
+ model = Media
+ fields = '__all__'
+
+ class MediaInline(GenericTabularInline):
+ form = MediaForm
+ model = Media
+ can_delete = False
+
+ def get_fieldsets(self, request, obj=None):
+ return [(None, {'fields': ['url', 'description']})]
+
+ ma = MediaInline(Media, self.site)
+ form = ma.get_formset(None).form
+ self.assertEqual(form._meta.fields, ['url', 'description'])
diff --git a/tests/generic_inline_admin/urls.py b/tests/generic_inline_admin/urls.py
index 88d7b574d4..8d68d6c922 100644
--- a/tests/generic_inline_admin/urls.py
+++ b/tests/generic_inline_admin/urls.py
@@ -1,5 +1,3 @@
-from __future__ import absolute_import
-
from django.conf.urls import patterns, include
from . import admin