Sha256: 97a00fbca40df9628010caabf58f6b8bdee3a009ed523f320f1c2f2e690f7365

Contents?: true

Size: 1016 Bytes

Versions: 3

Compression:

Stored size: 1016 Bytes

Contents

module AuditedSpecHelpers

  def create_user(use_mongo = false, attrs = {})
    klass = use_mongo ? Models::MongoMapper::User : Models::ActiveRecord::User
    klass.create({:name => 'Brandon', :username => 'brandon', :password => 'password'}.merge(attrs))
  end

  def build_user(use_mongo = false, attrs = {})
    klass = use_mongo ? Models::MongoMapper::User : Models::ActiveRecord::User
    klass.new({:name => 'darth', :username => 'darth', :password => 'noooooooo'}.merge(attrs))
  end

  def create_versions(n = 2, use_mongo = false)
    klass = use_mongo ? Models::MongoMapper::User : Models::ActiveRecord::User

    klass.create(:name => 'Foobar 1').tap do |u|
      (n - 1).times do |i|
        u.update_attribute :name, "Foobar #{i + 2}"
      end
      u.reload
    end
  end

  def create_active_record_user(attrs = {})
    create_user(false, attrs)
  end

  def create_mongo_user(attrs = {})
    create_user(true, attrs)
  end

  def create_mongo_versions(n = 2)
    create_versions(n, true)
  end

end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
audited-4.2.2 spec/audited_spec_helpers.rb
audited-4.2.1 spec/audited_spec_helpers.rb
audited-4.2.0 spec/audited_spec_helpers.rb