Почему не проходят тесты в Ruby on Rails?
Изучаю книгу "Гибкая разработка веб-приложений в среде Rails". В ней, в один момент связанный с тестированием, выдает две ошибки
Error:
ProductsControllerTest#test_should_update_product:
ArgumentError: unknown keywords: :id, :product
test/controllers/products_controller_test.rb:42:in `block in <class:ProductsControllerTest>'
Error:
ProductsControllerTest#test_should_create_product:
ArgumentError: unknown keyword: :product
test/controllers/products_controller_test.rb:26:in `block (2 levels) in <class:ProductsControllerTest>'
test/controllers/products_controller_test.rb:25:in `block in <class:ProductsControllerTest>'
Там же автор указывает как их надо исправить: в 'setup do' добавить
@update = {
title: 'Lorem Ipsum',
description: 'Wibbles are fun!',
image_url: 'lorem.jpg',
price: 19.95
}
В 'should_create_product' заменить
post products_url, params: { product: { description: @product.description, image_url: @product.image_url, price: @product.price, title: @product.title } }
на
post :create, product: @update
А в 'should_update_product' строчку
patch product_url(@product), params: { product: { description: @product.description, image_url: @product.image_url, price: @product.price, title: @product.title } }
на
patch :update, id: @product, product: @update
Однако после указанных исправлений, тесты продолжают выдавать ту же ошибку. С чем это может быть связанно?