improve selectors to pass capybara 2.0

This commit is contained in:
Dmitriy Zaporozhets 2013-02-21 11:27:22 +02:00
parent 03f6a28ec0
commit 42ce2c1080
4 changed files with 21 additions and 16 deletions

View file

@ -9,7 +9,7 @@
%fieldset %fieldset.update-token
%legend %legend
Private token Private token
%span.cred.pull-right %span.cred.pull-right
@ -29,7 +29,7 @@
%span You don`t have one yet. Click generate to fix it. %span You don`t have one yet. Click generate to fix it.
= f.submit 'Generate', class: "btn success btn-build-token" = f.submit 'Generate', class: "btn success btn-build-token"
%fieldset %fieldset.update-password
%legend Password %legend Password
= form_for @user, url: update_password_profile_path, method: :put do |f| = form_for @user, url: update_password_profile_path, method: :put do |f|
.padded .padded

View file

@ -23,16 +23,20 @@ class Profile < Spinach::FeatureSteps
end end
Then 'I change my password' do Then 'I change my password' do
within '.update-password' do
fill_in "user_password", :with => "222333" fill_in "user_password", :with => "222333"
fill_in "user_password_confirmation", :with => "222333" fill_in "user_password_confirmation", :with => "222333"
click_button "Save" click_button "Save"
end end
end
When 'I unsuccessfully change my password' do When 'I unsuccessfully change my password' do
within '.update-password' do
fill_in "user_password", with: "password" fill_in "user_password", with: "password"
fill_in "user_password_confirmation", with: "confirmation" fill_in "user_password_confirmation", with: "confirmation"
click_button "Save" click_button "Save"
end end
end
Then "I should see a password error message" do Then "I should see a password error message" do
page.should have_content "Password doesn't match confirmation" page.should have_content "Password doesn't match confirmation"
@ -43,9 +47,11 @@ class Profile < Spinach::FeatureSteps
end end
Then 'I reset my token' do Then 'I reset my token' do
within '.update-token' do
@old_token = @user.private_token @old_token = @user.private_token
click_button "Reset" click_button "Reset"
end end
end
And 'I should see new token' do And 'I should see new token' do
find("#token").value.should_not == @old_token find("#token").value.should_not == @old_token

View file

@ -22,7 +22,7 @@ module SharedDiffNote
Given 'I leave a diff comment like "Typo, please fix"' do Given 'I leave a diff comment like "Typo, please fix"' do
find("#586fb7c4e1add2d4d24e27566ed7064680098646_29_14.line_holder .js-add-diff-note-button").trigger("click") find("#586fb7c4e1add2d4d24e27566ed7064680098646_29_14.line_holder .js-add-diff-note-button").trigger("click")
within(".file") do within(".file form[rel$='586fb7c4e1add2d4d24e27566ed7064680098646_29_14']") do
fill_in "note[note]", with: "Typo, please fix" fill_in "note[note]", with: "Typo, please fix"
#click_button("Add Comment") #click_button("Add Comment")
find(".js-comment-button").trigger("click") find(".js-comment-button").trigger("click")
@ -32,7 +32,7 @@ module SharedDiffNote
Given 'I preview a diff comment text like "Should fix it :smile:"' do Given 'I preview a diff comment text like "Should fix it :smile:"' do
find("#586fb7c4e1add2d4d24e27566ed7064680098646_29_14.line_holder .js-add-diff-note-button").trigger("click") find("#586fb7c4e1add2d4d24e27566ed7064680098646_29_14.line_holder .js-add-diff-note-button").trigger("click")
within(".file") do within(".file form[rel$='586fb7c4e1add2d4d24e27566ed7064680098646_29_14']") do
fill_in "note[note]", with: "Should fix it :smile:" fill_in "note[note]", with: "Should fix it :smile:"
find(".js-note-preview-button").trigger("click") find(".js-note-preview-button").trigger("click")
end end
@ -40,7 +40,7 @@ module SharedDiffNote
Given 'I preview another diff comment text like "DRY this up"' do Given 'I preview another diff comment text like "DRY this up"' do
find("#586fb7c4e1add2d4d24e27566ed7064680098646_57_41.line_holder .js-add-diff-note-button").trigger("click") find("#586fb7c4e1add2d4d24e27566ed7064680098646_57_41.line_holder .js-add-diff-note-button").trigger("click")
within(".file") do within(".file form[rel$='586fb7c4e1add2d4d24e27566ed7064680098646_57_41']") do
fill_in "note[note]", with: "DRY this up" fill_in "note[note]", with: "DRY this up"
find(".js-note-preview-button").trigger("click") find(".js-note-preview-button").trigger("click")
end end

View file

@ -10,14 +10,13 @@ require 'capybara/rspec'
require 'webmock/rspec' require 'webmock/rspec'
require 'email_spec' require 'email_spec'
require 'sidekiq/testing/inline' require 'sidekiq/testing/inline'
require 'capybara/poltergeist'
Capybara.javascript_driver = :poltergeist
# Requires supporting ruby files with custom matchers and macros, etc, # Requires supporting ruby files with custom matchers and macros, etc,
# in spec/support/ and its subdirectories. # in spec/support/ and its subdirectories.
Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f} Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f}
require 'capybara/poltergeist'
Capybara.javascript_driver = :poltergeist
WebMock.disable_net_connect!(allow_localhost: true) WebMock.disable_net_connect!(allow_localhost: true)
RSpec.configure do |config| RSpec.configure do |config|