- Revision
- 959
- Author
- mauro
- Date
- 2008-10-02 03:14:35 -0500 (Thu, 02 Oct 2008)
Log Message
Added optional skip and ignoreFailure flags.
Modified Paths
- trunk/jbehave-ant/src/main/java/org/jbehave/ant/AbstractScenarioTask.java
- trunk/jbehave-ant/src/main/java/org/jbehave/ant/ScenarioRunnerTask.java
- trunk/jbehave-maven-plugin/src/main/java/org/jbehave/mojo/ScenarioRunnerMojo.java
Diff
Modified: trunk/jbehave-ant/src/main/java/org/jbehave/ant/AbstractScenarioTask.java (958 => 959)
--- trunk/jbehave-ant/src/main/java/org/jbehave/ant/AbstractScenarioTask.java 2008-10-01 11:03:46 UTC (rev 958) +++ trunk/jbehave-ant/src/main/java/org/jbehave/ant/AbstractScenarioTask.java 2008-10-02 08:14:35 UTC (rev 959) @@ -1,6 +1,7 @@ package org.jbehave.ant; import static java.util.Arrays.asList; +import static org.apache.tools.ant.Project.MSG_INFO; import java.net.MalformedURLException; import java.util.ArrayList; @@ -94,7 +95,7 @@ CommandlineJava commandLine = new CommandlineJava(); Path path = commandLine.createClasspath(getProject()).createPath(); List<String> classpathElements = asList(path.list()); - log("Created classpath with elements "+classpathElements); + log("Created classpath with elements "+classpathElements, MSG_INFO); return classpathElements; } @@ -112,7 +113,7 @@ names = findScenarioClassNames(); } if (names.isEmpty()) { - log("No scenarios to run."); + log("No scenarios to run.", MSG_INFO); } ScenarioClassLoader classLoader = null; try {
Modified: trunk/jbehave-ant/src/main/java/org/jbehave/ant/ScenarioRunnerTask.java (958 => 959)
--- trunk/jbehave-ant/src/main/java/org/jbehave/ant/ScenarioRunnerTask.java 2008-10-01 11:03:46 UTC (rev 958) +++ trunk/jbehave-ant/src/main/java/org/jbehave/ant/ScenarioRunnerTask.java 2008-10-02 08:14:35 UTC (rev 959) @@ -1,5 +1,8 @@ package org.jbehave.ant; +import static org.apache.tools.ant.Project.MSG_INFO; +import static org.apache.tools.ant.Project.MSG_WARN; + import org.apache.tools.ant.BuildException; import org.jbehave.scenario.RunnableScenario; @@ -9,18 +12,43 @@ * @author Mauro Talevi */ public class ScenarioRunnerTask extends AbstractScenarioTask { + /** + * The boolean flag to skip running scenario + */ + private boolean skip = false; + /** + * The boolean flag to ignoreFailure + */ + private boolean ignoreFailure = false; + public void execute() throws BuildException { + if (skip) { + log("Skipped running scenarios", MSG_INFO); + return; + } for (RunnableScenario scenario : scenarios()) { try { log("Running scenario " + scenario.getClass().getName()); scenario.runScenario(); } catch (Throwable e) { - throw new BuildException("Failed to run scenario " + scenario.getClass().getName(), e); + String message = "Failed to run scenario " + scenario.getClass().getName(); + if (ignoreFailure) { + log(message, e, MSG_WARN); + } else { + throw new BuildException(message, e); + } } } - } - + // Setters + public void setSkip(boolean skip) { + this.skip = skip; + } + + public void setIgnoreFailure(boolean ignoreFailure) { + this.ignoreFailure = ignoreFailure; + } + }
Modified: trunk/jbehave-maven-plugin/src/main/java/org/jbehave/mojo/ScenarioRunnerMojo.java (958 => 959)
--- trunk/jbehave-maven-plugin/src/main/java/org/jbehave/mojo/ScenarioRunnerMojo.java 2008-10-01 11:03:46 UTC (rev 958) +++ trunk/jbehave-maven-plugin/src/main/java/org/jbehave/mojo/ScenarioRunnerMojo.java 2008-10-02 08:14:35 UTC (rev 959) @@ -12,13 +12,36 @@ */ public class ScenarioRunnerMojo extends AbstractScenarioMojo { + /** + * The boolean flag to skip running scenario + * + * @parameter default-value="false" + */ + private boolean skip; + + /** + * The boolean flag to ignoreFailure + * + * @parameter default-value="false" + */ + private boolean ignoreFailure; + public void execute() throws MojoExecutionException, MojoFailureException { + if ( skip ){ + getLog().info("Skipped running scenarios"); + return; + } for (RunnableScenario scenario : scenarios()) { try { getLog().info("Running scenario " + scenario.getClass().getName()); scenario.runScenario(); } catch (Throwable e) { - throw new MojoExecutionException("Failed to run scenario " + scenario.getClass().getName(), e); + String message = "Failed to run scenario " + scenario.getClass().getName(); + if ( ignoreFailure ){ + getLog().warn(message, e); + } else { + throw new MojoExecutionException(message, e); + } } } }
To unsubscribe from this list please visit:
