Kei*_*son 2 tdd rspec ruby-on-rails activemodel
我有一个我正在尝试测试的课程,其中包括ActiveModel::Validations
module SomeModule
class SomeClass
include ActiveModel::Validations
end
end
Run Code Online (Sandbox Code Playgroud)
我试图在不spec_helper保持快速的情况下测试它,但require 'activemodel'规范顶部的简单方法不起作用。我不断收到一个uninitialized constant SomeModule::SomeClass::ActiveModel(NameError). 对于规格文件:
require 'activemodel'
describe SomeModule::SomeClass do
end
Run Code Online (Sandbox Code Playgroud)
有什么解决这个问题的建议吗?提前致谢!
您需要包含active_model在您的模块/类文件中。
# /some_class.rb
require 'active_model'
module SomeModule
class SomeClass
include ActiveModel::Validations
end
end
Run Code Online (Sandbox Code Playgroud)
规格,
# /some_class_spec.rb
require './some_class'
describe SomeModule::SomeClass do
end
Run Code Online (Sandbox Code Playgroud)
您需要更改路径以匹配您的文件。我怀疑当与包含整个 Rails 堆栈的其他规范一起运行时,这会加快您的规范,但是当单独运行时,这会更快一些。