package org.jbehave.examples.jruby; import static org.jbehave.core.io.CodeLocations.codeLocationFromClass; import static org.jbehave.core.reporters.Format.ANSI_CONSOLE; import java.util.List; import org.jbehave.core.configuration.Configuration; import org.jbehave.core.configuration.MostUsefulConfiguration; import org.jbehave.core.io.StoryFinder; import org.jbehave.core.junit.JUnitStories; import org.jbehave.core.reporters.StoryReporterBuilder; import org.jbehave.core.steps.InjectableStepsFactory; import org.jbehave.core.steps.InstanceStepsFactory; public class JRubyStories extends JUnitStories { @Override public Configuration configuration() { return new MostUsefulConfiguration() .useStoryReporterBuilder(new StoryReporterBuilder().withFormats(ANSI_CONSOLE)); } @Override protected List<String> storyPaths() { return new StoryFinder() .findPaths(codeLocationFromClass(this.getClass()), "**/*.story", ""); } @Override public InjectableStepsFactory stepsFactory() { return new InstanceStepsFactory(configuration(), new JRubySteps()); } }