diff --git a/app/controllers/search_controller.rb b/app/controllers/search_controller.rb index 6c2f434748c360ca9fd67194189b3775e2dd1cb8..f3a3206153ce75c327a6930ed22c5b9cb6a33e67 100644 --- a/app/controllers/search_controller.rb +++ b/app/controllers/search_controller.rb @@ -20,7 +20,7 @@ class SearchController < ApplicationController private def search_query - @search_query ||= params[:q] || params[:term] || '' + @search_query ||= (params[:q] || params[:term] || '').strip end end diff --git a/spec/controllers/search_controller_spec.rb b/spec/controllers/search_controller_spec.rb index 5ec4baf6d5a28019d2914918db1eaa3e5552bcd9..bc07db4ae131daeb96a07e61f5b16dbfbf859f20 100644 --- a/spec/controllers/search_controller_spec.rb +++ b/spec/controllers/search_controller_spec.rb @@ -35,5 +35,16 @@ describe SearchController, :type => :controller do end end + describe '#search_query' do + it 'strips the term parameter' do + @controller.params[:term] = ' IN SPACE! ' + expect(@controller.send(:search_query)).to eq 'IN SPACE!' + end + + it 'strips the q parameter' do + @controller.params[:q] = ' IN SPACE! ' + expect(@controller.send(:search_query)).to eq 'IN SPACE!' + end + end end