summaryrefslogtreecommitdiff
path: root/tests/admin_widgets
diff options
context:
space:
mode:
authorFlorian Apolloner <florian@apolloner.eu>2013-09-15 01:11:07 +0200
committerFlorian Apolloner <florian@apolloner.eu>2013-09-15 01:11:07 +0200
commit351a061497b262e2ef994552d04c31b63d801179 (patch)
tree548788dbc9a165f29302f253b819f19b4d97f262 /tests/admin_widgets
parent2fa0dd73b18f55d0fdd1c1d54b1d18031bfcf1ed (diff)
Fixed a timing edge case in the RelatedFieldWidgetSeleniumFirefoxTests.
By settings an implicit wait timeout for the find_* methods we can wait till the javascript code add the new option to the DOM. See http://ci.djangoproject.com/job/Django/database=mysql_gis,python=python3.3/3174/testReport/junit/admin_widgets.tests/RelatedFieldWidgetSeleniumFirefoxTests/test_foreign_key_using_to_field/ Stacktrace: Traceback (most recent call last): File "/var/lib/jenkins/jobs/Django/workspace/database/mysql_gis/python/python3.3/tests/admin_widgets/tests.py", line 1060, in test_foreign_key_using_to_field self.assertEqual(username_value, new_option.get_attribute('value')) AssertionError: 'newuser' != 'testser' - newuser + testser
Diffstat (limited to 'tests/admin_widgets')
-rw-r--r--tests/admin_widgets/tests.py9
1 files changed, 5 insertions, 4 deletions
diff --git a/tests/admin_widgets/tests.py b/tests/admin_widgets/tests.py
index 7eb68be4d0..c75ffe5def 100644
--- a/tests/admin_widgets/tests.py
+++ b/tests/admin_widgets/tests.py
@@ -1055,9 +1055,10 @@ class RelatedFieldWidgetSeleniumFirefoxTests(AdminSeleniumWebDriverTestCase):
save_button_css_selector = '.submit-row > input[type=submit]'
self.selenium.find_element_by_css_selector(save_button_css_selector).click()
self.selenium.switch_to_window(main_window)
- user_select = self.selenium.find_element_by_id('id_user')
- new_option = user_select.find_elements_by_tag_name('option')[-1]
- self.assertEqual(username_value, new_option.get_attribute('value'))
+ # Wait up to 2 seconds for the new option to show up after clicking save in the popup.
+ self.selenium.implicitly_wait(2)
+ self.selenium.find_element_by_css_selector('#id_user option[value=newuser]')
+ self.selenium.implicitly_wait(0)
# Go ahead and submit the form to make sure it works
self.selenium.find_element_by_css_selector(save_button_css_selector).click()
@@ -1070,4 +1071,4 @@ class RelatedFieldWidgetSeleniumChromeTests(RelatedFieldWidgetSeleniumFirefoxTes
webdriver_class = 'selenium.webdriver.chrome.webdriver.WebDriver'
class RelatedFieldWidgetSeleniumIETests(RelatedFieldWidgetSeleniumFirefoxTests):
- webdriver_class = 'selenium.webdriver.ie.webdriver.WebDriver' \ No newline at end of file
+ webdriver_class = 'selenium.webdriver.ie.webdriver.WebDriver'