Sha256: c4c6c7c475e36ec98ccce56b0012318ead52b171cdaa382f2a277dd4f7f03e1f

Contents?: true

Size: 1.67 KB

Versions: 2

Compression:

Stored size: 1.67 KB

Contents

# frozen_string_literal: true
require 'spec_helper'

describe "Search Results context", js: true do
  it "passes the current search id through" do
    search_for ''
    search_id =  Search.last.id.to_s
    click_on 'Pluvial nectar of blessings'
    expect(page).to have_content "« Previous | 10 of 30 | Next »"
    prev = page.find(".pagination-search-widgets .previous")
    expect(prev['data-context-href']).to eq "/catalog/2003546302/track?counter=9&search_id=#{search_id}"

    click_on "« Previous"

    prev = page.find(".pagination-search-widgets .previous")
    expect(prev['data-context-href']).to eq "/catalog/2004310986/track?counter=8&search_id=#{search_id}"
  end
  
  it "redirects context urls to the original url" do
    search_for ''
    first('.index_title a').click
    expect(page).to have_content "« Previous | 1 of 30 | Next »"
    expect(page.current_url).to_not have_content "/track"
  end

  it 'shows "Back to Search" and "Start Over links"' do
    search_for 'Bod kyi naṅ chos ṅo sprod sñiṅ bsdus'
    first('.index_title a').click
    within '.pagination-search-widgets' do
      expect(page).to have_css 'a', text: 'Back to Search'
      expect(page).to have_css 'a', text: 'Start Over'
    end
  end
  
  context "navigating between search results using context pagination" do
    it "updates the back to search link with the current search pagination context" do
      search_for ''
      first('.index_title a').click
      10.times do
        click_on "Next »"
      end
      
      click_on "Back to Search"
      expect(page).to have_content "11 - 20"
    end
  end
end


def search_for q
  visit root_path
  fill_in "q", with: q
  click_button 'search'
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
blacklight-6.3.1 spec/features/search_context_spec.rb
blacklight-6.3.0 spec/features/search_context_spec.rb