summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorAnssi Kääriäinen <akaariai@gmail.com>2013-02-20 03:08:55 +0200
committerAnssi Kääriäinen <akaariai@gmail.com>2013-02-21 00:01:07 +0200
commit96790fc02214b4d36df0ecb630159e65b28a5174 (patch)
tree5b7fbffb678ad4c952ca4cc7cfea20c80fd7108b /tests
parent8ad436636fd385abd144274952b0c066885af042 (diff)
[1.5.x] Made a couple of selenium tests wait for page loaded
The admin_widgets tests were issuing click() to the browser but didn't wait for the effects of those clicks. This caused the resulting request to be processed concurrently with the test case. When using in-memory SQLite this caused weird failures. Also added wait_page_loaded() to admin selenium tests for code reuse. Fixed #19856, backpatch of 50677b29af39ca670274fb45087415c883c78b04
Diffstat (limited to 'tests')
-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
3 files changed, 6 insertions, 20 deletions
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])