0

我创建了一个这样的控制器动作:

def update
  manager.update(
    price_change: -> {
      redirect_to new_painting_order_path(painting)
    },
    price_not_change: -> {
      user_path(current_user)
    }
  )
end

它有效,但我的规格有问题。我想检查价格变化或不变时是否正确调用了 lambda。我存根管理器对象。我可以检查通过了哪些参数,但我认为很难检查 lambda。此外,我想检查 lambda 中的操作是否正确。

是否有最佳实践来做这样的事情?

4

1 回答 1

0

什么是:price_change回归?你不能把它写成if语句吗?

def update
  if manager.update_attributes(params[:manager])
    if price_change?
      redirect_to new_painting_order_path(painting)
    else
      user_path(current_user)
    end
  end
end
于 2013-09-08T14:47:00.880 回答