rspec `described_class` 是 `nil`
rspec `described_class` is `nil`
Rails 6.0.0.beta3
rspec 3.8.0
我刚刚在我的 Rails 应用程序上安装了 rspec-rails
。我 运行 rails g rspec:install
它生成了 spec/spec_helper.rb
、spec/rails_helper.rb
和 .rspec
我唯一改变的是取消注释 spec_helper
中的建议设置
我正在使用 gruf
到 运行 gRPC 服务器,而不是普通的 HTTP 服务器。
我还安装了 gruf-rspec
打算用它来测试我的 gruf 控制器。
我的 gruf 控制器位于 app/rpc/controllers/users_controller.rb
,遵循 gruf 文档。编译后的 protobuf 文件位于 app/rpc/users_services_pb.rb
这是控制器的 class 签名:
require 'users_services_pb'
require_relative 'permission_helper'
class UsersController < Gruf::Controllers::Base
bind ::Sil::Rev79::Users::Service
...
end
我的问题是在我的测试中 described_class
是 nil
这是我的测试
# spec/rpc/users_contollers_spec.rb
require 'rails_helper'
require 'users_services_pb'
RSpec.describe 'UsersController' do
describe 'list_users' do
it 'succeeds' do
expect(described_class).not_to be_nil
end
end
end
测试失败。
为什么 described_class
为零,我该如何解决?
去掉引号。它不应该是一个字符串。
Rspec.describe UsersController do
# insert code
end
Rails 6.0.0.beta3
rspec 3.8.0
我刚刚在我的 Rails 应用程序上安装了 rspec-rails
。我 运行 rails g rspec:install
它生成了 spec/spec_helper.rb
、spec/rails_helper.rb
和 .rspec
我唯一改变的是取消注释 spec_helper
我正在使用 gruf
到 运行 gRPC 服务器,而不是普通的 HTTP 服务器。
我还安装了 gruf-rspec
打算用它来测试我的 gruf 控制器。
我的 gruf 控制器位于 app/rpc/controllers/users_controller.rb
,遵循 gruf 文档。编译后的 protobuf 文件位于 app/rpc/users_services_pb.rb
这是控制器的 class 签名:
require 'users_services_pb'
require_relative 'permission_helper'
class UsersController < Gruf::Controllers::Base
bind ::Sil::Rev79::Users::Service
...
end
我的问题是在我的测试中 described_class
是 nil
这是我的测试
# spec/rpc/users_contollers_spec.rb
require 'rails_helper'
require 'users_services_pb'
RSpec.describe 'UsersController' do
describe 'list_users' do
it 'succeeds' do
expect(described_class).not_to be_nil
end
end
end
测试失败。
为什么 described_class
为零,我该如何解决?
去掉引号。它不应该是一个字符串。
Rspec.describe UsersController do
# insert code
end