I'm using Devise and writing a test for the scenario of a user deleting their own account but I'm stuck on how I would call up the confirm box and click OK.
Here is the link and my test:
<p><%= link_to "Delete my account", registration_path(resource_name), :data => { :confirm => "Are you sure?" }, :method => :delete %></p>
spec/requests/users_spec.rb
scenario 'user deletes account' do
make_user_and_login
click_link('Account Settings')
page.should have_selector('title', :text => 'Account Settings')
click_link('Delete my account')
# Are You Sure?
# click OK in confirm box
# page.should etc.....
end
How would this be done?
Make sure capybara is using a driver which supports javascript. Then try this:
page.driver.browser.switch_to.alert.accept
Alternately, to cancel:
page.driver.browser.switch_to.alert.dismiss