From 381c03cfd7d9356170a5a45a144dd0b68af613fc Mon Sep 17 00:00:00 2001 From: Benjamin Neff Date: Sun, 30 Apr 2017 05:05:32 +0200 Subject: [PATCH] Remove backward-compatibility for Retractions --- lib/diaspora/federated/retraction.rb | 11 ++--------- spec/lib/diaspora/federated/retraction_spec.rb | 18 +++--------------- 2 files changed, 5 insertions(+), 24 deletions(-) diff --git a/lib/diaspora/federated/retraction.rb b/lib/diaspora/federated/retraction.rb index caa494964..b9c73dd5e 100644 --- a/lib/diaspora/federated/retraction.rb +++ b/lib/diaspora/federated/retraction.rb @@ -21,8 +21,7 @@ class Retraction def defer_dispatch(user, include_target_author=true) subscribers = dispatch_subscribers(include_target_author) - sender = dispatch_sender(user) - Workers::DeferredRetraction.perform_async(sender.id, data, subscribers.map(&:id), service_opts(user)) + Workers::DeferredRetraction.perform_async(user.id, data, subscribers.map(&:id), service_opts(user)) end def perform @@ -32,8 +31,7 @@ class Retraction end def public? - # TODO: backward compatibility for pre 0.6 pods, they don't relay public retractions - data[:target][:public] == true && (!data[:target][:parent] || data[:target][:parent][:local] == true) + data[:target][:public] end private @@ -45,11 +43,6 @@ class Retraction subscribers end - # @deprecated This is only needed for pre 0.6 pods - def dispatch_sender(user) - target.try(:sender_for_dispatch) || user - end - def service_opts(user) return {} unless target.is_a?(StatusMessage) diff --git a/spec/lib/diaspora/federated/retraction_spec.rb b/spec/lib/diaspora/federated/retraction_spec.rb index ff5d11ab8..3dad77b2f 100644 --- a/spec/lib/diaspora/federated/retraction_spec.rb +++ b/spec/lib/diaspora/federated/retraction_spec.rb @@ -101,18 +101,6 @@ describe Retraction do retraction.defer_dispatch(local_luke) end - it "uses the author of the target parent as sender for a comment-retraction if the parent is local" do - post = local_luke.post(:status_message, text: "hello", public: true) - comment = local_leia.comment!(post, "destroy!") - federation_retraction = Diaspora::Federation::Entities.retraction(comment) - - expect(Workers::DeferredRetraction).to receive(:perform_async).with( - local_luke.id, federation_retraction.to_h, [remote_raphael.id], {} - ) - - Retraction.for(comment).defer_dispatch(local_leia) - end - context "relayable" do let(:post) { local_luke.post(:status_message, text: "hello", public: true) } let(:comment) { FactoryGirl.create(:comment, post: post, author: remote_raphael) } @@ -158,10 +146,10 @@ describe Retraction do expect(Retraction.for(comment).public?).to be_truthy end - it "returns false for a public comment if parent post is not local" do - remote_post = FactoryGirl.create(:status_message, author: remote_raphael) + it "returns true for a public comment if parent post is not local" do + remote_post = FactoryGirl.create(:status_message, author: remote_raphael, public: true) comment = alice.comment!(remote_post, "destroy!") - expect(Retraction.for(comment).public?).to be_falsey + expect(Retraction.for(comment).public?).to be_truthy end it "returns false for a private target" do