Skip to content

Commit

Permalink
remember that the external search has been checked #1712
Browse files Browse the repository at this point in the history
  • Loading branch information
stuzart committed Jan 9, 2024
1 parent 268020a commit 914fc7b
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 0 deletions.
1 change: 1 addition & 0 deletions app/controllers/search_controller.rb
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ def perform_search(sources)
end

if search_params[:include_external_search] == '1'
@include_external_search = true
@external_results = Seek::ExternalSearch.instance.external_search(downcase_query, @search_type&.downcase)
end

Expand Down
21 changes: 21 additions & 0 deletions test/functional/search_controller_test.rb
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,9 @@ class SearchControllerTest < ActionController::TestCase
assert_select '.list_item_title a[href=?]', document_path(doc)
end
end

refute assigns(:include_external_search)
assert_select 'div#advanced-search input#include_external_search[type=checkbox]:not(checked)'
end

test 'search result order retained' do
Expand Down Expand Up @@ -175,4 +178,22 @@ class SearchControllerTest < ActionController::TestCase
assert_select '#more-results', count: 0

end

test 'remember external search' do
FactoryBot.create(:model, policy: FactoryBot.create(:public_policy))

VCR.use_cassette('biomodels/search') do
with_config_value(:external_search_enabled, true) do
Model.stub(:solr_cache, -> (q) { Model.pluck(:id).last(3) }) do
get :index, params: { q: 'yeast', include_external_search: '1' }
end
end
end

assert_equal 1, assigns(:results)['Model'].count
assert_equal 25, assigns(:external_results).count

assert assigns(:include_external_search)
assert_select 'div#advanced-search input#include_external_search[type=checkbox][checked=checked]'
end
end

0 comments on commit 914fc7b

Please sign in to comment.