我尝试使用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
,但我仍然得到String而不是符号。
我做错了什么?
答案 0 :(得分:1)
在documentation for 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