package org.openmrs;
import org.jbehave.core.configuration.Configuration;
import org.jbehave.core.configuration.MostUsefulConfiguration;
import org.jbehave.core.io.LoadFromClasspath;
import org.jbehave.core.junit.JUnitStory;
import org.jbehave.core.reporters.StoryReporterBuilder;
import org.jbehave.core.reporters.StoryReporterBuilder.Format;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
public abstract class Story extends JUnitStory {
protected WebDriver driver;
public Story() {
super();
}
@Override
public Configuration configuration() {
return new MostUsefulConfiguration().useStoryLoader(
new LoadFromClasspath(this.getClass().getClassLoader()))
.useStoryReporterBuilder(
new StoryReporterBuilder().withDefaultFormats()
.withFormats(Format.TXT, Format.CONSOLE));
}
@Override
public void run() throws Throwable {
createDriver();
super.run();
closeDriver();
}
private void createDriver() {
this.driver = new FirefoxDriver();
}
private void closeDriver() {
this.driver.close();
}
}