From 8bf54e32ae03ffaa0cd4b0ffb78d9f981d558d39 Mon Sep 17 00:00:00 2001 From: Benjamin Neff Date: Tue, 30 Jun 2015 23:34:26 +0200 Subject: [PATCH] create temporary fixture tests and remove old tests --- .../diaspora_federation_controller_spec.rb | 36 ++++++++++ spec/controllers/publics_controller_spec.rb | 70 ------------------- 2 files changed, 36 insertions(+), 70 deletions(-) create mode 100644 spec/controllers/diaspora_federation_controller_spec.rb diff --git a/spec/controllers/diaspora_federation_controller_spec.rb b/spec/controllers/diaspora_federation_controller_spec.rb new file mode 100644 index 000000000..8799220ee --- /dev/null +++ b/spec/controllers/diaspora_federation_controller_spec.rb @@ -0,0 +1,36 @@ +# Copyright (c) 2010-2011, Diaspora Inc. This file is +# licensed under the Affero General Public License version 3 or later. See +# the COPYRIGHT file. + +require "spec_helper" + +# this is temporarily needed for fixture generation +# TODO: remove this after the parsing is also in the diaspora_federation gem +describe DiasporaFederation do + routes { DiasporaFederation::Engine.routes } + + let(:fixture_path) { Rails.root.join("spec", "fixtures") } + + describe DiasporaFederation::WebfingerController, type: :controller do + it "generates the host_meta fixture", fixture: true do + get :host_meta + expect(response).to be_success + expect(response.body).to match(/webfinger/) + save_fixture(response.body, "host-meta", fixture_path) + end + + it "generates the webfinger fixture", fixture: true do + post :legacy_webfinger, "q" => alice.person.diaspora_handle + expect(response).to be_success + save_fixture(response.body, "webfinger", fixture_path) + end + end + + describe DiasporaFederation::HCardController, type: :controller do + it "generates the hCard fixture", fixture: true do + post :hcard, "guid" => alice.person.guid.to_s + expect(response).to be_success + save_fixture(response.body, "hcard", fixture_path) + end + end +end diff --git a/spec/controllers/publics_controller_spec.rb b/spec/controllers/publics_controller_spec.rb index 08415577a..5b105688b 100644 --- a/spec/controllers/publics_controller_spec.rb +++ b/spec/controllers/publics_controller_spec.rb @@ -11,15 +11,6 @@ describe PublicsController, :type => :controller do @person = FactoryGirl.create(:person) end - describe '#host_meta' do - it 'succeeds', :fixture => true do - get :host_meta - expect(response).to be_success - expect(response.body).to match(/webfinger/) - save_fixture(response.body, "host-meta", fixture_path) - end - end - describe '#receive_public' do it 'succeeds' do post :receive_public, :xml => "" @@ -79,67 +70,6 @@ describe PublicsController, :type => :controller do end end - describe '#hcard' do - it "succeeds", :fixture => true do - post :hcard, "guid" => @user.person.guid.to_s - expect(response).to be_success - save_fixture(response.body, "hcard", fixture_path) - end - - it 'sets the person' do - post :hcard, "guid" => @user.person.guid.to_s - expect(assigns[:person]).to eq(@user.person) - end - - it 'does not query by user id' do - post :hcard, "guid" => 90348257609247856.to_s - expect(assigns[:person]).to be_nil - expect(response).to be_not_found - end - - it 'finds nothing for closed accounts' do - @user.person.update_attributes(:closed_account => true) - get :hcard, :guid => @user.person.guid.to_s - expect(response).to be_not_found - end - end - - describe '#webfinger' do - it "succeeds when the person and user exist locally", :fixture => true do - post :webfinger, 'q' => @user.person.diaspora_handle - expect(response).to be_success - save_fixture(response.body, "webfinger", fixture_path) - end - - it "404s when the person exists remotely because it is local only" do - stub_success('me@mydiaspora.pod.com') - post :webfinger, 'q' => 'me@mydiaspora.pod.com' - expect(response).to be_not_found - end - - it "404s when the person is local but doesn't have an owner" do - post :webfinger, 'q' => @person.diaspora_handle - expect(response).to be_not_found - end - - it "404s when the person does not exist locally or remotely" do - stub_failure('me@mydiaspora.pod.com') - post :webfinger, 'q' => 'me@mydiaspora.pod.com' - expect(response).to be_not_found - end - - it 'has the users profile href' do - get :webfinger, :q => @user.diaspora_handle - expect(response.body).to include "http://webfinger.net/rel/profile-page" - end - - it 'finds nothing for closed accounts' do - @user.person.update_attributes(:closed_account => true) - get :webfinger, :q => @user.diaspora_handle - expect(response).to be_not_found - end - end - describe '#hub' do it 'succeeds' do get :hub