How to refactor a test suite without let?

After a create it goes to a form?

No, but on new action. I can’t remove it from controller because I use it in the new order’s form.

I really don’t know what to do to have a smallest arity. I know I break the Sandi Metz’s rules. Most of the time, it means than there is one class with to many responsabilities. I think than the role of the controller is to give orders to other classes. The PaintingOrderCreator create an order for a painting. The method process has really need all parameters to create a new order.

This may be because the form has to many models. The user should give a credit card (CreditCard model), information on the order (Order model) and need information for a painting (Painting model) and the painting price (PaintingPrice model).
One solution can be to split the form in some steps but my client don’t want it.

I think I will apply the solution given by @wpgreenway. It will be clean even there may still a conceptual problem.

Thanks!