2017-02-24 1 views
1

Ich habe unten eine Schrittdefinition, die tut, was ich tun soll, d.h. sie prüft die URL der Seite gegen das 'Seiten' Element von 'PAGES' Hash.Wie mache ich ein Wort optional in einer Gurkenschrittdefinition?

Then(/^I should(still)? be at the "(.*)" page$/) do |still, page| 
    BROWSER.url.should == PAGES[page] 
end 

Der Schritt Definition ist sowohl

  • verwendete ich auf der ... Seite
  • I am ... Seite

Allerdings sollte noch sein sollte, Ich brauche "immer noch" nicht in den Block zu gehen. Ich brauche es nur optional für die Anpassung an den Schritt, aber nicht in den Block übergeben. Wie kann ich das machen?

Danke.

Antwort

6

Sie möchten die Gruppe "still" als nicht erfassend markieren. Dies geschieht durch Starten der Gruppe mit ?:.

Then(/^I should(?: still)? be at the "(.*)" page$/) do |page| 
    BROWSER.url.should == PAGES[page] 
end 
+0

Ausgezeichnet, danke Justin –

Verwandte Themen