Sha256: dfd3133713c7ef5dec4ab8e09100ae8b855a903b18a7e443faa1c739ab8c567b

Contents?: true

Size: 1.1 KB

Versions: 5

Compression:

Stored size: 1.1 KB

Contents

# frozen_string_literal: true
require 'spec_helper'

describe SearchHistoryController do
  routes { Blacklight::Engine.routes }

  describe "index" do
    before(:all) do
      @one = Search.create
      @two = Search.create
      @three = Search.create
    end

    it "should only fetch searches with ids in the session" do
      session[:history] = [@one.id, @three.id]
      get :index
      @searches = assigns(:searches)
      expect(@searches).to have(2).searches
      expect(@searches).to include(@one)
      expect(@searches).to include(@three)
      expect(@searches).to_not include(@two)
    end
    
    it "should tolerate bad ids in session" do
      session[:history] = [@one.id, @three.id, "NOT_IN_DB"]
      get :index
      @searches = assigns(:searches)
      expect(@searches).to have(2).searches
      expect(@searches).to include(@one)
      expect(@searches).to include(@three)      
    end
    
    it "should not fetch any searches if there is no history" do
      session[:history] = []
      get :index
      @searches = assigns(:searches)
      expect(@searches).to be_empty
    end
  end



end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
blacklight-6.2.0 spec/controllers/search_history_controller_spec.rb
blacklight-6.1.0 spec/controllers/search_history_controller_spec.rb
blacklight-6.0.2 spec/controllers/search_history_controller_spec.rb
blacklight-6.0.1 spec/controllers/search_history_controller_spec.rb
blacklight-6.0.0 spec/controllers/search_history_controller_spec.rb