56 lines
2.6 KiB
Ruby
56 lines
2.6 KiB
Ruby
require 'shoulda/matchers/active_model/helpers'
|
|
require 'shoulda/matchers/active_model/validation_matcher'
|
|
require 'shoulda/matchers/active_model/validation_message_finder'
|
|
require 'shoulda/matchers/active_model/exception_message_finder'
|
|
require 'shoulda/matchers/active_model/allow_value_matcher'
|
|
require 'shoulda/matchers/active_model/disallow_value_matcher'
|
|
require 'shoulda/matchers/active_model/ensure_length_of_matcher'
|
|
require 'shoulda/matchers/active_model/ensure_inclusion_of_matcher'
|
|
require 'shoulda/matchers/active_model/ensure_exclusion_of_matcher'
|
|
require 'shoulda/matchers/active_model/validate_absence_of_matcher'
|
|
require 'shoulda/matchers/active_model/validate_presence_of_matcher'
|
|
require 'shoulda/matchers/active_model/validate_uniqueness_of_matcher'
|
|
require 'shoulda/matchers/active_model/validate_acceptance_of_matcher'
|
|
require 'shoulda/matchers/active_model/validate_confirmation_of_matcher'
|
|
require 'shoulda/matchers/active_model/validate_numericality_of_matcher'
|
|
require 'shoulda/matchers/active_model/numericality_matchers/numeric_type_matcher'
|
|
require 'shoulda/matchers/active_model/numericality_matchers/comparison_matcher'
|
|
require 'shoulda/matchers/active_model/numericality_matchers/odd_number_matcher'
|
|
require 'shoulda/matchers/active_model/numericality_matchers/even_number_matcher'
|
|
require 'shoulda/matchers/active_model/numericality_matchers/only_integer_matcher'
|
|
require 'shoulda/matchers/active_model/allow_mass_assignment_of_matcher'
|
|
require 'shoulda/matchers/active_model/errors'
|
|
require 'shoulda/matchers/active_model/have_secure_password_matcher'
|
|
|
|
|
|
module Shoulda
|
|
module Matchers
|
|
# = Matchers for your active record models
|
|
#
|
|
# These matchers will test most of the validations of ActiveModel::Validations.
|
|
#
|
|
# describe User do
|
|
# it { should validate_presence_of(:name) }
|
|
# it { should validate_presence_of(:phone_number) }
|
|
# %w(abcd 1234).each do |value|
|
|
# it { should_not allow_value(value).for(:phone_number) }
|
|
# end
|
|
# it { should allow_value('(123) 456-7890').for(:phone_number) }
|
|
# it { should_not allow_mass_assignment_of(:password) }
|
|
# it { should allow_value('Activated', 'Pending').for(:status).strict }
|
|
# it { should_not allow_value('Amazing').for(:status).strict }
|
|
# end
|
|
#
|
|
# These tests work with the following model:
|
|
#
|
|
# class User < ActiveRecord::Base
|
|
# validates_presence_of :name
|
|
# validates_presence_of :phone_number
|
|
# validates_inclusion_of :status, in: %w(Activated Pending), strict: true
|
|
# attr_accessible :name, :phone_number
|
|
# end
|
|
module ActiveModel
|
|
end
|
|
end
|
|
end
|