Title: [1192] trunk/web/web-selenium/src/test/java/org/jbehave/web/selenium: allow SeleniumSteps to take a Selenium instance in ctor - flexibility
Revision
1192
Author
paul
Date
2009-08-25 13:57:29 -0500 (Tue, 25 Aug 2009)

Log Message

allow SeleniumSteps to take a Selenium instance in ctor - flexibility

Modified Paths

Diff

Modified: trunk/web/web-selenium/src/main/java/org/jbehave/web/selenium/SeleniumSteps.java (1191 => 1192)

--- trunk/web/web-selenium/src/main/java/org/jbehave/web/selenium/SeleniumSteps.java	2009-08-25 18:39:06 UTC (rev 1191)
+++ trunk/web/web-selenium/src/main/java/org/jbehave/web/selenium/SeleniumSteps.java	2009-08-25 18:57:29 UTC (rev 1192)
@@ -30,12 +30,22 @@
 		this(new StepsConfiguration());
 	}
 
+    public SeleniumSteps(Selenium selenium) {
+        this(new StepsConfiguration(), selenium);
+    }
+
 	public SeleniumSteps(StepsConfiguration configuration){
 		super(configuration);
 		this.selenium = createSelenium();
 		this.runner = createConditionRunner(selenium);
 	}
-	
+
+	public SeleniumSteps(StepsConfiguration configuration, Selenium selenium){
+		super(configuration);
+		this.selenium = selenium;
+		this.runner = createConditionRunner(selenium);
+	}
+
 	@BeforeScenario
 	public void beforeScenario() throws Exception {
 		selenium.start();
@@ -55,6 +65,7 @@
 	 * Selenium.
 	 * 
 	 * @return A Selenium instance
+     * @deprecated Use second constructor instead
 	 */
 	protected Selenium createSelenium() {
 		return new DefaultSelenium("localhost", 4444, "*firefox",

Modified: trunk/web/web-selenium/src/test/java/org/jbehave/web/selenium/SeleniumStepsTest.java (1191 => 1192)

--- trunk/web/web-selenium/src/test/java/org/jbehave/web/selenium/SeleniumStepsTest.java	2009-08-25 18:39:06 UTC (rev 1191)
+++ trunk/web/web-selenium/src/test/java/org/jbehave/web/selenium/SeleniumStepsTest.java	2009-08-25 18:57:29 UTC (rev 1192)
@@ -56,9 +56,40 @@
 		};
 		runner.run(parser.defineStoryFrom(scenarioInput), configuration, steps);
 	}
+	@Test
 
+	public void canRunSuccessfulScenario2() throws Throwable{
+		String scenarioInput = "Scenario: A simple web test" + NL
+						+ NL
+						+ "Given a test" + NL
+						+ "When a test is executed" + NL
+						+ "Then a tester is a happy hopper";
+		mockery.checking(new Expectations(){{
+			one(mockedSelenium).start();
+			one(mockedSelenium).close();
+			one(mockedSelenium).stop();
+		}});
+		Steps steps = new MySteps(mockedSelenium){
+
+			@Override
+			protected ConditionRunner createConditionRunner(Selenium selenium) {
+				return mockRunner;
+			}
+
+		};
+		runner.run(parser.defineStoryFrom(scenarioInput), configuration, steps);
+	}
+
 	public static class MySteps extends SeleniumSteps {
-		@Given("a test")
+
+        public MySteps() {
+        }
+
+        public MySteps(Selenium selenium) {
+            super(selenium);
+        }
+
+        @Given("a test")
 		public void aTest() {
 		}
 


To unsubscribe from this list please visit:

http://xircles.codehaus.org/manage_email

Reply via email to