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

Api::V1::ReviewsControllerのRspecの実装 #20

Open
yu-yaba opened this issue Dec 9, 2024 · 1 comment
Open

Api::V1::ReviewsControllerのRspecの実装 #20

yu-yaba opened this issue Dec 9, 2024 · 1 comment

Comments

@yu-yaba
Copy link
Owner

yu-yaba commented Dec 9, 2024

カバレッジC1 分岐網羅でRspecを実装する

https://github.com/yu-yaba/gatareview-back/blob/main/app/controllers/api/v1/reviews_controller.rb

@yu-yaba
Copy link
Owner Author

yu-yaba commented Dec 9, 2024

C1: 分岐網羅 テストケース一覧

create アクション

条件 状況 結果
verifier.verify == true reCAPTCHA認証が成功 create_review メソッドが呼び出される
verifier.verify == false reCAPTCHA認証が失敗 ステータス422、reCAPTCHA認証に失敗しました。 を含むレスポンスが返る
@review.save == true レビューが正常に保存される ステータス201、レビューデータが含まれるレスポンスが返る
@review.save == false レビューが保存されない ステータス422、エラー詳細を含むレスポンスが返る

index アクション

条件 状況 結果
N/A レビューが存在する場合 レビュー一覧がJSON形式で返される
N/A レビューが存在しない場合 空の配列が返される

total アクション

条件 状況 結果
N/A レビューが存在する場合 合計レビュー数が返される
N/A レビューが存在しない場合 合計レビュー数として0が返される

latest アクション

条件 状況 結果
@reviews.any? == true 最新のレビューが存在する場合 ステータス200、レビューと講義データを含むレスポンスが返る
@reviews.any? == false 最新のレビューが存在しない場合 ステータス404、レビューが見つかりません。 を含むレスポンスが返る

set_lecture メソッド

条件 状況 結果
存在するlecture_idを指定 講義が見つかる場合 メソッドが成功し、次の処理に進む
存在しないlecture_idを指定 講義が見つからない場合 ActiveRecord::RecordNotFound 例外が発生

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

No branches or pull requests

1 participant