class Shoulda::Matchers::ActiveModel::EnsureInclusionOfMatcher

def matches?(subject)

def matches?(subject)
  super(subject)
  if @range
    @low_message  ||= :inclusion
    @high_message ||= :inclusion
    disallows_lower_value &&
      allows_minimum_value &&
      disallows_higher_value &&
      allows_maximum_value
  elsif @array
    if allows_all_values_in_array? && allows_blank_value? && allows_nil_value? && disallows_value_outside_of_array?
      true
    else
      @failure_message_for_should = "#{@array} doesn't match array in validation"
      false
    end
  end
end