RSpec 控制器错误参数数量错误
RSpec controller error wrong number of arguments
我开始从教程中学习RSpec。
我卡在了控制器测试中。
出于某种原因,我无法 运行 我的应用程序中的下一个测试:
require "rails_helper"
RSpec.describe PostsController, type: :controller do
context "GET #index" do
it "returns a success response" do
get :index
expect(response).to be_success
end
end
end
我收到错误:
ActionView::Template::Error:
wrong number of arguments (given 2, expected 1)
# ./spec/controllers/posts_controller_spec.rb:6:in `block (3 levels) in <top (required)>'
# ------------------
# --- Caused by: ---
# ArgumentError:
# wrong number of arguments (given 2, expected 1)
# ./spec/controllers/posts_controller_spec.rb:6:in `block (3 levels) in <top (required)>'
我不明白可能是什么问题,因为在教程中它有效。
这是 Rails 6 和 rspec-rails 3.x gem 的问题,已在 rspec- 中修复rails4.0版本,升级你的rspec-railsgem版本
gem 'rspec-rails', '~> 4.0.0.beta4'
bundle install
和 运行 规格。
更多信息 - https://github.com/rails/rails/issues/35417#issuecomment-475723528
我开始从教程中学习RSpec。
我卡在了控制器测试中。
出于某种原因,我无法 运行 我的应用程序中的下一个测试:
require "rails_helper"
RSpec.describe PostsController, type: :controller do
context "GET #index" do
it "returns a success response" do
get :index
expect(response).to be_success
end
end
end
我收到错误:
ActionView::Template::Error:
wrong number of arguments (given 2, expected 1)
# ./spec/controllers/posts_controller_spec.rb:6:in `block (3 levels) in <top (required)>'
# ------------------
# --- Caused by: ---
# ArgumentError:
# wrong number of arguments (given 2, expected 1)
# ./spec/controllers/posts_controller_spec.rb:6:in `block (3 levels) in <top (required)>'
我不明白可能是什么问题,因为在教程中它有效。
这是 Rails 6 和 rspec-rails 3.x gem 的问题,已在 rspec- 中修复rails4.0版本,升级你的rspec-railsgem版本
gem 'rspec-rails', '~> 4.0.0.beta4'
bundle install
和 运行 规格。
更多信息 - https://github.com/rails/rails/issues/35417#issuecomment-475723528