- Revision
- 1370
- Author
- mauro
- Date
- 2009-10-30 04:56:50 -0500 (Fri, 30 Oct 2009)
Log Message
Best attempt in ensure backward compatibility when using deprecated Steps(String[] startingWords). LolCatzSteps used to verify backward compatibility is not broken.
Modified Paths
Diff
Modified: trunk/core/examples/noughtsandcrosses/src/scenario/com/lunivore/noughtsandcrosses/steps/LolCatzSteps.java (1369 => 1370)
--- trunk/core/examples/noughtsandcrosses/src/scenario/com/lunivore/noughtsandcrosses/steps/LolCatzSteps.java 2009-10-30 09:31:37 UTC (rev 1369) +++ trunk/core/examples/noughtsandcrosses/src/scenario/com/lunivore/noughtsandcrosses/steps/LolCatzSteps.java 2009-10-30 09:56:50 UTC (rev 1370) @@ -31,7 +31,7 @@ } public LolCatzSteps(OAndXUniverse universe) { - super(lolCatsKeywords()); + super("Gief", "Wen", "Den", "And"); //deprecated, use super(lolCatsKeywords()); this.universe = universe; }
Modified: trunk/core/jbehave-core/src/java/org/jbehave/scenario/definition/KeyWords.java (1369 => 1370)
--- trunk/core/jbehave-core/src/java/org/jbehave/scenario/definition/KeyWords.java 2009-10-30 09:31:37 UTC (rev 1369) +++ trunk/core/jbehave-core/src/java/org/jbehave/scenario/definition/KeyWords.java 2009-10-30 09:56:50 UTC (rev 1370) @@ -14,17 +14,17 @@ */ public class KeyWords { - static final String SCENARIO = "Scenario"; - static final String GIVEN_SCENARIOS = "GivenScenarios"; - static final String EXAMPLES_TABLE = "ExamplesTable"; - static final String GIVEN = "Given"; - static final String WHEN = "When"; - static final String THEN = "Then"; - static final String AND = "And"; - static final String PENDING = "Pending"; - static final String NOT_PERFORMED = "NotPerformed"; - static final String FAILED = "Failed"; - static final String EXAMPLES_TABLE_ROW = "ExamplesTableRow"; + public static final String SCENARIO = "Scenario"; + public static final String GIVEN_SCENARIOS = "GivenScenarios"; + public static final String EXAMPLES_TABLE = "ExamplesTable"; + public static final String GIVEN = "Given"; + public static final String WHEN = "When"; + public static final String THEN = "Then"; + public static final String AND = "And"; + public static final String PENDING = "Pending"; + public static final String NOT_PERFORMED = "NotPerformed"; + public static final String FAILED = "Failed"; + public static final String EXAMPLES_TABLE_ROW = "ExamplesTableRow"; protected static final List<String> KEYWORDS = asList(SCENARIO, GIVEN_SCENARIOS, EXAMPLES_TABLE, GIVEN, WHEN, THEN, AND, PENDING, NOT_PERFORMED, FAILED, EXAMPLES_TABLE_ROW);
Modified: trunk/core/jbehave-core/src/java/org/jbehave/scenario/steps/StepsConfiguration.java (1369 => 1370)
--- trunk/core/jbehave-core/src/java/org/jbehave/scenario/steps/StepsConfiguration.java 2009-10-30 09:31:37 UTC (rev 1369) +++ trunk/core/jbehave-core/src/java/org/jbehave/scenario/steps/StepsConfiguration.java 2009-10-30 09:56:50 UTC (rev 1370) @@ -9,6 +9,7 @@ import org.jbehave.scenario.definition.KeyWords; import org.jbehave.scenario.i18n.I18nKeyWords; +import org.jbehave.scenario.i18n.StringEncoder; import org.jbehave.scenario.parser.PrefixCapturingPatternBuilder; import org.jbehave.scenario.parser.StepPatternBuilder; @@ -79,10 +80,28 @@ this.monitor = monitor; this.paranamer = paranamer; this.parameterConverters = parameterConverters; - this.keywords = new I18nKeyWords(); + this.keywords = keywordsFrom(startingWords); this.startingWords = startingWords; + this.startingWordsByType = startingWordsByType(this.keywords); } + /** + * Makes best effort to convert starting words into keywords, + * assuming order (GIVEN,WHEN,THEN,AND) + * @param startingWords + * @return Keywords with given starting words values + */ + private KeyWords keywordsFrom(String[] startingWords) { + Map<String, String> keywords = new HashMap<String, String>(); + if ( startingWords.length >= 4 ){ + keywords.put(KeyWords.GIVEN, startingWords[0]); + keywords.put(KeyWords.WHEN, startingWords[1]); + keywords.put(KeyWords.THEN, startingWords[2]); + keywords.put(KeyWords.AND, startingWords[3]); + } + return new KeyWords(keywords, new StringEncoder()); + } + protected String[] startingWordsFrom(KeyWords keywords) { return new String[]{keywords.given(), keywords.when(), keywords.then(), keywords.and()}; } @@ -128,6 +147,9 @@ this.parameterConverters = parameterConverters; } + /** + * @deprecated Use getStartingWordsByType() + */ public String[] getStartingWords() { return startingWords; }
To unsubscribe from this list please visit:
