Sha256: 5825fef982cb7bff3c60e65068cb02ad4f91d64d7c09723a72abfd0a5543e779
Contents?: true
Size: 1.7 KB
Versions: 1
Compression:
Stored size: 1.7 KB
Contents
require 'spec_helper' require 'delayed/backend/mongo_mapper' describe Delayed::Backend::MongoMapper::Job do before(:all) do @backend = Delayed::Backend::MongoMapper::Job end before(:each) do MongoMapper.database.collections.each(&:remove) end it_should_behave_like 'a backend' describe "delayed method" do class MongoStoryReader def read(story) "Epilog: #{story.tell}" end end class MongoStory include ::MongoMapper::Document key :text, String def tell text end end it "should ignore not found errors because they are permanent" do story = MongoStory.create :text => 'Once upon a time…' job = story.send_later(:tell) story.destroy lambda { job.invoke_job }.should_not raise_error end it "should store the object as string" do story = MongoStory.create :text => 'Once upon a time…' job = story.send_later(:tell) job.payload_object.class.should == Delayed::PerformableMethod job.payload_object.object.should == "LOAD;MongoStory;#{story.id}" job.payload_object.method.should == :tell job.payload_object.args.should == [] job.payload_object.perform.should == 'Once upon a time…' end it "should store arguments as string" do story = MongoStory.create :text => 'Once upon a time…' job = MongoStoryReader.new.send_later(:read, story) job.payload_object.class.should == Delayed::PerformableMethod job.payload_object.method.should == :read job.payload_object.args.should == ["LOAD;MongoStory;#{story.id}"] job.payload_object.perform.should == 'Epilog: Once upon a time…' end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
moneypools-delayed_job-1.8.4 | spec/backend/mongo_mapper_job_spec.rb |