現在、Ruby on Rails6でrspecのテストコードを書いているのですが、テストが通りません。
エラー内容もよくわからないので質問させていただきます。
色々と検索すると be_successから be_successfulに変更になったという記事やrspecのバージョンが古いとエラーになるという記事もあり変更したのですが、改善されませんでした。
よろしくお願いします。
error
11) AdminUsersController#index responds successfully 2 Failure/Error: expect(response).to be_successful 3 expected `#<ActionDispatch::TestResponse:0x0000559d9041a4a0 @mon_data=#<Monitor:0x0000559d9041a450>, @mon_data_...ch::Http::Headers:0x0000559d90406248 @req=#<ActionController::TestRequest:0x0000559d9041a5e0 ...>>>>.successful?` to return true, got false 4 # ./spec/controllers/admin_users_controller_spec.rb:10:in `block (3 levels) in <top (required)>'
Gemfile
1group :development, :test do 2 gem 'rspec-rails', '4.0.1' 3 gem 'factory_bot_rails' 4 gem 'spring-commands-rspec' 5end
rspec
1FactoryBot.define do 2 factory :admin_user do 3 membername {"test"} 4 sequence(:email) { |n| "test#{n}@example.com"} 5 password {"password"} 6 end 7end
rspec
1require 'rails_helper' 2 3RSpec.describe AdminUsersController, type: :controller do 4 describe '#index' do 5 it 'responds successfully' do 6 get :index, as: :json 7 expect(response).to be_successful 8 end 9 end 10end
controller
1class AdminUsersController < ApplicationController 2 def index 3 @admin_users = AdminUser.page(params[:page]).per(30) 4 @q = AdminUser.ransack(params[:q]) 5 @q.build_condition if @q.conditions.empty? 6 end 7end
あなたの回答
tips
プレビュー