|
8 | 8 | let(:blacklight_config) { instance_double(Blacklight::Configuration) }
|
9 | 9 | let(:params) { { site_slug: site_slug } }
|
10 | 10 | let(:search_state) { described_class.new(params, blacklight_config, controller) }
|
| 11 | + |
11 | 12 | describe '#url_for_document' do
|
12 |
| - subject(:url_params) { search_state.url_for_document(document) } |
13 |
| - end |
14 |
| - describe '#url_for_document' do |
15 |
| - let(:slug) { 'sluggo' } |
16 |
| - subject(:url_params) { search_state.url_for_document(document) } |
17 |
| - context 'with a site result' do |
18 |
| - let(:document) do |
19 |
| - { |
20 |
| - 'title_ssm' => ['0123456789abcdefghijklmnopqrstuvwxyz'], |
21 |
| - 'dc_type_ssm' => ['Publish Target'], |
22 |
| - 'slug_ssim' => [slug] |
23 |
| - } |
24 |
| - end |
25 |
| - let(:expected_url_params) { { 'controller' => 'sites', 'action' => 'home', 'slug' => slug } } |
26 |
| - it { is_expected.to eql(expected_url_params) } |
27 |
| - context 'that is nested' do |
28 |
| - let(:slug) { 'nancy/sluggo' } |
29 |
| - it { is_expected.to eql(expected_url_params) } |
| 13 | + context "for a site record" do |
| 14 | + let(:slug) { 'sluggo' } |
| 15 | + subject(:url_params) { search_state.url_for_document(document) } |
| 16 | + context 'with a site result' do |
| 17 | + let(:document) do |
| 18 | + { |
| 19 | + 'title_ssm' => ['0123456789abcdefghijklmnopqrstuvwxyz'], |
| 20 | + 'dc_type_ssm' => ['Publish Target'], |
| 21 | + 'slug_ssim' => [slug] |
| 22 | + } |
| 23 | + end |
| 24 | + let(:expected_url_params) { { 'controller' => '/sites', 'action' => 'home', 'slug' => slug } } |
| 25 | + |
| 26 | + it "returns absolute controller path info suitable for nested catalog searches" do |
| 27 | + expect(url_params).to eql(expected_url_params) |
| 28 | + end |
| 29 | + |
| 30 | + context 'that is nested' do |
| 31 | + let(:slug) { 'nancy/sluggo' } |
| 32 | + it { is_expected.to eql(expected_url_params) } |
| 33 | + end |
30 | 34 | end
|
31 | 35 | end
|
32 | 36 | end
|
|
0 commit comments