Sha256: 01a3514bbbefe940a6a910f34fb673ddf1d636bcb538120b94e8ea85c84cef5c

Contents?: true

Size: 1.48 KB

Versions: 6

Compression:

Stored size: 1.48 KB

Contents

require 'spec_helper'

RSpec.describe ::GeoWorks::GeoWorksShowPresenter do
  let(:solr_document) { SolrDocument.new(attributes) }
  let(:ability) { nil }

  describe "delegated methods" do
    let(:attributes)  { { "geo_mime_type_tesim" => ['image/tiff; gdal-format=GTiff'] } }
    subject { described_class.new(solr_document, ability) }

    describe "#first" do
      it "delegates to solr document" do
        expect(subject.first('geo_mime_type_tesim')).to eq('image/tiff; gdal-format=GTiff')
      end
    end

    describe "#has?" do
      it "delegates to solr document" do
        expect(subject.has?('geo_mime_type_tesim')).to be_truthy
      end
    end
  end

  describe "#attribute_to_html" do
    let(:attributes) { FactoryGirl.create(:raster_work).to_solr }
    let(:attribute_renderer) { double('attribute_renderer') }
    let(:coverage_renderer) { double('coverage_renderer') }

    subject { described_class.new(solr_document, ability) }

    before do
      allow(Hyrax::Renderers::AttributeRenderer).to receive(:new).and_return(attribute_renderer)
      allow(GeoWorks::CoverageRenderer).to receive(:new).and_return(coverage_renderer)
    end

    it "uses a CoverageRenderer when the field is coverage" do
      expect(coverage_renderer).to receive(:render)
      subject.attribute_to_html(:coverage)
    end

    it "uses an AttributeRenderer when the field is not coverage" do
      expect(attribute_renderer).to receive(:render)
      subject.attribute_to_html(:language)
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
geo_works-0.2.0 spec/presenters/geo_works_show_presenter_spec.rb
geo_works-0.1.4 spec/presenters/geo_works_show_presenter_spec.rb
geo_works-0.1.3 spec/presenters/geo_works_show_presenter_spec.rb
geo_works-0.1.2 spec/presenters/geo_works_show_presenter_spec.rb
geo_works-0.1.1 spec/presenters/geo_works_show_presenter_spec.rb
geo_works-0.1.0 spec/presenters/geo_works_show_presenter_spec.rb