require 'spec_helper'
describe CurationConcerns::CatalogHelper do
before do
helper.params[:controller] = 'catalog'
allow(helper).to receive(:blacklight_config).and_return(CatalogController.blacklight_config)
allow(helper).to receive(:search_action_path) do |*args|
search_catalog_path(*args)
end
end
describe 'all_type_tab' do
let(:search_state) { double('SearchState', remove_facet_params: {}) }
before do
allow(helper).to receive(:search_state).and_return(search_state)
end
subject { helper.all_type_tab('All') }
context 'when it is the active tab' do
it { should eq "
All" }
end
context 'when it is not the active tab' do
before do
helper.params[:f] = { 'generic_type_sim' => ['Work'] }
end
it { should eq "All" }
end
context 'when other parameters are present' do
before do
helper.params[:f] = { 'generic_type_sim' => ['Work'] }
helper.params[:page] = 4
end
it('clears them') { should eq "All" }
end
end
describe 'type_tab' do
subject { helper.type_tab('Works', 'Work') }
context 'when it is the active tab' do
before do
helper.params[:f] = { 'generic_type_sim' => ['Work'] }
end
it { should eq "Works" }
end
context 'when it is not the active tab' do
let(:search_state) { double('SearchState',
add_facet_params_and_redirect: { f: { generic_type_sim: ['Work'] } }) }
before do
allow(helper).to receive(:search_state).and_return(search_state)
end
it { should eq "Works" }
end
# context "when other parameters are present" do
# before do
# helper.params[:f] = { 'generic_type_sim' => ['Collection'] }
# helper.params[:page] = 4
# end
# it("should clear them") { should eq "Works" }
# end
end
end