小编vin*_*ntp的帖子

Rspec 和 Draper :类名的统一常量

在 Rails 4 上,当我对装饰器执行 rspec 测试时,出现以下错误:

/app/spec/decorators/my_decorator_spec.rb:3:in `<top (required)>': uninitialized constant MyDecorator (NameError)
Run Code Online (Sandbox Code Playgroud)

我肯定错过了一些东西,但我不知道是什么。

我生成装饰器

rails g decorator My
Run Code Online (Sandbox Code Playgroud)

生成一个spec/my_decorator_spec.rb文件,内容为:

require 'spec_helper'

describe MyDecorator do
end
Run Code Online (Sandbox Code Playgroud)

然后我测试

rspec spec/decorators/my_decorator_spec.rb
Run Code Online (Sandbox Code Playgroud)

我没有在 application.rb 或 spec_helper.rb 中添加任何内容。装饰器本身工作正常。

编辑

这比我预想的更奇怪。当我测试所有 rspec 文件时,装饰器规范文件中的测试会正确执行。

有用 :

rspec spec/
Run Code Online (Sandbox Code Playgroud)

它没有:

rspec spec/decorators
rspec spec/decorators/my_decorator_spec.rb
Run Code Online (Sandbox Code Playgroud)

rspec ruby-on-rails draper

2
推荐指数
1
解决办法
693
查看次数

标签 统计

draper ×1

rspec ×1

ruby-on-rails ×1