Sha256: cb6f4accc65f859bc1acd8964e0563a5db63a600096eb6c822ae89ef6390d431

Contents?: true

Size: 1.96 KB

Versions: 13

Compression:

Stored size: 1.96 KB

Contents

RSpec.describe Sufia::ResourceSyncController do
  before do
    Rails.cache.clear
  end

  describe "source_description" do
    let(:writer) { double }
    let(:document) { '<xml>' }
    let(:capability_list) { Sufia::Engine.routes.url_helpers.capability_list_url(host: 'test.host') }

    it "is successful" do
      allow(Sufia::ResourceSync::SourceDescriptionWriter).to receive(:new).with(capability_list_url: capability_list).and_return(writer)
      expect(writer).to receive(:write).and_return(document)
      get :source_description
      expect(response.content_type).to eq 'application/xml'
      expect(response.body).to eq document
    end
  end

  describe "capability_list" do
    let(:writer) { double }
    let(:document) { '<xml>' }
    let(:capability_list) { Sufia::Engine.routes.url_helpers.capability_list_url(host: 'test.host') }

    it "is successful" do
      allow(Sufia::ResourceSync::CapabilityListWriter).to receive(:new).with(resource_list_url: "http://test.host/resourcelist",
                                                                             description_url: "http://test.host/.well-known/resourcesync").and_return(writer)
      expect(writer).to receive(:write).and_return(document)
      get :capability_list
      expect(response.content_type).to eq 'application/xml'
      expect(response.body).to eq document
    end
  end

  describe "resource_list" do
    before do
      Rails.cache.clear
    end

    let(:writer) { double }
    let(:document) { '<xml>' }
    let(:capability_list) { Sufia::Engine.routes.url_helpers.capability_list_url(host: 'test.host') }

    it "is successful" do
      allow(Sufia::ResourceSync::ResourceListWriter).to receive(:new).with(capability_list_url: capability_list, resource_host: "test.host").and_return(writer)
      expect(writer).to receive(:write).and_return(document)
      get :resource_list
      expect(response.content_type).to eq 'application/xml'
      expect(response.body).to eq document
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
sufia-7.4.1 spec/controllers/sufia/resource_sync_controller_spec.rb
sufia-7.4.0 spec/controllers/sufia/resource_sync_controller_spec.rb
sufia-7.3.1 spec/controllers/sufia/resource_sync_controller_spec.rb
sufia-7.3.0 spec/controllers/sufia/resource_sync_controller_spec.rb
sufia-7.3.0.rc3 spec/controllers/sufia/resource_sync_controller_spec.rb
sufia-7.3.0.rc2 spec/controllers/sufia/resource_sync_controller_spec.rb
sufia-7.3.0.rc1 spec/controllers/sufia/resource_sync_controller_spec.rb
sufia-7.2.0 spec/controllers/sufia/resource_sync_controller_spec.rb
sufia-7.1.0 spec/controllers/sufia/resource_sync_controller_spec.rb
sufia-7.0.0 spec/controllers/sufia/resource_sync_controller_spec.rb
sufia-7.0.0.rc2 spec/controllers/sufia/resource_sync_controller_spec.rb
sufia-7.0.0.rc1 spec/controllers/sufia/resource_sync_controller_spec.rb
sufia-7.0.0.beta4 spec/controllers/sufia/resource_sync_controller_spec.rb