Огурец шаг определение регулярное выражение исключить - PullRequest
3 голосов
/ 19 октября 2010

Мне нужна помощь с регулярным выражением в файле определения шага Cucumber. Многие из моих шагов имеют тип:

Given I am on the search page

Я использую этот общий шаблон для большинства моих определений шагов и использую регулярное выражение Webrat для его подбора, которое выглядит следующим образом:

Given /^(?:|I )am on (.+)$/ do |page_name|
     visit path_to(page_name)
end

Проблема в том, что мне нужно обрабатывать страницу под названием «результаты» по-другому, и я не знаю, как изменить вышеприведенное регулярное выражение, чтобы исключить строки с надписью «Если я на странице результатов».

1 Ответ

1 голос
/ 29 октября 2010

Вы можете использовать отрицательный взгляд вперед, чтобы решить это:

Given /^(?:|I )am on (?!the results)(.+)$/ do |page_name|
    p page_name
end

Given /^I am on the results page$/ do
   p 'We matched the results page'
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...