gpt4 book ai didi

ruby-on-rails - 如何在 Rails 3 的测试设置中设置 session 哈希?

转载 作者:可可西里 更新时间:2023-11-01 15:15:50 26 4
gpt4 key购买 nike

我有以下测试通过:

test "should create order" do
assert_difference('Order.count') do
post :create, { :message_text => @order.attributes }, { :var_name => 1 }
end

不是将 , { :var_name => 1 } 添加到每个 HTTP 调用,而是如何将 session 添加到设置方法?

谢谢!

最佳答案

在 Controller 测试中,您可以像访问 flash 一样访问 session

这是我用来设置程序 ID 的助手

def set_current_program(program=programs(:direct_debit))
@current_program = program
session[:program_id] = @current_program && @current_program.id
end

或者在设置中,你可以做

def setup
session[:var_name] = 1
end

然后像往常一样做你的测试

test "should create order" do
assert_difference('Order.count') do
post :create, :message_text => @order.attributes
end
end

如果操作应该改变它,您甚至可以断言 session 的值

assert_equal 24, session[:something_changed]

关于ruby-on-rails - 如何在 Rails 3 的测试设置中设置 session 哈希?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6362551/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com