Gem's
gem 'cucumber', '1.3.3'
gem 'capybara','2.1.0'
Problem:
There is a js pop-up when I click an image(alt="Controls"), which has two buttons : "Save" and "Remove". It works like a charm on selenium but I just cannot seem to press any buttons with Capy-webkit.
Codes:
page.find(:xpath,'//img[@alt="Controls"]').click
if ENV['TEST_BROWSER'] == 'headless'
handle_js_confirm
#page.evaluate_script('window.confirm = function() { return true; }')
#page.click('Remove')
#page.find(:xpath,'//button[@class="tiny-action button negative remove"]').click_
#handle_js_confirm("Remove")
#page.driver.confirm_messages
#page.driver.browser.accept_js_confirms
#page.driver.browser.reject_js_confirms
#page.driver.dismiss_js_confirms!
else
find(:button,'Remove').click
end
Method:
def handle_js_confirm(accept=true)
if ENV['TEST_BROWSER'] == 'headless'
page.evaluate_script "window.original_confirm_function = window.confirm"
page.evaluate_script "window.confirm = function(msg) { return #{!!accept}; }"
page.evaluate_script "window.confirm = window.original_confirm_function"
else
page.driver.browser.switch_to.alert.accept
end
end
PAGE-html:
(Attached screen shot)
Any help would be greatly appreciated.
Thank you for reading.
Shahbaz