summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--django/contrib/admin/tests.py17
-rw-r--r--tests/regressiontests/admin_inlines/tests.py10
-rw-r--r--tests/regressiontests/admin_views/tests.py11
-rw-r--r--tests/regressiontests/admin_widgets/tests.py5
4 files changed, 21 insertions, 22 deletions
diff --git a/django/contrib/admin/tests.py b/django/contrib/admin/tests.py
index 7c62c1a22f..78e68e79c2 100644
--- a/django/contrib/admin/tests.py
+++ b/django/contrib/admin/tests.py
@@ -45,6 +45,20 @@ class AdminSeleniumWebDriverTestCase(LiveServerTestCase):
timeout
)
+ def wait_page_loaded(self):
+ """
+ Block until page has started to load.
+ """
+ from selenium.common.exceptions import TimeoutException
+ try:
+ # Wait for the next page to be loaded
+ self.wait_loaded_tag('body')
+ except TimeoutException:
+ # IE7 occasionnally returns an error "Internet Explorer cannot
+ # display the webpage" and doesn't load the next page. We just
+ # ignore it.
+ pass
+
def admin_login(self, username, password, login_url='/admin/'):
"""
Helper function to log into the admin.
@@ -57,8 +71,7 @@ class AdminSeleniumWebDriverTestCase(LiveServerTestCase):
login_text = _('Log in')
self.selenium.find_element_by_xpath(
'//input[@value="%s"]' % login_text).click()
- # Wait for the next page to be loaded.
- self.wait_loaded_tag('body')
+ self.wait_page_loaded()
def get_css_value(self, selector, attribute):
"""
diff --git a/tests/regressiontests/admin_inlines/tests.py b/tests/regressiontests/admin_inlines/tests.py
index 54283bf509..f5a54b08b6 100644
--- a/tests/regressiontests/admin_inlines/tests.py
+++ b/tests/regressiontests/admin_inlines/tests.py
@@ -546,15 +546,7 @@ class SeleniumFirefoxTests(AdminSeleniumWebDriverTestCase):
self.selenium.find_element_by_name('profile_set-2-last_name').send_keys('2 last name 2')
self.selenium.find_element_by_xpath('//input[@value="Save"]').click()
-
- try:
- # Wait for the next page to be loaded.
- self.wait_loaded_tag('body')
- except TimeoutException:
- # IE7 occasionnally returns an error "Internet Explorer cannot
- # display the webpage" and doesn't load the next page. We just
- # ignore it.
- pass
+ self.wait_page_loaded()
# Check that the objects have been created in the database
self.assertEqual(ProfileCollection.objects.all().count(), 1)
diff --git a/tests/regressiontests/admin_views/tests.py b/tests/regressiontests/admin_views/tests.py
index 740c40b4fa..72c182908e 100644
--- a/tests/regressiontests/admin_views/tests.py
+++ b/tests/regressiontests/admin_views/tests.py
@@ -3262,16 +3262,7 @@ class SeleniumPrePopulatedFirefoxTests(AdminSeleniumWebDriverTestCase):
# Save and check that everything is properly stored in the database
self.selenium.find_element_by_xpath('//input[@value="Save"]').click()
-
- try:
- # Wait for the next page to be loaded.
- self.wait_loaded_tag('body')
- except TimeoutException:
- # IE7 occasionnally returns an error "Internet Explorer cannot
- # display the webpage" and doesn't load the next page. We just
- # ignore it.
- pass
-
+ self.wait_page_loaded()
self.assertEqual(MainPrepopulated.objects.all().count(), 1)
MainPrepopulated.objects.get(
name=' this is the mAin nÀMë and it\'s awεšome',
diff --git a/tests/regressiontests/admin_widgets/tests.py b/tests/regressiontests/admin_widgets/tests.py
index 76aa9f448f..fa599c618c 100644
--- a/tests/regressiontests/admin_widgets/tests.py
+++ b/tests/regressiontests/admin_widgets/tests.py
@@ -651,12 +651,14 @@ class HorizontalVerticalFilterSeleniumFirefoxTests(AdminSeleniumWebDriverTestCas
self.selenium.get(
'%s%s' % (self.live_server_url, '/admin_widgets/school/%s/' % self.school.id))
+ self.wait_page_loaded()
self.execute_basic_operations('vertical', 'students')
self.execute_basic_operations('horizontal', 'alumni')
# Save and check that everything is properly stored in the database ---
self.selenium.find_element_by_xpath('//input[@value="Save"]').click()
- self.school = models.School.objects.get(id=self.school.id) # Reload from database
+ self.wait_page_loaded()
+ self.school = models.School.objects.get(id=self.school.id) # Reload from database
self.assertEqual(list(self.school.students.all()),
[self.arthur, self.cliff, self.jason, self.john])
self.assertEqual(list(self.school.alumni.all()),
@@ -735,6 +737,7 @@ class HorizontalVerticalFilterSeleniumFirefoxTests(AdminSeleniumWebDriverTestCas
# Save and check that everything is properly stored in the database ---
self.selenium.find_element_by_xpath('//input[@value="Save"]').click()
+ self.wait_page_loaded()
self.school = models.School.objects.get(id=self.school.id) # Reload from database
self.assertEqual(list(self.school.students.all()),
[self.jason, self.peter])