在最小的情况下,在Hotwire之前,一个创建测试可能看起来像下面这样:
test "should create user" do
assert_difference('User.count') do
post users_url, params: { user: valid_params }
end
assert_redirected_to users_path
end
将创建控制器动作更改为respond_to:turbo_stream后,上述测试将不再正确执行。我试过简单地传递format::turbo_stream作为参数散列的一部分…但是,这也不起作用。
post users_url, params: { user: valid_params, format: 'turbo_stream' }
必须有一个Rails 7的方法来测试这个。有可能Minitest还没有更新这些新功能。
是否有人更新了这种新格式的测试?
事实证明这很容易…这是你怎么做的
post users_url(format: :turbo_stream), params: { user: valid_params }
,然后使用
代替测试重定向assert_response :success