From 18ea46710b8adc8c62dc8a96ea8bed05afe06c5b Mon Sep 17 00:00:00 2001
From: zhitomirskiyi <ilya@joindiaspora.com>
Date: Tue, 29 Mar 2011 17:23:28 -0700
Subject: [PATCH] not delivering to local for profiles

---
 lib/postzord/dispatch.rb           |  2 +-
 spec/lib/postzord/dispatch_spec.rb | 18 ++++++++++++++++--
 2 files changed, 17 insertions(+), 3 deletions(-)

diff --git a/lib/postzord/dispatch.rb b/lib/postzord/dispatch.rb
index 275c377866..1204e0e65a 100644
--- a/lib/postzord/dispatch.rb
+++ b/lib/postzord/dispatch.rb
@@ -44,7 +44,7 @@ class Postzord::Dispatch
   end
 
   def deliver_to_local(people)
-    return if people.blank?
+    return if people.blank? || @object.is_a?(Profile)
     if @object.is_a?(Post)
       batch_deliver_to_local(people)
     else
diff --git a/spec/lib/postzord/dispatch_spec.rb b/spec/lib/postzord/dispatch_spec.rb
index 166db72c53..7d6e1f7120 100644
--- a/spec/lib/postzord/dispatch_spec.rb
+++ b/spec/lib/postzord/dispatch_spec.rb
@@ -234,12 +234,26 @@ describe Postzord::Dispatch do
     end
 
     describe '#deliver_to_local' do
+      before do
+        @mailman = Postzord::Dispatch.new(@user, @sm)
+      end
+
       it 'queues a batch receive' do
         local_people = []
         local_people << @user.person
-        mailman = Postzord::Dispatch.new(@user, @sm)
         Resque.should_receive(:enqueue).with(Job::ReceiveLocalBatch, @sm.id, [@user.id]).once
-        mailman.send(:deliver_to_local, local_people)
+        @mailman.send(:deliver_to_local, local_people)
+      end
+
+      it 'returns if people are empty' do
+        Resque.should_not_receive(:enqueue)
+        @mailman.send(:deliver_to_local, [])
+      end
+
+      it 'returns if the object is a profile' do
+        @mailman.instance_variable_set(:@object, Profile.new)
+        Resque.should_not_receive(:enqueue)
+        @mailman.send(:deliver_to_local, [1])
       end
     end
 
-- 
GitLab