Вопрос

Я использую огурец, Webrat и Pickle в сочетании. Когда я пишу сценарий, я могу сделать что -то вроде этого:

Given a product exists with title: "Bread"
When I go to the edit page for that product
And I fill in "Title" with "Milk"
And I press "Save changes"
Then I should see "Successfully edited product."
And I should be on that car's page

Обратите внимание на for that product. Анкет Это то, что Pickle обеспечивает, что очень удобно для ссылки на запись для продукта, который я проверяю существование. Эта последняя строка, однако, не работает.

По сути, я пытаюсь убедиться, что я являюсь шоу -страницей для этой записи, но, поскольку у меня нет идентификатора для нее, я не знаю, как ее ссылаться.

Любая помощь? Спасибо!

Это было полезно?

Решение

Чтобы иметь ссылку на созданный продукт или что -либо еще, вы можете использовать именование, которое предоставлено Pickle:

Given product: "bread" exists with title: "Bread"
...
Then I should be on the showing page for the product "bread"

Чтобы обработать этот URL, вам нужно будет добавить пару линий в /факции/support/paths.rb:

  when %r{^the showing page for the (.+)$}
    polymorphic_path(model($1))

Также может быть полезно обработать путь редактирования для модели, как это:

Then I should be on the edit page for the product "bread"

paths.rb:

  when %r{^the edit page for the (.+)$}
    polymorphic_path(model($1), :action => 'edit')
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top