From cba4e99525d1001b8b74ba3a67f2f4ac4172c02f Mon Sep 17 00:00:00 2001 From: Fran Zekan Date: Mon, 3 Feb 2020 17:30:52 +0100 Subject: [PATCH] Return a 404 response If @event is Not Found (#5798) [deploy] --- app/controllers/events_controller.rb | 2 +- spec/requests/events_spec.rb | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/app/controllers/events_controller.rb b/app/controllers/events_controller.rb index 94358b0ea..adad44044 100644 --- a/app/controllers/events_controller.rb +++ b/app/controllers/events_controller.rb @@ -10,6 +10,6 @@ class EventsController < ApplicationController end def show - @event = Event.find_by(slug: params[:id]) + @event = Event.find_by!(slug: params[:id]) end end diff --git a/spec/requests/events_spec.rb b/spec/requests/events_spec.rb index 1f5bca240..8c0bc70f5 100644 --- a/spec/requests/events_spec.rb +++ b/spec/requests/events_spec.rb @@ -15,10 +15,18 @@ RSpec.describe "Events", type: :request do get "/events" expect(response.body).not_to include(unpublished_event.title) end + end + describe "GET events#show" do it "returns event show page" do get "/events/#{event.slug}" expect(response.body).to include event.title end + + it "renders not_found" do + expect do + get "/events/NotSlug-#{event.slug}" + end.to raise_error(ActiveRecord::RecordNotFound) + end end end