From 78c30b847ed777835733701e9a00c99849867fb4 Mon Sep 17 00:00:00 2001 From: zhitomirskiyi Date: Mon, 24 Jan 2011 12:21:25 -0800 Subject: [PATCH] added files --- app/models/jobs/resend_invitation.rb | 14 ++++++++++++++ spec/models/jobs/resend_invitation_spec.rb | 21 +++++++++++++++++++++ 2 files changed, 35 insertions(+) create mode 100644 app/models/jobs/resend_invitation.rb create mode 100644 spec/models/jobs/resend_invitation_spec.rb diff --git a/app/models/jobs/resend_invitation.rb b/app/models/jobs/resend_invitation.rb new file mode 100644 index 000000000..dded9c1fd --- /dev/null +++ b/app/models/jobs/resend_invitation.rb @@ -0,0 +1,14 @@ +# Copyright (c) 2010, Diaspora Inc. This file is +# licensed under the Affero General Public License version 3 or later. See +# the COPYRIGHT file. + + +module Job + class ResendInvitation < Base + @queue = :mail + def self.perform_delegate(invitation_id) + inv = Invitation.where(:id => invitation_id).first + inv.resend + end + end +end diff --git a/spec/models/jobs/resend_invitation_spec.rb b/spec/models/jobs/resend_invitation_spec.rb new file mode 100644 index 000000000..49879c3a1 --- /dev/null +++ b/spec/models/jobs/resend_invitation_spec.rb @@ -0,0 +1,21 @@ +# Copyright (c) 2010, Diaspora Inc. This file is +# licensed under the Affero General Public License version 3 or later. See +# the COPYRIGHT file. + +require 'spec_helper' + +describe Job::ResendInvitation do + describe '#perfom_delegate' do + it 'should call .resend on the object' do + user = alice + aspect = user.aspects.create(:name => "cats") + user.invite_user("b@b.com", aspect.id) + invitation = user.reload.invitations_from_me.first + + #Notification.should_receive(:notify).with(instance_of(User), instance_of(StatusMessage), instance_of(Person)) + Invitation.stub(:where).with(:id => invitation.id ).and_return(invitation) + invitation.should_receive(:resend) + Job::ResendInvitation.perform_delegate(invitation) + end + end +end