26 lines
777 B
Ruby
26 lines
777 B
Ruby
RSpec::Matchers.define :be_rendered do |with: nil|
|
|
match do |page|
|
|
if with.nil?
|
|
!page.native.inner_html.empty?
|
|
else
|
|
page.has_css?("body") && page.find("body").native.inner_html == with
|
|
end
|
|
end
|
|
|
|
failure_message do |page|
|
|
if page.has_css?("body")
|
|
"expected page to be rendered with #{with}, but was rendered with #{page.find("body").native.inner_html}"
|
|
else
|
|
"expected page to be rendered with #{with}, but was not rendered"
|
|
end
|
|
end
|
|
|
|
failure_message_when_negated do |page|
|
|
if page.has_css?("body")
|
|
"expected page not to be rendered, but was rendered with #{page.find("body").native.inner_html}"
|
|
else
|
|
"expected page not to be rendered, but was rendered with #{page.native.inner_html}"
|
|
end
|
|
end
|
|
end
|