summaryrefslogtreecommitdiff
path: root/tests/admin_inlines
diff options
context:
space:
mode:
authorClaude Paroz <claude@2xlibre.net>2019-05-11 12:30:19 +0200
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2019-05-17 07:46:45 +0200
commite286987a27271c8ee7eb6e4d4332b563c4e6094b (patch)
tree329f6d0e597728252a22d72e3db1012c89f0c039 /tests/admin_inlines
parent59ffafa1d2f466fa7aacbe74fe2787b2004b7871 (diff)
downloaddjango-e286987a27271c8ee7eb6e4d4332b563c4e6094b.tar.gz
Fixed #30459 -- Delegated hide/show JS toggle to parent div.
Co-authored-by: Carlton Gibson <carlton.gibson@noumenal.es>
Diffstat (limited to 'tests/admin_inlines')
-rw-r--r--tests/admin_inlines/admin.py18
-rw-r--r--tests/admin_inlines/tests.py18
2 files changed, 34 insertions, 2 deletions
diff --git a/tests/admin_inlines/admin.py b/tests/admin_inlines/admin.py
index b5f343a55b..dd2624943e 100644
--- a/tests/admin_inlines/admin.py
+++ b/tests/admin_inlines/admin.py
@@ -3,13 +3,14 @@ from django.contrib import admin
from django.db import models
from .models import (
- Author, BinaryTree, CapoFamiglia, Chapter, ChildModel1, ChildModel2,
+ Author, BinaryTree, CapoFamiglia, Chapter, Child, ChildModel1, ChildModel2,
Consigliere, EditablePKBook, ExtraTerrestrial, Fashionista, Holder,
Holder2, Holder3, Holder4, Inner, Inner2, Inner3, Inner4Stacked,
Inner4Tabular, NonAutoPKBook, NonAutoPKBookChild, Novel,
NovelReadonlyChapter, ParentModelWithCustomPk, Poll, Profile,
ProfileCollection, Question, ReadOnlyInline, ShoppingWeakness, Sighting,
- SomeChildModel, SomeParentModel, SottoCapo, Title, TitleCollection,
+ SomeChildModel, SomeParentModel, SottoCapo, Teacher, Title,
+ TitleCollection,
)
site = admin.AdminSite(name="admin")
@@ -235,6 +236,18 @@ class SomeChildModelInline(admin.TabularInline):
readonly_fields = ('readonly_field',)
+class StudentInline(admin.StackedInline):
+ model = Child
+ extra = 1
+ fieldsets = [
+ ('Name', {'fields': ('name',), 'classes': ('collapse',)}),
+ ]
+
+
+class TeacherAdmin(admin.ModelAdmin):
+ inlines = [StudentInline]
+
+
site.register(TitleCollection, inlines=[TitleInline])
# Test bug #12561 and #12778
# only ModelAdmin media
@@ -257,3 +270,4 @@ site.register(BinaryTree, inlines=[BinaryTreeAdmin])
site.register(ExtraTerrestrial, inlines=[SightingInline])
site.register(SomeParentModel, inlines=[SomeChildModelInline])
site.register([Question, Inner4Stacked, Inner4Tabular])
+site.register(Teacher, TeacherAdmin)
diff --git a/tests/admin_inlines/tests.py b/tests/admin_inlines/tests.py
index 736c2eab89..09fcd0f300 100644
--- a/tests/admin_inlines/tests.py
+++ b/tests/admin_inlines/tests.py
@@ -1024,3 +1024,21 @@ class SeleniumTests(AdminSeleniumTestCase):
self.wait_until_visible(field_name)
hide_links[hide_index].click()
self.wait_until_invisible(field_name)
+
+ def test_added_stacked_inline_with_collapsed_fields(self):
+ self.admin_login(username='super', password='secret')
+ self.selenium.get(self.live_server_url + reverse('admin:admin_inlines_teacher_add'))
+ self.selenium.find_element_by_link_text('Add another Child').click()
+ test_fields = ['#id_child_set-0-name', '#id_child_set-1-name']
+ show_links = self.selenium.find_elements_by_link_text('SHOW')
+ self.assertEqual(len(show_links), 2)
+ for show_index, field_name in enumerate(test_fields, 0):
+ self.wait_until_invisible(field_name)
+ show_links[show_index].click()
+ self.wait_until_visible(field_name)
+ hide_links = self.selenium.find_elements_by_link_text('HIDE')
+ self.assertEqual(len(hide_links), 2)
+ for hide_index, field_name in enumerate(test_fields, 0):
+ self.wait_until_visible(field_name)
+ hide_links[hide_index].click()
+ self.wait_until_invisible(field_name)