form_for并确认选项并传递Rspec测试

时间:2014-04-25 23:29:16

标签: ruby-on-rails-3 rspec capybara formtastic

我有表格

= semantic_form_for @order_refund, url: create_partial_refund_order_path do |f|
  = f.inputs do
    = f.input :order_id, as: :hidden
    = f.input :amount, label: 'Amount to refund'
  = f.actions :confirm => 'Are you sure you want to create a partial refund?

我的规格

  it 'performs a partial refund' do
    visit order_path(@order)
    click_link('Partial Refund')
    fill_in('Amount to refund', with: 5)
    save_and_open_page
    click_button('Create Refund')
    current_path.should == order_path(@order)
    page.should have_content 'Partial refund successful.'
  end

为什么测试在没有确认动作时通过?谢谢!'

1 个答案:

答案 0 :(得分:0)

使用JavaScript进行确认。虽然你的测试没有使用JS,但它并不关心它。 如果你想测试它而不是:

  1. 添加到Gemfile

    gem 'selenium-webdriver'

  2. 启用JS进行测试:

    it 'performs a partial refund', js: true do