Sha256: 14e93bd505a689f1281cb82bcd0bb768aae07056ff59c810b93e62b5fea092da

Contents?: true

Size: 531 Bytes

Versions: 4

Compression:

Stored size: 531 Bytes

Contents

require 'shoulda-matchers'
require 'active_support/core_ext/array/wrap'

module Shoulda
  module Matchers
    module ActiveModel
      def require_a_valid_cpf(attr = :cpf)
        RequireAValidCpfMatcher.new(attr)
      end

      class RequireAValidCpfMatcher < ValidationMatcher
        def description
          'require a valid CPF number'
        end

        def matches?(subject)
          @subject = subject
          disallows_value_of('123456') && allows_value_of('897.546.112-20')
        end
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
validates_cpf-2.0.1 lib/validates_cpf/require_a_valid_cpf_matcher.rb
validates_cpf-2.0.0 lib/require_a_valid_cpf_matcher.rb
validates_cpf-2.0.0.rc2 lib/require_a_valid_cpf_matcher.rb
validates_cpf-2.0.0.rc1 lib/require_a_valid_cpf_matcher.rb