0

我尝试Transform在步骤定义中使用方法将字符串转换为符号。但它不会触发。

这是我的步骤:

Given(/^I log in to "(.*?)" project$/) do |project|
  #here I expect project to be symbol
end

变换方法

Transform /^I log in to "(.*?)"$/ do |project|
  project = :my_symbol
end

我放在Transform步骤定义之前,但我仍然得到字符串而不是符号。

我做错了什么?

4

1 回答 1

1

transforms 的文档中,示例正则表达式是在没有字符串开始和结束锚点的情况下编写的。将字符串结尾的$锚点放在您的转换表达式中会阻止它与步骤匹配。

尝试摆脱变换中的锚点,即:

Transform /I log in to "(.*?)"/ do |project|
  project = :my_symbol
end

还要确保您用括号括起来相同的内容:

Given(/^(I log in to ".*?") project$/) do |project|
  #here I expect project to be symbol
end
于 2013-05-20T07:22:57.610 回答