Added User.spawn_with_protected to generate an unsaved User record.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3337 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
parent
d4525828b9
commit
a8f56aad2c
|
@ -1,14 +1,29 @@
|
||||||
module ObjectDaddyHelpers
|
module ObjectDaddyHelpers
|
||||||
|
# TODO: The gem or official version of ObjectDaddy doesn't set
|
||||||
|
# protected attributes so they need to be wrapped.
|
||||||
|
def User.generate_with_protected(attributes={})
|
||||||
|
user = User.spawn_with_protected(attributes)
|
||||||
|
user.save
|
||||||
|
user
|
||||||
|
end
|
||||||
|
|
||||||
# TODO: The gem or official version of ObjectDaddy doesn't set
|
# TODO: The gem or official version of ObjectDaddy doesn't set
|
||||||
# protected attributes so they need to be wrapped.
|
# protected attributes so they need to be wrapped.
|
||||||
def User.generate_with_protected!(attributes={})
|
def User.generate_with_protected!(attributes={})
|
||||||
|
user = User.spawn_with_protected(attributes)
|
||||||
|
user.save!
|
||||||
|
user
|
||||||
|
end
|
||||||
|
|
||||||
|
# TODO: The gem or official version of ObjectDaddy doesn't set
|
||||||
|
# protected attributes so they need to be wrapped.
|
||||||
|
def User.spawn_with_protected(attributes={})
|
||||||
user = User.spawn(attributes) do |user|
|
user = User.spawn(attributes) do |user|
|
||||||
user.login = User.next_login
|
user.login = User.next_login
|
||||||
attributes.each do |attr,v|
|
attributes.each do |attr,v|
|
||||||
user.send("#{attr}=", v)
|
user.send("#{attr}=", v)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
user.save!
|
|
||||||
user
|
user
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue