Очень простая спецификация контроллера, потому что что-то с моими сильными параметрами настроено неудобно? КодСпецификация контроллера и сильные параметры
class OrdersController
def create
@order = Order.new(order_params)
if @order.valid?
...
end
private
def order_params
params.require(:order).and_permit(:email)
end
end
Тест:
describe OrdersController, "Create action", type: :controller do
it "should call valid? method" do
Order.any_instance.should_receive(:valid?)
post :create, order: {email: "[email protected]"}
end
end
Результат:
Failure/Error: post :create, order: {email: "[email protected]"}
NoMethodError:
undefined method `and_permit' for {"email"=>"[email protected]"}:ActionController::Parameters
Не должен ли это быть «.permit»? – jvnill