У меня есть следующее преобразование:
Transform /^"([^"]+)" Phase$/ do |name|
# Returns the phase named 'name',
# or raises an exception if it doesn't exist
end
который работает с таким определением шага:
Then /("(?:[^"]+)" Phase) should do something/ do |phase|
# Should fail if the specified phase doesn't exist
end
У меня также есть следующее определение шага, в котором используется тот же шаблон "([^"]+)" Phase
:
Given /("([^"]+)" Phase) follows ("([^"]+)" Phase)/ do |pre, post|
# Should create the specified phases
end
Здесь я не хочу, чтобы определение шага потерпело неудачу, если указанные фазы не существуют. Вместо этого я хотел бы создать фазы.
Я хотел бы создать преобразование, которое создаст фазу для меня, чтобы немного СУШИТЬ определения шагов, но я не могу этого сделать, потому что у меня уже есть упомянутое выше преобразование, которое имеет точно такое же регулярное выражение.
По сути, я хотел бы создать фазу, если это шаг Given
, и поднять ошибку, если это не так.
Любые идеи?