stadtratmonitor/spec/controllers/search_controller_spec.rb
2016-04-10 14:48:04 +02:00

48 lines
1.4 KiB
Ruby

require 'rails_helper'
RSpec.describe SearchController, type: :controller, elasticsearch: true do
describe "GET #index" do
it "returns http success" do
get :index, body: 'leipzig'
expect(response).to have_http_status(:success)
end
it "assigns @search_definition with default sort order" do
search = PaperSearch.new(sort_by: 'date')
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
it "executes the search with PaperSearch parameters" do
pending("simplify search implementation")
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
it "returns rss" do
get :index, :format => "rss", body: 'leipzig'
expect(response).to be_success
expect(response).to render_template(:index)
expect(response.content_type).to eq("application/rss+xml")
#expect(response.body).to have_tag "rss" do
# with_tag "channel" do
# with_tag "title"
# with_tag "description"
# with_tag "link"
# end
#end
end
end
end