在我的ApplicationController,我公開可以由所有控制器共享的變量:填充實例變量定義在父控制器對於Rspec的測試
before_filter :expose_group
protected
# Much simplified
def expose_group
@user_group = LearningGroup.find_by_uid(cookies[:user_group])
end
我使用RSpec的測試我的控制器,併爲其中的一些測試,我需要能夠在運行之前將@user_group設置爲已知值。如何在測試ApplicationController的子類時設置此變量?
注意:我需要一種方法來爲測試設置@user_group。使用存根控制expose_group
的返回值不會有幫助,因爲@user_group
仍然爲零。
但它只是隱式返回任何東西。這不是我需要控制的'expose_group'的返回值,而是實例變量。 – Undistraction
在這種情況下,@apneadiving的答案就是您所需要的。 – ventsislaf