1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00

Moved AR testing from using global variable to thread variable

This commit is contained in:
Cristian Bica 2014-08-16 00:02:06 +03:00
parent c2f1eca194
commit 788aee5acf
7 changed files with 15 additions and 15 deletions

View file

@ -4,12 +4,12 @@ require 'models/person'
class JobSerializationTest < ActiveSupport::TestCase
setup do
$BUFFER = []
Thread.current[:ajbuffer] = []
@person = Person.find(5)
end
test 'serialize job with gid' do
GidJob.enqueue @person
assert_equal "Person with ID: 5", $BUFFER.pop
assert_equal "Person with ID: 5", Thread.current[:ajbuffer].pop
end
end

View file

@ -23,7 +23,7 @@ class AdapterTest < ActiveSupport::TestCase
def setup
super
$BUFFER = []
Thread.current[:ajbuffer] = []
@old_logger = ActiveJob::Base.logger
@logger = ActiveSupport::TaggedLogging.new(TestLogger.new)
set_logger @logger

View file

@ -5,17 +5,17 @@ require 'active_support/core_ext/numeric/time'
class QueuingTest < ActiveSupport::TestCase
setup do
$BUFFER = []
Thread.current[:ajbuffer] = []
end
test 'run queued job' do
HelloJob.enqueue
assert_equal "David says hello", $BUFFER.pop
assert_equal "David says hello", Thread.current[:ajbuffer].pop
end
test 'run queued job with arguments' do
HelloJob.enqueue "Jamie"
assert_equal "Jamie says hello", $BUFFER.pop
assert_equal "Jamie says hello", Thread.current[:ajbuffer].pop
end
test 'run queued job later' do
@ -26,13 +26,13 @@ class QueuingTest < ActiveSupport::TestCase
skip
end
end
test 'job returned by enqueue has the arguments available' do
job = HelloJob.enqueue "Jamie"
assert_equal [ "Jamie" ], job.arguments
end
test 'job returned by enqueue_at has the timestamp available' do
begin
job = HelloJob.enqueue_at Time.utc(2014, 1, 1)

View file

@ -5,13 +5,13 @@ require 'active_support/core_ext/object/inclusion'
class RescueTest < ActiveSupport::TestCase
setup do
$BUFFER = []
Thread.current[:ajbuffer] = []
end
test 'rescue perform exception with retry' do
job = RescueJob.new
job.execute(SecureRandom.uuid, "david")
assert_equal [ "rescued from ArgumentError", "performed beautifully" ], $BUFFER
assert_equal [ "rescued from ArgumentError", "performed beautifully" ], Thread.current[:ajbuffer]
end
test 'let through unhandled perform exception' do

View file

@ -1,6 +1,6 @@
class GidJob < ActiveJob::Base
def perform(person)
$BUFFER << "Person with ID: #{person.id}"
Thread.current[:ajbuffer] << "Person with ID: #{person.id}"
end
end

View file

@ -1,5 +1,5 @@
class HelloJob < ActiveJob::Base
def perform(greeter = "David")
$BUFFER << "#{greeter} says hello"
Thread.current[:ajbuffer] << "#{greeter} says hello"
end
end

View file

@ -2,7 +2,7 @@ class RescueJob < ActiveJob::Base
class OtherError < StandardError; end
rescue_from(ArgumentError) do
$BUFFER << "rescued from ArgumentError"
Thread.current[:ajbuffer] << "rescued from ArgumentError"
arguments[0] = "DIFFERENT!"
retry_now
end
@ -14,7 +14,7 @@ class RescueJob < ActiveJob::Base
when "other"
raise OtherError
else
$BUFFER << "performed beautifully"
Thread.current[:ajbuffer] << "performed beautifully"
end
end
end