spec/taskinator/queues/resque_spec.rb in taskinator-0.0.15 vs spec/taskinator/queues/resque_spec.rb in taskinator-0.0.16

- old
+ new

@@ -5,12 +5,37 @@ it_should_behave_like "a queue adapter", :resque, Taskinator::Queues::ResqueAdapter let(:adapter) { Taskinator::Queues::ResqueAdapter } let(:uuid) { SecureRandom.uuid } - subject { adapter.new() } + subject { adapter.new } + describe "CreateProcessWorker" do + let(:args) { Taskinator::Persistence.serialize(:foo => :bar) } + + it "enqueues" do + worker = adapter::CreateProcessWorker + definition = MockDefinition.create + subject.enqueue_create_process(definition, uuid, :foo => :bar) + + expect(worker).to have_queued(definition.name, uuid, args) + end + + it "enqueues to specified queue" do + worker = adapter::CreateProcessWorker + definition = MockDefinition.create(:other) + subject.enqueue_create_process(definition, uuid, :foo => :bar) + + expect(worker).to have_queued(definition.name, uuid, args).in(:other) + end + + it "calls worker" do + expect_any_instance_of(Taskinator::CreateProcessWorker).to receive(:perform) + adapter::CreateProcessWorker.perform(MockDefinition.create.name, uuid, args) + end + end + describe "ProcessWorker" do it "enqueues processes" do worker = adapter::ProcessWorker subject.enqueue_process(double('process', :uuid => uuid, :queue => nil)) @@ -85,14 +110,10 @@ it "calls job worker" do expect_any_instance_of(Taskinator::JobWorker).to receive(:perform) adapter::JobWorker.perform(uuid) end - let(:definition) do - Module.new() do - extend Taskinator::Definition - end - end + let(:definition) { TestDefinition } it "performs invocation on job" do args = {:a => 1} job_class = double('job_class', :methods => [:perform]) expect(job_class).to receive(:perform).with(*args)