水豚定义可选参数
capybara define optional parameter
Given Admin user with email and role:
我想用额外的参数创建相同的定义
给定具有电子邮件和角色的管理员用户并删除 table
尝试编写这个夹具
Given(/^Admin user with email and role(?: and drop table (.*)):$/) do |table, drop|
add_location :drop_tables => drop || false
table.hashes.each_with_index do |value, key|
value[:"Postal Code"] ||= nil
add_admin_user :role_name => value[:"Role"], :admin_email => value[:"Email"]
end
clear_memcache
end
所以如果 parametar 不存在,默认为 false,但是如果我们在定义中有 drop table,应该是 drop_tables =>true
drop_tables => drop || false
我想你要求的是
Given(/^Admin user with email and role( and drop table)?:$/) do |drop,table|
add_location :drop_tables => !!drop
table.hashes.each_with_index do |value, key|
value[:"Postal Code"] ||= nil
add_admin_user :role_name => value[:"Role"], :admin_email => value[:"Email"]
end
clear_memcache
end
如果使用“and drop table”文本,将设置 drop_tables: true
,否则将设置 'drop_table: false'
Given Admin user with email and role:
我想用额外的参数创建相同的定义
给定具有电子邮件和角色的管理员用户并删除 table
尝试编写这个夹具
Given(/^Admin user with email and role(?: and drop table (.*)):$/) do |table, drop|
add_location :drop_tables => drop || false
table.hashes.each_with_index do |value, key|
value[:"Postal Code"] ||= nil
add_admin_user :role_name => value[:"Role"], :admin_email => value[:"Email"]
end
clear_memcache
end
所以如果 parametar 不存在,默认为 false,但是如果我们在定义中有 drop table,应该是 drop_tables =>true
drop_tables => drop || false
我想你要求的是
Given(/^Admin user with email and role( and drop table)?:$/) do |drop,table|
add_location :drop_tables => !!drop
table.hashes.each_with_index do |value, key|
value[:"Postal Code"] ||= nil
add_admin_user :role_name => value[:"Role"], :admin_email => value[:"Email"]
end
clear_memcache
end
如果使用“and drop table”文本,将设置 drop_tables: true
,否则将设置 'drop_table: false'