-
Notifications
You must be signed in to change notification settings - Fork 627
/
audited_spec_helpers.rb
36 lines (28 loc) · 1016 Bytes
/
audited_spec_helpers.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
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