Skip to content

Commit

Permalink
Update route to handle unmatched routes (#844)
Browse files Browse the repository at this point in the history
  • Loading branch information
martikat authored Aug 16, 2024
1 parent ae7d76e commit 75fb228
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 3 deletions.
11 changes: 8 additions & 3 deletions config/routes.rb
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,14 @@

resources :settings, only: %i[create]

get ':section', to: 'pages#index'
get ':section/:slug', to: 'pages#show'
get ':section/:overview/:slug', to: 'pages#show'
get ':section', to: 'pages#index', format: 'html'
get ':section/:slug', to: 'pages#show', format: 'html'
get ':section/:overview/:slug', to: 'pages#show', format: 'html'

# Handle unmatched route
get '/*unmatched_route', to: 'errors#not_found', via: :get, format: 'html'
get '/*unmatched_route/*unmatched_route', to: 'errors#not_found', via: :get, format: 'html'
get '/*unmatched_route/*unmatched_route/*unmatched_route', to: 'errors#not_found', via: :get, format: 'html'

post 'change', to: 'hook#change'
post 'release', to: 'hook#release'
Expand Down
30 changes: 30 additions & 0 deletions spec/system/page_tier_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -109,4 +109,34 @@
end
end
end

describe 'First tier when route is in incorrect format' do
before do
visit '/randompage.yml'
end

it 'has a heading' do
expect(page).to have_text('Page not found')
end
end

describe 'Second tier when route is in incorrect format' do
before do
visit '/route/randompage.yml'
end

it 'has a heading' do
expect(page).to have_text('Page not found')
end
end

describe 'Third tier when route is in incorrect format' do
before do
visit '/route/route/randompage.yml'
end

it 'has a heading' do
expect(page).to have_text('Page not found')
end
end
end

0 comments on commit 75fb228

Please sign in to comment.