如何将选择选项与数据库值进行比较?

时间:2015-05-23 00:58:00

标签: ruby-on-rails-4 cucumber capybara

我的模型中有一个名为State的类,我的页面中有一个状态select(组合框)。我需要创建一个步骤定义,将数据库中的值与组合框中的值进行比较。

我已经能够通过其ID找到组合框,但我找不到比较每个选项的方法。

expect(page.find_by_id('patient_state_id'))

我该怎么做?

1 个答案:

答案 0 :(得分:0)

我已经能够使用以下代码解决此问题:

Given(/^I am an application user$/) do
end

When(/^I display the patient registration form$/) do
  visit('/patients/new')
end

Then(/^I should be able see the list of registered states$/) do
  states = State.pluck(:description)

  page.find_by_id('patient_state_id').all('option').each do |el|
    expect(states).to include(el.text)
  end

end