Огурец - и я должен увидеть «первый» перед «последним» - Rails 3.1 - PullRequest
3 голосов
/ 30 сентября 2011

[Примечание: использование Rails 3.1.]

Я пытаюсь проверить, что несколько моделей отображаются в правильном порядке на моей странице, в моем случае, по дате выпуска с самыми последними вверху.

Я знаю, что могу сделать следующее, чтобы проверить, существует ли что-то на странице:

And I should see "Some content on my page."

Но я хочу сделать что-то вроде:

And I should see "Most Recent" before "Really old"

Как мне написать шаги для этого? Я считаю, что «И я должен видеть» просто сканирует всю страницу на предмет указанного аргумента, но не уверен, как приблизиться к правильному порядку.

Заранее спасибо!

Ответы [ 2 ]

6 голосов
/ 01 октября 2011

Используйте String # index на page.body, чтобы найти позицию каждого из них и установить первую <секунду, например, </p>

And /^I should see "([^"]*)" before "([^"]*)"$/ do |phrase_1, phrase_2|
  first_position = page.body.index(phrase_1)
  second_position = page.body.index(phrase_2)
  first_position.should < second_position
end
0 голосов
/ 03 июля 2015

Более плоский вариант с утверждением MiniTest:

And /^I should see "([^"]*)" before "([^"]*)"$/ do |phrase_1, phrase_2|
  assert page.body.index(phrase_1) < page.body.index(phrase_2)
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...