def and_raise_error(error_or_message, message=nil)
@has_expected_error = true
case error_or_message
when String, Regexp
@expected_error, @expected_error_message = Exception, error_or_message
else
@expected_error, @expected_error_message = error_or_message, message
end
if @expected_error_message.is_a? Regexp
@desc = "raise an #{@expected_error} with the message matching #{@expected_error_message.inspect}"
else
@desc = "raise an #{@expected_error}"
unless @expected_error_message.nil?
@desc += "with the message #{@expected_error_message.inspect}"
end
end
self
end