2013-08-22 31 views

回答

0

我認爲唯一的方式,您可以推斷該信息是通過檢查參數的值。如果值爲零,則沒有分配給它(即,未使用該步驟定義的那部分)。

例如,如果你想要的行爲取決於如果使用的電子郵件地址部分:

When /^I check the favorite color count(?: for email address (.*))?$/ do |email| 
    if email.nil? 
    # Then the "for email address" part was *not* used 
    else 
    # Then the "for email address" part was used 
    end 

    email ||= "[email protected]" 
    puts 'using ' + email 
end 

注意,這是基本上是行email ||= "[email protected]"在做什麼。 ||=基本上意味着分配這個值,如果一個不存在。這會和做一樣:

When /^I check the favorite color count(?: for email address (.*))?$/ do |email| 
    if email.nil? 
    # Then the "for email address" part was *not* used 
    email = "[email protected]" 
    else 
    # Then the "for email address" part was used 
    # email already has a value so leave it be 
    end 

    puts 'using ' + email 
end 
相關問題