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.rbspec/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_classnil

这是我的测试

# 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