2016-02-17 08:59:52 +01:00
|
|
|
require 'rails_helper'
|
|
|
|
|
2016-02-17 20:46:03 +01:00
|
|
|
RSpec.describe SearchController, type: :controller, elasticsearch: true do
|
2016-02-17 08:59:52 +01:00
|
|
|
|
|
|
|
describe "GET #index" do
|
|
|
|
it "returns http success" do
|
|
|
|
get :index, body: 'leipzig'
|
|
|
|
expect(response).to have_http_status(:success)
|
|
|
|
end
|
2016-02-17 21:20:17 +01:00
|
|
|
|
|
|
|
it "assigns @search_definition with default sort order" do
|
2016-03-30 20:55:11 +02:00
|
|
|
search = PaperSearch.new(sort_by: 'date')
|
2016-02-17 21:20:17 +01:00
|
|
|
get :index, body: 'leipzig'
|
|
|
|
expect(assigns(:search_definition).attributes).to eq(search.attributes)
|
|
|
|
end
|
|
|
|
|
|
|
|
it "renders the index template" do
|
|
|
|
get :index, body: 'leipzig'
|
|
|
|
expect(response).to render_template(:index)
|
|
|
|
end
|
|
|
|
|
2016-02-18 07:15:28 +01:00
|
|
|
it "executes the search with PaperSearch parameters" do
|
2016-02-24 19:17:12 +01:00
|
|
|
pending("simplify search implementation")
|
2016-02-18 07:15:28 +01:00
|
|
|
result_page = double("page", results: []) # MEH
|
|
|
|
response = double("es_response", page: result_page)
|
|
|
|
expect(Paper).to receive(:search).and_return(response)
|
|
|
|
|
|
|
|
get :index, body: 'leipzig'
|
|
|
|
end
|
|
|
|
|
2016-02-17 08:59:52 +01:00
|
|
|
end
|
|
|
|
|
|
|
|
end
|