Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Docsに存在しないスラッグでアクセスした時404エラーを表示 #4415

Merged

Conversation

niikz
Copy link
Contributor

@niikz niikz commented Mar 15, 2022

Issue

概要

Docsに存在しないスラッグでアクセスした時500エラーではなく404 Not foundへ変更しました。

変更確認方法

  1. ブランチbug/show-404-page-when-accessed-with-slug-does-not-exist-in-Docsをローカルに取り込む
  2. $ rails serverでローカル環境を立ち上げる
  3. テスト用ユーザーでログイン
  4. Docsに存在しないスラッグのページにアクセスしたら"Couldn't find Page"が表示されていることを確認

変更前

2022-03-16-01

image

変更後

2022-03-16-02

スクリーンショット 2022-03-16 23 11 12

補足

Capybaraのエラーでテストが失敗してしまうため、該当のテストのみCapybara.raise_server_errors = falseを設定してエラーが出ないようにしています。
下記はCapybara.raise_server_errors = falseを使用するために設定しています。

  setup do
    @raise_server_errors = Capybara.raise_server_errors
  end

  teardown do
    Capybara.raise_server_errors = @raise_server_errors
  end

参考

Railsのシステムテスト(Minitest)で「期待どおりに404エラーが発生したこと」を検証する方法 - Qiita

@niikz niikz self-assigned this Mar 15, 2022
@niikz niikz requested a review from kazuhi-ra March 16, 2022 14:20
@niikz
Copy link
Contributor Author

niikz commented Mar 16, 2022

@kazuhi-ra
お疲れさまです。お手すきのときにこちらのレビューをお願いしたいです🙏
よろしくお願いします!

@niikz niikz marked this pull request as ready for review March 16, 2022 14:21
@kazuhi-ra
Copy link

@niikz
レビュー依頼ありがとうございました!

なるほど、teardownというのは初めて知りました 👀 👀 👀
一時的に変更したテストの設定をこちらで元に戻しているのですね。

大丈夫そうだったのでapproveします🙆 🙆 🙆

@niikz
Copy link
Contributor Author

niikz commented Mar 18, 2022

@kazuhi-ra

なるほど、teardownというのは初めて知りました 👀 👀 👀
一時的に変更したテストの設定をこちらで元に戻しているのですね。

そうなんです!私も今回教えてもらって知りました😊
早速のご確認ありがとうございました〜!

@niikz niikz requested a review from komagata March 18, 2022 09:06
@niikz
Copy link
Contributor Author

niikz commented Mar 18, 2022

@komagata
お疲れさまです。ご都合のよいときに、こちらのレビューをよろしくお願いします!

Copy link
Member

@komagata komagata left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

確認しました、OKですー🙆‍♂️

@@ -169,4 +177,12 @@ class PagesTest < ApplicationSystemTestCase
assert_selector '.a-meta', text: 'Doc作成中'
end
end

test 'show 404 page when accessed with slug does not exist in Docs' do
Capybara.raise_server_errors = false
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

@komagata komagata merged commit 240a2c3 into main Mar 18, 2022
@komagata komagata deleted the bug/show-404-page-when-accessed-with-slug-does-not-exist-in-Docs branch March 18, 2022 19:02
@github-actions github-actions bot mentioned this pull request Mar 18, 2022
17 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants