# frozen_string_literal: true require 'spec_helper' describe 'catalog/_show_downloads', type: :view do context 'document is downloadable' do let(:document) { instance_double(SolrDocument) } before do assign :document, document allow(document).to receive(:restricted?).and_return(false) allow(document).to receive(:direct_download).and_return(test: :test) allow(document).to receive(:hgl_download).and_return({}) allow(document).to receive(:iiif_download).and_return({}) allow(document).to receive(:download_types).and_return(shapefile: {}) end it 'renders the downloads collapse partial' do expect(view).to receive(:document_downloadable?).and_return(true) stub_template 'catalog/_downloads_collapse.html.erb' => 'stubbed_downloads_collapse' render expect(rendered).to have_content 'stubbed_downloads_collapse' end end context 'document is not downloadable' do let(:document) { instance_double(SolrDocument, restricted?: true, same_institution?: true) } before do expect(view).to receive(:document_downloadable?).and_return(false) end context 'when restricted & same institution' do it 'renders login link' do assign :document, document render expect(rendered).to have_css '.card-header a' end end end end