diff options
| author | Tim Graham <timograham@gmail.com> | 2016-03-24 16:22:35 -0400 |
|---|---|---|
| committer | Tim Graham <timograham@gmail.com> | 2016-03-25 14:22:38 -0400 |
| commit | 1f15d442bf59218fb62fd95cc065da1d9a14b577 (patch) | |
| tree | 8d33fc800f8ca80cc0927a535a8a029fed9bbf2b /tests | |
| parent | 9d0c8d3dd9dce720f0b91d30508278e45235a3a9 (diff) | |
[1.9.x] Fixed #26387 -- Restored the functionality of the admin's raw_id_fields in list_editable.
Backport of acfaec3db5ba39de52f6e607e74343dccf72fba1 from master
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/admin_views/admin.py | 8 | ||||
| -rw-r--r-- | tests/admin_views/tests.py | 17 |
2 files changed, 25 insertions, 0 deletions
diff --git a/tests/admin_views/admin.py b/tests/admin_views/admin.py index b3f7d05ca8..e14ac592c8 100644 --- a/tests/admin_views/admin.py +++ b/tests/admin_views/admin.py @@ -1008,5 +1008,13 @@ site.register(Group, GroupAdmin) site2 = admin.AdminSite(name="namespaced_admin") site2.register(User, UserAdmin) site2.register(Group, GroupAdmin) +site2.register(ParentWithUUIDPK) +site2.register( + RelatedWithUUIDPKModel, + list_display=['pk', 'parent'], + list_editable=['parent'], + raw_id_fields=['parent'], +) + site7 = admin.AdminSite(name="admin7") site7.register(Article, ArticleAdmin2) diff --git a/tests/admin_views/tests.py b/tests/admin_views/tests.py index 039ebec8f7..98830d40c0 100644 --- a/tests/admin_views/tests.py +++ b/tests/admin_views/tests.py @@ -4667,6 +4667,23 @@ class SeleniumAdminViewsFirefoxTests(AdminSeleniumWebDriverTestCase): self.assertEqual(select.first_selected_option.text, uuid_id) self.assertEqual(select.first_selected_option.get_attribute('value'), uuid_id) + def test_list_editable_raw_id_fields(self): + parent = ParentWithUUIDPK.objects.create(title='test') + parent2 = ParentWithUUIDPK.objects.create(title='test2') + RelatedWithUUIDPKModel.objects.create(parent=parent) + self.admin_login(username='super', password='secret', login_url=reverse('admin:index')) + change_url = reverse('admin:admin_views_relatedwithuuidpkmodel_changelist', current_app=site2.name) + self.selenium.get(self.live_server_url + change_url) + self.selenium.find_element_by_id('lookup_id_form-0-parent').click() + self.wait_for_popup() + self.selenium.switch_to.window(self.selenium.window_handles[-1]) + # Select "parent2" in the popup. + self.selenium.find_element_by_link_text(str(parent2.pk)).click() + self.selenium.switch_to.window(self.selenium.window_handles[0]) + # The newly selected pk should appear in the raw id input. + value = self.selenium.find_element_by_id('id_form-0-parent').get_attribute('value') + self.assertEqual(value, str(parent2.pk)) + class SeleniumAdminViewsChromeTests(SeleniumAdminViewsFirefoxTests): webdriver_class = 'selenium.webdriver.chrome.webdriver.WebDriver' |
