PERF: allow background jobs to flush between requests in same thread

This commit is contained in:
Sam
2015-02-17 09:56:21 +11:00
parent 6c09b6739d
commit cdef67667a
3 changed files with 70 additions and 10 deletions

View File

@ -1,6 +1,6 @@
# encoding: utf-8
require 'spec_helper'
require 'scheduler/scheduler'
require_dependency 'scheduler/defer'
describe Scheduler::Defer do
class DeferInstance
@ -23,6 +23,32 @@ describe Scheduler::Defer do
@defer.stop!
end
it "can pause and resume" do
x = 1
@defer.pause
@defer.later do
x = 2
end
@defer.do_all_work
expect(x).to eq(2)
@defer.resume
@defer.later do
x = 3
end
wait_for(10) do
x == 3
end
expect(x).to eq(3)
end
it "recovers from a crash / fork" do
s = nil
@defer.stop!