mirror of
				https://github.com/django/django.git
				synced 2025-10-30 17:16:10 +00:00 
			
		
		
		
	[2.0.x] Used a separate admin site for autocomplete tests.
Backport of 474bd7a5d4 from master
			
			
This commit is contained in:
		| @@ -1,7 +1,6 @@ | ||||
| import json | ||||
|  | ||||
| from django.contrib import admin | ||||
| from django.contrib.admin import site | ||||
| from django.contrib.admin.tests import AdminSeleniumTestCase | ||||
| from django.contrib.admin.views.autocomplete import AutocompleteJsonView | ||||
| from django.contrib.auth.models import Permission, User | ||||
| @@ -30,6 +29,7 @@ class BookAdmin(admin.ModelAdmin): | ||||
|     inlines = [AuthorshipInline] | ||||
|  | ||||
|  | ||||
| site = admin.AdminSite(name='autocomplete_admin') | ||||
| site.register(Question, QuestionAdmin) | ||||
| site.register(Answer, AnswerAdmin) | ||||
| site.register(Author, AuthorAdmin) | ||||
| @@ -39,7 +39,7 @@ site.register(Book, BookAdmin) | ||||
| class AutocompleteJsonViewTests(AdminViewBasicTestCase): | ||||
|     as_view_args = {'model_admin': QuestionAdmin(Question, site)} | ||||
|     factory = RequestFactory() | ||||
|     url = reverse_lazy('admin:admin_views_question_autocomplete') | ||||
|     url = reverse_lazy('autocomplete_admin:admin_views_question_autocomplete') | ||||
|  | ||||
|     @classmethod | ||||
|     def setUpTestData(cls): | ||||
| @@ -156,12 +156,12 @@ class SeleniumTests(AdminSeleniumTestCase): | ||||
|         self.superuser = User.objects.create_superuser( | ||||
|             username='super', password='secret', email='super@example.com', | ||||
|         ) | ||||
|         self.admin_login(username='super', password='secret', login_url=reverse('admin:index')) | ||||
|         self.admin_login(username='super', password='secret', login_url=reverse('autocomplete_admin:index')) | ||||
|  | ||||
|     def test_select(self): | ||||
|         from selenium.webdriver.common.keys import Keys | ||||
|         from selenium.webdriver.support.ui import Select | ||||
|         self.selenium.get(self.live_server_url + reverse('admin:admin_views_answer_add')) | ||||
|         self.selenium.get(self.live_server_url + reverse('autocomplete_admin:admin_views_answer_add')) | ||||
|         elem = self.selenium.find_element_by_css_selector('.select2-selection') | ||||
|         elem.click()  # Open the autocomplete dropdown. | ||||
|         results = self.selenium.find_element_by_css_selector('.select2-results') | ||||
| @@ -196,7 +196,7 @@ class SeleniumTests(AdminSeleniumTestCase): | ||||
|     def test_select_multiple(self): | ||||
|         from selenium.webdriver.common.keys import Keys | ||||
|         from selenium.webdriver.support.ui import Select | ||||
|         self.selenium.get(self.live_server_url + reverse('admin:admin_views_question_add')) | ||||
|         self.selenium.get(self.live_server_url + reverse('autocomplete_admin:admin_views_question_add')) | ||||
|         elem = self.selenium.find_element_by_css_selector('.select2-selection') | ||||
|         elem.click()  # Open the autocomplete dropdown. | ||||
|         results = self.selenium.find_element_by_css_selector('.select2-results') | ||||
|   | ||||
| @@ -1,6 +1,7 @@ | ||||
| from django.conf.urls import include, url | ||||
|  | ||||
| from . import admin, custom_has_permission_admin, customadmin, views | ||||
| from .test_autocomplete_view import site as autocomplete_site | ||||
|  | ||||
| urlpatterns = [ | ||||
|     url(r'^test_admin/admin/doc/', include('django.contrib.admindocs.urls')), | ||||
| @@ -15,4 +16,5 @@ urlpatterns = [ | ||||
|     # All admin views accept `extra_context` to allow adding it like this: | ||||
|     url(r'^test_admin/admin8/', (admin.site.get_urls(), 'admin', 'admin-extra-context'), {'extra_context': {}}), | ||||
|     url(r'^test_admin/has_permission_admin/', custom_has_permission_admin.site.urls), | ||||
|     url(r'^test_admin/autocomplete_admin/', autocomplete_site.urls), | ||||
| ] | ||||
|   | ||||
		Reference in New Issue
	
	Block a user