Package org.jbehave.examples.core.urls

Source Code of org.jbehave.examples.core.urls.CoreStoriesUsingURLs

package org.jbehave.examples.core.urls;

import java.util.List;

import org.jbehave.core.configuration.Configuration;
import org.jbehave.core.io.LoadFromURL;
import org.jbehave.core.io.StoryFinder;
import org.jbehave.core.reporters.FilePrintStreamFactory.ResolveToSimpleName;
import org.jbehave.core.reporters.StoryReporterBuilder;
import org.jbehave.examples.core.CoreStories;

import static java.util.Arrays.asList;
import static org.jbehave.core.io.CodeLocations.codeLocationFromPath;

/**
* <p>
* Example of how multiple stories can be run via JUnit.
* </p>
* <p>
* Stories are specified as URLs and correspondingly the {@link LoadFromURL}
* story loader is configured and the story paths are looked up as "file:" URLs.
* It extends CoreStories simply for convenience, in order to avoid
* duplicating common configuration.
* </p>
*/
public class CoreStoriesUsingURLs extends CoreStories {

    public CoreStoriesUsingURLs() {
    }

    @Override
    public Configuration configuration() {
        Configuration configuration = super.configuration();       
        StoryReporterBuilder builder = configuration.storyReporterBuilder();
        builder.withPathResolver(new ResolveToSimpleName());
        return configuration.useStoryLoader(new LoadFromURL());
    }

    @Override
    protected List<String> storyPaths() {
        // Specify story paths as URLs
        String codeLocation = codeLocationFromPath("../core/src/main/java").getFile();
        return new StoryFinder().findPaths(codeLocation, asList("**/trader_is_alerted_of_status.story",
                "**/traders_can_be_subset.story"), asList(""), "file:" + codeLocation);
    }

}
TOP

Related Classes of org.jbehave.examples.core.urls.CoreStoriesUsingURLs

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.