集成测试时直接设置flash
Directly setting a flash during integration test
我有一些内容是根据一些自定义的即显消息显示的。
有没有办法在集成测试时直接设置flash值?
class SomePageTest < ActionDispatch::IntegrationTest
test "should keep custom flash" do
flash[:foo] = 'bar'
get user_path(@user)
assert flash['foo'], 'bar' #no worky
end
end
如 Rails guides 中所述,只有在集成测试中提出请求后,flash 才可用。
但是,get 方法的文档显示您可以在测试中传递 flash 参数。
另请注意,您手边有 @request
实例变量,它有一个 method for setting the flash hash。
我认为以上其中一项可行。如果不是,请记住 flash 只是一个 header。设置闪光灯使用 set_header
方法和 special key.
我有一些内容是根据一些自定义的即显消息显示的。 有没有办法在集成测试时直接设置flash值?
class SomePageTest < ActionDispatch::IntegrationTest
test "should keep custom flash" do
flash[:foo] = 'bar'
get user_path(@user)
assert flash['foo'], 'bar' #no worky
end
end
如 Rails guides 中所述,只有在集成测试中提出请求后,flash 才可用。
但是,get 方法的文档显示您可以在测试中传递 flash 参数。
另请注意,您手边有 @request
实例变量,它有一个 method for setting the flash hash。
我认为以上其中一项可行。如果不是,请记住 flash 只是一个 header。设置闪光灯使用 set_header
方法和 special key.