Commit 8d11c246 by Jonah Stanley

Merge pull request #516 from edx/jonahstanley/upgrade-chrome-version

Jonahstanley/upgrade chrome version
parents 15859dd8 dd0f7bc3
...@@ -252,7 +252,7 @@ def save_button_disabled(step): ...@@ -252,7 +252,7 @@ def save_button_disabled(step):
@step('I confirm the prompt') @step('I confirm the prompt')
def confirm_the_prompt(step): def confirm_the_prompt(step):
prompt_css = 'a.button.action-primary' prompt_css = 'a.button.action-primary'
world.css_click(prompt_css) world.css_click(prompt_css, success_condition=lambda: not world.css_visible(prompt_css))
@step(u'I am shown a (.*)$') @step(u'I am shown a (.*)$')
...@@ -262,6 +262,7 @@ def i_am_shown_a_notification(step, notification_type): ...@@ -262,6 +262,7 @@ def i_am_shown_a_notification(step, notification_type):
def type_in_codemirror(index, text): def type_in_codemirror(index, text):
world.css_click(".CodeMirror", index=index) world.css_click(".CodeMirror", index=index)
world.browser.execute_script("$('div.CodeMirror.CodeMirror-focused > div').css('overflow', '')")
g = world.css_find("div.CodeMirror.CodeMirror-focused > div > textarea") g = world.css_find("div.CodeMirror.CodeMirror-focused > div > textarea")
if world.is_mac(): if world.is_mac():
g._element.send_keys(Keys.COMMAND + 'a') g._element.send_keys(Keys.COMMAND + 'a')
......
...@@ -12,6 +12,10 @@ def create_component_instance(step, component_button_css, category, ...@@ -12,6 +12,10 @@ def create_component_instance(step, component_button_css, category,
has_multiple_templates=True): has_multiple_templates=True):
click_new_component_button(step, component_button_css) click_new_component_button(step, component_button_css)
if category in ('problem', 'html'):
def animation_done(_driver):
return world.browser.evaluate_script("$('div.new-component').css('display')") == 'none'
world.wait_for(animation_done)
if has_multiple_templates: if has_multiple_templates:
click_component_from_menu(category, boilerplate, expected_css) click_component_from_menu(category, boilerplate, expected_css)
...@@ -22,6 +26,7 @@ def create_component_instance(step, component_button_css, category, ...@@ -22,6 +26,7 @@ def create_component_instance(step, component_button_css, category,
"Component instance with css {css} was not created successfully".format(css=expected_css)) "Component instance with css {css} was not created successfully".format(css=expected_css))
@world.absorb @world.absorb
def click_new_component_button(step, component_button_css): def click_new_component_button(step, component_button_css):
step.given('I have clicked the new unit button') step.given('I have clicked the new unit button')
...@@ -43,11 +48,13 @@ def click_component_from_menu(category, boilerplate, expected_css): ...@@ -43,11 +48,13 @@ def click_component_from_menu(category, boilerplate, expected_css):
elem_css = "a[data-category='{}']:not([data-boilerplate])".format(category) elem_css = "a[data-category='{}']:not([data-boilerplate])".format(category)
elements = world.css_find(elem_css) elements = world.css_find(elem_css)
assert_equal(len(elements), 1) assert_equal(len(elements), 1)
world.css_click(elem_css) world.wait_for(lambda _driver: world.css_visible(elem_css))
world.css_click(elem_css, success_condition=lambda: 1 == len(world.css_find(expected_css)))
@world.absorb @world.absorb
def edit_component_and_select_settings(): def edit_component_and_select_settings():
world.wait_for(lambda _driver: world.css_visible('a.edit-button'))
world.css_click('a.edit-button') world.css_click('a.edit-button')
world.css_click('#settings-mode') world.css_click('#settings-mode')
......
...@@ -155,6 +155,10 @@ def cancel_does_not_save_changes(step): ...@@ -155,6 +155,10 @@ def cancel_does_not_save_changes(step):
@step('I have created a LaTeX Problem') @step('I have created a LaTeX Problem')
def create_latex_problem(step): def create_latex_problem(step):
world.click_new_component_button(step, '.large-problem-icon') world.click_new_component_button(step, '.large-problem-icon')
def animation_done(_driver):
return world.browser.evaluate_script("$('div.new-component').css('display')") == 'none'
world.wait_for(animation_done)
# Go to advanced tab. # Go to advanced tab.
world.css_click('#ui-id-2') world.css_click('#ui-id-2')
world.click_component_from_menu("problem", "latex_problem.yaml", '.xmodule_CapaModule') world.click_component_from_menu("problem", "latex_problem.yaml", '.xmodule_CapaModule')
......
...@@ -58,7 +58,7 @@ def delete_file(_step, file_name): ...@@ -58,7 +58,7 @@ def delete_file(_step, file_name):
world.css_click(delete_css, index=index) world.css_click(delete_css, index=index)
prompt_confirm_css = 'li.nav-item > a.action-primary' prompt_confirm_css = 'li.nav-item > a.action-primary'
world.css_click(prompt_confirm_css) world.css_click(prompt_confirm_css, success_condition=lambda: not world.css_visible(prompt_confirm_css))
@step(u'I should see only one "([^"]*)"$') @step(u'I should see only one "([^"]*)"$')
......
...@@ -19,5 +19,6 @@ def i_see_the_correct_settings_and_values(step): ...@@ -19,5 +19,6 @@ def i_see_the_correct_settings_and_values(step):
@step('I have set "show captions" to (.*)') @step('I have set "show captions" to (.*)')
def set_show_captions(step, setting): def set_show_captions(step, setting):
world.css_click('a.edit-button') world.css_click('a.edit-button')
world.wait_for(lambda _driver: world.css_visible('a.save-button'))
world.browser.select('Show Captions', setting) world.browser.select('Show Captions', setting)
world.css_click('a.save-button') world.css_click('a.save-button')
...@@ -186,8 +186,8 @@ uses [Selenium](http://docs.seleniumhq.org/) to control the Chrome browser. ...@@ -186,8 +186,8 @@ uses [Selenium](http://docs.seleniumhq.org/) to control the Chrome browser.
**Prerequisite**: You must have [ChromeDriver](https://code.google.com/p/selenium/wiki/ChromeDriver) **Prerequisite**: You must have [ChromeDriver](https://code.google.com/p/selenium/wiki/ChromeDriver)
installed to run the tests in Chrome. The tests are confirmed to run installed to run the tests in Chrome. The tests are confirmed to run
with Chrome (not Chromium) version 26.0.0.1410.63 with ChromeDriver with Chrome (not Chromium) version 28.0.1500.71 with ChromeDriver
version r195636. version 2.1.210398.
To run all the acceptance tests: To run all the acceptance tests:
......
...@@ -8,7 +8,7 @@ from nose.tools import assert_in, assert_equals ...@@ -8,7 +8,7 @@ from nose.tools import assert_in, assert_equals
@step(u'I should see the following Partners in the Partners section') @step(u'I should see the following Partners in the Partners section')
def i_should_see_partner(step): def i_should_see_partner(step):
partners = world.browser.find_by_css(".partner .name span") partners = world.browser.find_by_css(".partner .name span")
names = set(span.text for span in partners) names = set(span.html for span in partners)
for partner in step.hashes: for partner in step.hashes:
assert_in(partner['Partner'], names) assert_in(partner['Partner'], names)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment