[英]How to get at instance variable in rake task for testing in rspec 3.4?
所以我有一个耙任务:
task :some_task do
# some stuff
@myvar = 2
SomeModel.my_method
end
我有rspec测试设置,这样我可以知道SomeModel是否调用了我的方法,但是如何检查实例变量@myvar是否设置为2? 我尝试将其移出任务块,但无济于事。 我将RSpec 3.4与Rails 4.2.x和Ruby 2.2.x一起使用。
在SomeModel
,为@myvar
实例变量添加一个attr_accessor
。
例如:
class SomeModel
attr_accessor :myvar
def my_method
@myvar = 2
end
end
现在您可以访问它
task :some_task do
# some stuff
# @myvar = 2
SomeModel.myvar = 3
SomeModel.my_method
assert_match SomeModel.myvar, 2
end
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.