Skip to content

Commit

Permalink
Define fail_with_message_including matcher
Browse files Browse the repository at this point in the history
  • Loading branch information
untidy-hair authored and mcmire committed Jan 31, 2014
1 parent 4539834 commit 6d1da00
Showing 1 changed file with 33 additions and 0 deletions.
33 changes: 33 additions & 0 deletions spec/support/fail_with_message_including_matcher.rb
@@ -0,0 +1,33 @@
RSpec::Matchers.define :fail_with_message_including do |expected|
match do |block|
@actual = nil

begin
block.call
rescue RSpec::Expectations::ExpectationNotMetError => ex
@actual = ex.message
end

@actual && @actual.include?(expected)
end

failure_message_for_should do
msg = "Expectation should have failed with message including '#{expected}'"

if @actual
msg << ", actually failed with '#{@actual}'"
else
msg << ", but did not fail."
end

msg
end

failure_message_for_should_not do
msg = "Expectation should not have failed with message including '#{expected}'"
msg << ", but did."

msg
end

end

0 comments on commit 6d1da00

Please sign in to comment.