[英]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.