From 65b056341c5c3ccacba3552feae11b12bcae1ba4 Mon Sep 17 00:00:00 2001 From: Benjamin Neff <benjamin@coding4coffee.ch> Date: Mon, 3 Aug 2015 02:58:59 +0200 Subject: [PATCH] update federation gem --- Gemfile | 2 +- Gemfile.lock | 13 +++++++++---- config/initializers/diaspora_federation.rb | 10 ++++++---- spec/federation_callbacks_spec.rb | 14 +++++++------- 4 files changed, 23 insertions(+), 16 deletions(-) diff --git a/Gemfile b/Gemfile index 5fdae68b67..e52db97924 100644 --- a/Gemfile +++ b/Gemfile @@ -12,7 +12,7 @@ gem "unicorn", "4.9.0", require: false # Federation -gem "diaspora_federation-rails", "0.0.3" +gem "diaspora_federation-rails", "0.0.6" # API and JSON diff --git a/Gemfile.lock b/Gemfile.lock index cf043a145b..a718a9affb 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -152,10 +152,14 @@ GEM eventmachine (>= 1.0.5, < 1.1) http_parser.rb (~> 0.6) nokogiri (~> 1.6) - diaspora_federation (0.0.3) + diaspora_federation (0.0.6) + faraday (~> 0.9.0) + faraday_middleware (~> 0.10.0) nokogiri (~> 1.6, >= 1.6.6) - diaspora_federation-rails (0.0.3) - diaspora_federation (= 0.0.3) + typhoeus (~> 0.7.0) + valid (~> 1.0.0) + diaspora_federation-rails (0.0.6) + diaspora_federation (= 0.0.6) rails (~> 4.2) diff-lcs (1.2.5) docile (1.1.5) @@ -731,6 +735,7 @@ GEM raindrops (~> 0.7) uuid (2.3.8) macaddr (~> 1.0) + valid (1.0.0) warden (1.2.3) rack (>= 1.0) webmock (1.21.0) @@ -764,7 +769,7 @@ DEPENDENCIES devise-token_authenticatable (~> 0.4.0) devise_lastseenable (= 0.0.6) diaspora-vines (~> 0.1.28) - diaspora_federation-rails (= 0.0.3) + diaspora_federation-rails (= 0.0.6) entypo-rails (= 2.2.3) eye (= 0.7.pre) facebox-rails (= 0.2.0) diff --git a/config/initializers/diaspora_federation.rb b/config/initializers/diaspora_federation.rb index cedbf2e000..16488af3ae 100644 --- a/config/initializers/diaspora_federation.rb +++ b/config/initializers/diaspora_federation.rb @@ -3,11 +3,13 @@ DiasporaFederation.configure do |config| # the pod url config.server_uri = AppConfig.pod_uri + config.certificate_authorities = AppConfig.environment.certificate_authorities.get + config.define_callbacks do - on :person_webfinger_fetch do |handle| + on :fetch_person_for_webfinger do |handle| person = Person.find_local_by_diaspora_handle(handle) if person - DiasporaFederation::WebFinger::WebFinger.new( + DiasporaFederation::Discovery::WebFinger.new( acct_uri: "acct:#{person.diaspora_handle}", alias_url: AppConfig.url_to("/people/#{person.guid}"), hcard_url: AppConfig.url_to(DiasporaFederation::Engine.routes.url_helpers.hcard_path(person.guid)), @@ -21,10 +23,10 @@ DiasporaFederation.configure do |config| end end - on :person_hcard_fetch do |guid| + on :fetch_person_for_hcard do |guid| person = Person.find_local_by_guid(guid) if person - DiasporaFederation::WebFinger::HCard.new( + DiasporaFederation::Discovery::HCard.new( guid: person.guid, nickname: person.username, full_name: "#{person.profile.first_name} #{person.profile.last_name}".strip, diff --git a/spec/federation_callbacks_spec.rb b/spec/federation_callbacks_spec.rb index b0502198fb..ae96319bef 100644 --- a/spec/federation_callbacks_spec.rb +++ b/spec/federation_callbacks_spec.rb @@ -1,10 +1,10 @@ require "spec_helper" describe "diaspora federation callbacks" do - describe ":person_webfinger_fetch" do + describe ":fetch_person_for_webfinger" do it "returns a WebFinger instance with the data from the person" do person = alice.person - wf = DiasporaFederation.callbacks.trigger(:person_webfinger_fetch, alice.diaspora_handle) + wf = DiasporaFederation.callbacks.trigger(:fetch_person_for_webfinger, alice.diaspora_handle) expect(wf.acct_uri).to eq("acct:#{person.diaspora_handle}") expect(wf.alias_url).to eq(AppConfig.url_to("/people/#{person.guid}")) expect(wf.hcard_url).to eq(AppConfig.url_to("/hcard/users/#{person.guid}")) @@ -17,15 +17,15 @@ describe "diaspora federation callbacks" do end it "returns nil if the person was not found" do - wf = DiasporaFederation.callbacks.trigger(:person_webfinger_fetch, "unknown@example.com") + wf = DiasporaFederation.callbacks.trigger(:fetch_person_for_webfinger, "unknown@example.com") expect(wf).to be_nil end end - describe ":person_hcard_fetch" do + describe ":fetch_person_for_hcard" do it "returns a HCard instance with the data from the person" do person = alice.person - hcard = DiasporaFederation.callbacks.trigger(:person_hcard_fetch, alice.guid) + hcard = DiasporaFederation.callbacks.trigger(:fetch_person_for_hcard, alice.guid) expect(hcard.guid).to eq(person.guid) expect(hcard.nickname).to eq(person.username) expect(hcard.full_name).to eq("#{person.profile.first_name} #{person.profile.last_name}") @@ -44,12 +44,12 @@ describe "diaspora federation callbacks" do user.person.profile.last_name = nil user.person.profile.save - hcard = DiasporaFederation.callbacks.trigger(:person_hcard_fetch, user.guid) + hcard = DiasporaFederation.callbacks.trigger(:fetch_person_for_hcard, user.guid) expect(hcard.full_name).to eq(user.person.profile.first_name) end it "returns nil if the person was not found" do - hcard = DiasporaFederation.callbacks.trigger(:person_hcard_fetch, "1234567890abcdef") + hcard = DiasporaFederation.callbacks.trigger(:fetch_person_for_hcard, "1234567890abcdef") expect(hcard).to be_nil end end -- GitLab