2016-01-29 19:31:35 -05:00
|
|
|
Capybara::SpecHelper.spec '#match_css?' do
|
|
|
|
before do
|
|
|
|
@session.visit('/with_html')
|
|
|
|
@element = @session.find(:css, 'span', text: '42')
|
|
|
|
end
|
|
|
|
|
|
|
|
it "should be true if the given selector matches the element" do
|
|
|
|
expect(@element).to match_css("span")
|
|
|
|
expect(@element).to match_css("span.number")
|
|
|
|
end
|
|
|
|
|
|
|
|
it "should be false if the given selector does not match" do
|
|
|
|
expect(@element).not_to match_css("div")
|
|
|
|
expect(@element).not_to match_css("p a#doesnotexist")
|
|
|
|
expect(@element).not_to match_css("p.nosuchclass")
|
|
|
|
end
|
2016-11-18 18:22:04 -05:00
|
|
|
|
|
|
|
it "should accept an optional filter block" do
|
|
|
|
# This would be better done with
|
|
|
|
expect(@element).to match_css('span') { |el| el[:class] == "number" }
|
|
|
|
expect(@element).not_to match_css('span') { |el| el[:class] == "not_number" }
|
|
|
|
end
|
2016-01-29 19:31:35 -05:00
|
|
|
end
|