Title: [1201] trunk/web/web-selenium/src/test/java/org/jbehave/web/selenium: Added SeleniumStepsConfiguration and SeleniumContext

Diff

Added: trunk/web/web-selenium/src/main/java/org/jbehave/web/selenium/SeleniumContext.java (0 => 1201)

--- trunk/web/web-selenium/src/main/java/org/jbehave/web/selenium/SeleniumContext.java	                        (rev 0)
+++ trunk/web/web-selenium/src/main/java/org/jbehave/web/selenium/SeleniumContext.java	2009-08-26 20:36:58 UTC (rev 1201)
@@ -0,0 +1,15 @@
+package org.jbehave.web.selenium;
+
+public class SeleniumContext {
+	
+	private String currentScenario = "";
+
+	public String getCurrentScenario() {
+		return currentScenario;
+	}
+
+	public void setCurrentScenario(String currentScenario) {
+		this.currentScenario = currentScenario;
+	}
+
+}

Added: trunk/web/web-selenium/src/main/java/org/jbehave/web/selenium/SeleniumStepsConfiguration.java (0 => 1201)

--- trunk/web/web-selenium/src/main/java/org/jbehave/web/selenium/SeleniumStepsConfiguration.java	                        (rev 0)
+++ trunk/web/web-selenium/src/main/java/org/jbehave/web/selenium/SeleniumStepsConfiguration.java	2009-08-26 20:36:58 UTC (rev 1201)
@@ -0,0 +1,20 @@
+package org.jbehave.web.selenium;
+
+import org.jbehave.scenario.steps.SilentStepMonitor;
+import org.jbehave.scenario.steps.StepsConfiguration;
+
+import com.thoughtworks.selenium.Selenium;
+
+public class SeleniumStepsConfiguration extends StepsConfiguration {
+
+	public SeleniumStepsConfiguration(final Selenium selenium, final SeleniumContext seleniumContext) {
+		useMonitor(new SilentStepMonitor(){
+			@Override
+			public void performing(String step){
+				String context = seleniumContext.getCurrentScenario() + "<br>" + step;
+				selenium.setContext(context);
+			}
+		});
+	}
+
+}

Added: trunk/web/web-selenium/src/test/java/org/jbehave/web/selenium/SeleniumStepsConfigurationTest.java (0 => 1201)

--- trunk/web/web-selenium/src/test/java/org/jbehave/web/selenium/SeleniumStepsConfigurationTest.java	                        (rev 0)
+++ trunk/web/web-selenium/src/test/java/org/jbehave/web/selenium/SeleniumStepsConfigurationTest.java	2009-08-26 20:36:58 UTC (rev 1201)
@@ -0,0 +1,32 @@
+package org.jbehave.web.selenium;
+
+import org.jmock.Expectations;
+import org.jmock.Mockery;
+import org.jmock.integration.junit4.JMock;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+import com.thoughtworks.selenium.Selenium;
+
+...@runwith(JMock.class)
+public class SeleniumStepsConfigurationTest {
+
+	private Mockery mockery = new Mockery();
+
+	private final Selenium selenium = mockery.mock(Selenium.class);
+
+	@Test
+	public void canConfigureSeleniumContextToShowCurrentScenario() throws Throwable{
+		SeleniumContext seleniumContext = new SeleniumContext();
+		String currentScenario = "current scenario";
+		String step = "a step";
+		final String context = currentScenario + "<br>" + step;
+		mockery.checking(new Expectations(){{
+			one(selenium).setContext(context);
+		}});
+		SeleniumStepsConfiguration configuration = new SeleniumStepsConfiguration(selenium, seleniumContext);
+		seleniumContext.setCurrentScenario(currentScenario);
+		configuration.getMonitor().performing(step);		
+	}
+
+}


To unsubscribe from this list please visit:

http://xircles.codehaus.org/manage_email

Reply via email to