package jbehave; import java.util.LinkedList; import java.util.List; import org.jbehave.core.configuration.Configuration; import org.jbehave.core.configuration.MostUsefulConfiguration; 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 MortgageApplicationStories extends JUnitStories { private MortgageApplicationStepper mortgageStepper = new MortgageApplicationStepper(); @Override protected List<String> storyPaths() { List<String> storyPaths = new LinkedList<String>(); storyPaths .add( "jbehave/add_one_new_mortgage_for_one_valid_customer_and_one_valid_application.story" ); storyPaths.add( "jbehave/mortgage_not_approved_because_customer_is_underage.story" ); storyPaths.add( "jbehave/mortgage_denied_because_of_bad_credit_score.story" ); storyPaths.add( "jbehave/mortgage_approved_but_limited_to_10000.story" ); return storyPaths; } @Override public InjectableStepsFactory stepsFactory() { return new InstanceStepsFactory( configuration(), mortgageStepper ); } @Override public Configuration configuration() { return new MostUsefulConfiguration().useStoryReporterBuilder( new StoryReporterBuilder() .withDefaultFormats().withFormats( org.jbehave.core.reporters.Format.CONSOLE, org.jbehave.core.reporters.Format.TXT ).withFailureTrace( true ) ); } }