aboutsummaryrefslogtreecommitdiffstats
path: root/activerecord/test/cases
diff options
context:
space:
mode:
authorCarlos Antonio da Silva <carlosantoniodasilva@gmail.com>2012-09-20 23:14:34 -0300
committerCarlos Antonio da Silva <carlosantoniodasilva@gmail.com>2012-09-20 23:14:35 -0300
commita507c641ec78ab8781b18c42a75ccad75362af8e (patch)
treee91e84acde8b0dbdd67d8ec5251a1cf1b779e0a1 /activerecord/test/cases
parented05e922395d6aecbbcf26ce031477042ef9c7db (diff)
downloadrails-a507c641ec78ab8781b18c42a75ccad75362af8e.tar.gz
rails-a507c641ec78ab8781b18c42a75ccad75362af8e.tar.bz2
rails-a507c641ec78ab8781b18c42a75ccad75362af8e.zip
Get rid of global variable in AR transactions test
Diffstat (limited to 'activerecord/test/cases')
-rw-r--r--activerecord/test/cases/transactions_test.rb14
1 files changed, 7 insertions, 7 deletions
diff --git a/activerecord/test/cases/transactions_test.rb b/activerecord/test/cases/transactions_test.rb
index 0b5fda3817..bb4f2c8064 100644
--- a/activerecord/test/cases/transactions_test.rb
+++ b/activerecord/test/cases/transactions_test.rb
@@ -36,24 +36,24 @@ class TransactionTest < ActiveRecord::TestCase
end
end
- # FIXME: Get rid of this fucking global variable!
def test_successful_with_return
- class << Topic.connection
+ committed = false
+
+ Topic.connection.class_eval do
alias :real_commit_db_transaction :commit_db_transaction
- def commit_db_transaction
- $committed = true
+ define_method(:commit_db_transaction) do
+ committed = true
real_commit_db_transaction
end
end
- $committed = false
transaction_with_return
- assert $committed
+ assert committed
assert Topic.find(1).approved?, "First should have been approved"
assert !Topic.find(2).approved?, "Second should have been unapproved"
ensure
- class << Topic.connection
+ Topic.connection.class_eval do
remove_method :commit_db_transaction
alias :commit_db_transaction :real_commit_db_transaction rescue nil
end