Rspec与多按钮形式

时间:2011-08-30 19:37:51

标签: ruby-on-rails ruby-on-rails-3 testing rspec

我正在使用rails构建一个简单的博客,并且有一个带有多个按钮的表单。一个按钮允许某人保存草稿,另一个按钮允许某人发布帖子。

一个按钮具有保存草稿的名称,另一个按钮具有发布帖子的名称。如果存在发布参数,它将在后期模型中执行发布功能。

在控制器中我有

post.publish unless !params[:publish]

如果存在发布参数,它将在模型上调用发布操作,我如何使用rspec来测试?

1 个答案:

答案 0 :(得分:0)

嗯,这取决于。如果您使用水豚进行集成测试,您只需说明要点击哪个按钮。但我想,你有一个控制器。而不是

post :create, :post => {...}

你需要做

post :create, :post => {...}, :publish => "Publish"

实际上,按钮的值(标签)将作为params[:publish]的值提交,因此您可能希望将该按钮的真实标签传递为:publish