commit 7e5563c48190df7f5ca18d22363e8a3b6eebb2e1 Author: Mauro Talevi <mauro.tal...@aquilonia.org> AuthorDate: Wed May 9 01:20:49 2012 +0200 Commit: Mauro Talevi <mauro.tal...@aquilonia.org> CommitDate: Wed May 9 01:20:49 2012 +0200
JBEHAVE-777: Added generation of pending steps methods. diff --git a/jbehave-core/src/main/java/org/jbehave/core/embedder/PerformableTree.java b/jbehave-core/src/main/java/org/jbehave/core/embedder/PerformableTree.java index 56eeecc..7378a30 100644 --- a/jbehave-core/src/main/java/org/jbehave/core/embedder/PerformableTree.java +++ b/jbehave-core/src/main/java/org/jbehave/core/embedder/PerformableTree.java @@ -690,6 +690,26 @@ public class PerformableTree { state = state.run(step, reporter, null); } context.stateIs(state); + generatePendingStepMethods(context, steps); + } + + private void generatePendingStepMethods(RunContext context, List<Step> steps) { + List<PendingStep> pendingSteps = new ArrayList<PendingStep>(); + for (Step step : steps) { + if (step instanceof PendingStep) { + pendingSteps.add((PendingStep) step); + } + } + if (!pendingSteps.isEmpty()) { + PendingStepMethodGenerator generator = new PendingStepMethodGenerator(context.configuration().keywords()); + List<String> methods = new ArrayList<String>(); + for (PendingStep pendingStep : pendingSteps) { + if (!pendingStep.annotated()) { + methods.add(generator.generateMethod(pendingStep)); + } + } + context.reporter().pendingMethods(methods); + } } @Override