【问题标题】:How to convert minitest create test to accommodate turbo_stream?如何转换 minitest 创建测试以适应 turbo_stream?
【发布时间】:2021-11-29 19:46:14
【问题描述】:

在 minitest 中,在 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

将 create controller 操作更改为 respond_to :turbo_stream 后,上述测试将不再正确执行。我试过简单地将 format: :turbo_stream 作为参数哈希的一部分传递......但是,这也不起作用。

post users_url, params: { user: valid_params, format: 'turbo_stream' }

必须有 Rails 7 的测试方法。可能 Minitest 尚未针对这些新功能进行更新。

有人针对这种新格式更新了他们的测试吗?

【问题讨论】:

    标签: ruby-on-rails minitest hotwire-rails ruby-on-rails-7


    【解决方案1】:

    原来这很容易......这就是你的做法

    post users_url(format: :turbo_stream), params: { user: valid_params }
    

    然后,而不是测试重定向使用:

    assert_response :success
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-02
      • 1970-01-01
      • 1970-01-01
      • 2015-11-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多