Sha256: 5899f3368e8ffc06968dd09748564c5da930e45bef56d7379b3e0a6ec79e28da

Contents?: true

Size: 1.39 KB

Versions: 14

Compression:

Stored size: 1.39 KB

Contents

# frozen_string_literal: true

require 'spec_helper'

RSpec.describe Blacklight::SearchContext::ServerAppliedParamsComponent, type: :component do
  subject(:render) { instance.render_in(view_context) }

  let(:instance) { described_class.new }
  let(:current_search_session) { nil }
  let(:view_context) { controller.view_context }

  before do
    # Not sure why we need to re-implement rspec's stub_template, but
    # we already were, and need a Rails 7.1+ safe alternate too
    # https://github.com/rspec/rspec-rails/commit/4d65bea0619955acb15023b9c3f57a3a53183da8
    # https://github.com/rspec/rspec-rails/issues/2696
    replace_hash = { 'application/_start_over.html.erb' => 'start over' }
    if Rails.version.to_f >= 7.1
      controller.prepend_view_path(RSpec::Rails::ViewExampleGroup::StubResolverCache.resolver_for(replace_hash))
    else
      view_context.view_paths.unshift(RSpec::Rails::ViewExampleGroup::StubResolverCache.resolver_for(replace_hash))
    end

    allow(view_context).to receive(:current_search_session).and_return current_search_session
    allow(view_context).to receive(:link_back_to_catalog).with(any_args)
  end

  it 'is blank without current session' do
    expect(render).to be_blank
  end

  context 'with current session' do
    let(:current_search_session) { double(query_params: { q: 'abc' }) }

    it 'is not blank' do
      expect(render).not_to be_blank
    end
  end
end

Version data entries

14 entries across 14 versions & 2 rubygems

Version Path
blacklight-8.8.4 spec/components/blacklight/search_context/server_applied_params_component_spec.rb
blacklight-8.8.3 spec/components/blacklight/search_context/server_applied_params_component_spec.rb
blacklight-8.8.2 spec/components/blacklight/search_context/server_applied_params_component_spec.rb
blacklight-9.0.0.beta1 spec/components/blacklight/search_context/server_applied_params_component_spec.rb
blacklight-8.8.1 spec/components/blacklight/search_context/server_applied_params_component_spec.rb
blacklight-8.8.0 spec/components/blacklight/search_context/server_applied_params_component_spec.rb
blacklight-8.7.0 spec/components/blacklight/search_context/server_applied_params_component_spec.rb
blacklight-8.6.1 spec/components/blacklight/search_context/server_applied_params_component_spec.rb
blacklight-8.6.0 spec/components/blacklight/search_context/server_applied_params_component_spec.rb
blacklight-8.5.1 spec/components/blacklight/search_context/server_applied_params_component_spec.rb
blacklight-8.5.0 spec/components/blacklight/search_context/server_applied_params_component_spec.rb
blacklight-8.4.0 spec/components/blacklight/search_context/server_applied_params_component_spec.rb
blacklight-spotlight-3.6.0.beta8 vendor/bundle/ruby/3.2.0/gems/blacklight-8.3.0/spec/components/blacklight/search_context/server_applied_params_component_spec.rb
blacklight-8.3.0 spec/components/blacklight/search_context/server_applied_params_component_spec.rb