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