test/support/model_tests_helper.rb in devise-0.3.0 vs test/support/model_tests_helper.rb in devise-0.4.0
- old
+ new
@@ -31,6 +31,21 @@
end
def create_user(attributes={})
User.create!(valid_attributes(attributes))
end
+
+ # Execute the block setting the given values and restoring old values after
+ # the block is executed.
+ def swap(object, new_values)
+ old_values = {}
+ new_values.each do |key, value|
+ old_values[key] = object.send key
+ object.send :"#{key}=", value
+ end
+ yield
+ ensure
+ old_values.each do |key, value|
+ object.send :"#{key}=", value
+ end
+ end
end