簡體   English   中英

如何在raspec任務中獲取實例變量以在rspec 3.4中進行測試?

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

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM