Sha256: a95e6a814de3b4122e5e97770bbb6b7fc6010a383cac0f3643e7b34748cd2631
Contents?: true
Size: 1.59 KB
Versions: 4
Compression:
Stored size: 1.59 KB
Contents
$:.unshift(File.dirname(__FILE__) + '/../lib') require "rubygems" require "validator" RSpec.configure do |config| end RSpec::Matchers.define :have_errors_on do |attribute, errors_size| @message = nil #@errors_size = errors_size chain :with_message do |message| @message = message end match do |model| model.errors.clear model.valid? @has_errors = !model.errors[attribute].blank? # @has_errors_on_size = ((!errors_size.nil?) ? true : false) #model.errors[attribute].size == errors_size : false) if @message (@has_errors || @has_errors_on_size) && model.errors[attribute].include?(@message) @has_errors && model.errors[attribute].include?(@message) else @has_errors #|| @has_errors_on_size end end failure_message_for_should do |model| msg = [] if @message msg << "Validation errors #{model.errors[attribute].inspect} should include #{@message.inspect}" if @has_errors msg << "have #{@errors_size} errors" if @has_errors_on_size msg.join(" and ") else msg << "#{model.class} should have errors on #{attribute.inspect}" if @has_errors msg << "have #{@errors_size} errors" if @has_errors_on_size msg.join(" and ") end msg.to_s end failure_message_for_should_not do |model| "#{model.class} should not have an error on #{attribute.inspect} " + (@message.blank? ? "" : " with message \"#{@message}\"") end description do "have errors on #{attribute.inspect}" + (@message.blank? ? "" : " with message \"#{@message}\"") + (@errors_size.nil? ? "" : " and have #{@errors_size} errors") end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
validator-0.1.1 | spec/spec_helper.rb |
validator-0.1.0 | spec/spec_helper.rb |
validator-0.0.2 | spec/spec_helper.rb |
validator-0.0.1 | spec/spec_helper.rb |