update federation gem

This commit is contained in:
Benjamin Neff 2015-08-03 02:58:59 +02:00 committed by Jonne Haß
parent a7bb6170ab
commit 65b056341c
4 changed files with 23 additions and 16 deletions

View file

@ -12,7 +12,7 @@ gem "unicorn", "4.9.0", require: false
# Federation # Federation
gem "diaspora_federation-rails", "0.0.3" gem "diaspora_federation-rails", "0.0.6"
# API and JSON # API and JSON

View file

@ -152,10 +152,14 @@ GEM
eventmachine (>= 1.0.5, < 1.1) eventmachine (>= 1.0.5, < 1.1)
http_parser.rb (~> 0.6) http_parser.rb (~> 0.6)
nokogiri (~> 1.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) nokogiri (~> 1.6, >= 1.6.6)
diaspora_federation-rails (0.0.3) typhoeus (~> 0.7.0)
diaspora_federation (= 0.0.3) valid (~> 1.0.0)
diaspora_federation-rails (0.0.6)
diaspora_federation (= 0.0.6)
rails (~> 4.2) rails (~> 4.2)
diff-lcs (1.2.5) diff-lcs (1.2.5)
docile (1.1.5) docile (1.1.5)
@ -731,6 +735,7 @@ GEM
raindrops (~> 0.7) raindrops (~> 0.7)
uuid (2.3.8) uuid (2.3.8)
macaddr (~> 1.0) macaddr (~> 1.0)
valid (1.0.0)
warden (1.2.3) warden (1.2.3)
rack (>= 1.0) rack (>= 1.0)
webmock (1.21.0) webmock (1.21.0)
@ -764,7 +769,7 @@ DEPENDENCIES
devise-token_authenticatable (~> 0.4.0) devise-token_authenticatable (~> 0.4.0)
devise_lastseenable (= 0.0.6) devise_lastseenable (= 0.0.6)
diaspora-vines (~> 0.1.28) diaspora-vines (~> 0.1.28)
diaspora_federation-rails (= 0.0.3) diaspora_federation-rails (= 0.0.6)
entypo-rails (= 2.2.3) entypo-rails (= 2.2.3)
eye (= 0.7.pre) eye (= 0.7.pre)
facebox-rails (= 0.2.0) facebox-rails (= 0.2.0)

View file

@ -3,11 +3,13 @@ DiasporaFederation.configure do |config|
# the pod url # the pod url
config.server_uri = AppConfig.pod_uri config.server_uri = AppConfig.pod_uri
config.certificate_authorities = AppConfig.environment.certificate_authorities.get
config.define_callbacks do 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) person = Person.find_local_by_diaspora_handle(handle)
if person if person
DiasporaFederation::WebFinger::WebFinger.new( DiasporaFederation::Discovery::WebFinger.new(
acct_uri: "acct:#{person.diaspora_handle}", acct_uri: "acct:#{person.diaspora_handle}",
alias_url: AppConfig.url_to("/people/#{person.guid}"), alias_url: AppConfig.url_to("/people/#{person.guid}"),
hcard_url: AppConfig.url_to(DiasporaFederation::Engine.routes.url_helpers.hcard_path(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
end end
on :person_hcard_fetch do |guid| on :fetch_person_for_hcard do |guid|
person = Person.find_local_by_guid(guid) person = Person.find_local_by_guid(guid)
if person if person
DiasporaFederation::WebFinger::HCard.new( DiasporaFederation::Discovery::HCard.new(
guid: person.guid, guid: person.guid,
nickname: person.username, nickname: person.username,
full_name: "#{person.profile.first_name} #{person.profile.last_name}".strip, full_name: "#{person.profile.first_name} #{person.profile.last_name}".strip,

View file

@ -1,10 +1,10 @@
require "spec_helper" require "spec_helper"
describe "diaspora federation callbacks" do 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 it "returns a WebFinger instance with the data from the person" do
person = alice.person 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.acct_uri).to eq("acct:#{person.diaspora_handle}")
expect(wf.alias_url).to eq(AppConfig.url_to("/people/#{person.guid}")) 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}")) expect(wf.hcard_url).to eq(AppConfig.url_to("/hcard/users/#{person.guid}"))
@ -17,15 +17,15 @@ describe "diaspora federation callbacks" do
end end
it "returns nil if the person was not found" do 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 expect(wf).to be_nil
end end
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 it "returns a HCard instance with the data from the person" do
person = alice.person 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.guid).to eq(person.guid)
expect(hcard.nickname).to eq(person.username) expect(hcard.nickname).to eq(person.username)
expect(hcard.full_name).to eq("#{person.profile.first_name} #{person.profile.last_name}") 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.last_name = nil
user.person.profile.save 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) expect(hcard.full_name).to eq(user.person.profile.first_name)
end end
it "returns nil if the person was not found" do 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 expect(hcard).to be_nil
end end
end end