Cucumber table.diff говорит, что таблицы не идентичны - Rails - PullRequest
0 голосов
/ 08 июля 2010

Я очень новичок в Rails и Cucumber, так что это может быть или не быть быстрым решением.

У меня есть сценарий огурца, который загружает коллекцию моделей, а затем проверяет, все ли они представлены в таблице. Огурец возвращает результат, говоря: «Таблицы не были идентичны». Что мне здесь не хватает? Я попытался добавить заголовки в определение второго шага, но это не помогает. Спасибо.

Любые дополнительные советы и рекомендации по отладке рельсов и тестов рельсов также будут полезны.

Это мой сценарий ..

Scenario: View all the clients
Given I am on the clients page
And the following clients exist:    
|name|mobile|address|
|Bob|93838383|21 Test Street|
|Ian|87232878|1 Test Road|
|Matt|23762327367|55 Rails Drive|   
Then I should see the following clients:
|Bob|93838383|21 Test Street|
|Ian|87232878|1 Test Road|
|Matt|23762327367|55 Rails Drive|

и мои определения шагов ...

Given /^the following clients exist:$/ do |table|
  table.hashes.each do |client|
  Client.create!(client) 
 end
end

Then /^I should see the following clients:$/ do |table|
  table.diff!(tableish('table tr', 'td'))
end

и мой файл просмотра ..

<h1>Clients</h1>
<table>
<% for client in @clients %>
    <tr>
        <td><%= client.name %></td>
        <td><%= client.mobile %></td>
        <td><%= client.address %></td>
    </tr>
<% end %>   
 </table>

И контроллер действия ..

 def index
   @clients = Client.find(:all)
 end

1 Ответ

2 голосов
/ 09 июля 2010

Попробуйте добавить шаг отладки к огурцу:

And show me the page

Какой файл должен создать временный файл с дампом содержимого ответа и открыть его в браузере.

РЕДАКТИРОВАТЬ: Я уверен, что это должно быть определено webrat в features / steps / web_steps.rb

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...