Sha256: d6fd3bb45db2139bad0c13703d1fa44a145de5ef3b98451cf0cdf233d67b01eb

Contents?: true

Size: 748 Bytes

Versions: 4

Compression:

Stored size: 748 Bytes

Contents

module ActiveRecord #:nodoc:
  class Base

    (class << self; self; end).class_eval do
      # Extension for <tt>should have</tt> on AR Model classes
      #
      #   ModelClass.should have(:no).records
      #   ModelClass.should have(1).record
      #   ModelClass.should have(n).records
      def records
        find(:all)
      end
      alias :record :records
    end

    # Extension for <tt>should have</tt> on AR Model instances
    #
    #   model.should have(:no).errors_on(:attribute)
    #   model.should have(1).error_on(:attribute)
    #   model.should have(n).errors_on(:attribute)
    def errors_on(attribute)
      self.valid?
      [self.errors.on(attribute)].flatten.compact
    end
    alias :error_on :errors_on

  end
end

Version data entries

4 entries across 4 versions & 2 rubygems

Version Path
deckshuffler-0.0.2 vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/active_record/base.rb
has_finder-0.1.1 spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/active_record/base.rb
has_finder-0.1.2 spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/active_record/base.rb
has_finder-0.1.3 spec/rails/vendor/plugins/rspec_on_rails/lib/spec/rails/extensions/active_record/base.rb