@Override protected boolean execute(OutlineScenarioRowNode node, RootNodeExecutionContext context) { return basicScenarioNodeRunner.run(node.getBasicScenarioNode(), context); }
public BasicScenarioNode getBasicScenarioNode() { return getChildren().get(0); }
public OutlineScenarioRowNode(int rowIndex, BasicScenarioNode basicScenarioNode, Set<String> tags, int depth) { super(Collections.singletonList(basicScenarioNode)); this.rowIndex = rowIndex; this.tags = tags; this.setDepth(depth); }
public OutlineScenarioNode buildOutlineScenarioNode(final Scenario scenario, Set<String> inheritedTags, int depth) { int idx = 0; List<OutlineScenarioRowNode> outlineRowNodes = Lists.newArrayListWithExpectedSize(scenario .getExampleParameters().size()); Set<String> allTags = Sets.newHashSet(); allTags.addAll(inheritedTags); if (scenario.getTags() != null) { allTags.addAll(scenario.getTags()); } for (final ExampleParameter outlineParameters : scenario.getExampleParameters()) { BasicScenarioNode basicSenarioNode = buildBasicScenarioNode(scenario, outlineParameters, allTags, depth + 2); outlineRowNodes.add(new OutlineScenarioRowNode(idx++, basicSenarioNode, allTags, depth + 1)); } return new OutlineScenarioNode(scenario.getDescription(), outlineRowNodes, allTags, depth); }
@Override public <RETURN_TYPE> List<RETURN_TYPE> accept(final ExecutionNodeVisitor<RETURN_TYPE> executionNodeVisitor) { final List<RETURN_TYPE> toReturn = Lists.newArrayList(); toReturn.add(executionNodeVisitor.visit(this)); for (final OutlineScenarioRowNode outlineRow : getChildren()) { toReturn.addAll(outlineRow.accept(executionNodeVisitor)); } return toReturn; }
public OutlineScenarioNode buildOutlineScenarioNode(final Scenario scenario, Set<String> inheritedTags, int depth) { int idx = 0; List<OutlineScenarioRowNode> outlineRowNodes = Lists.newArrayListWithExpectedSize(scenario .getExampleParameters().size()); Set<String> allTags = Sets.newHashSet(); allTags.addAll(inheritedTags); if (scenario.getTags() != null) { allTags.addAll(scenario.getTags()); } // TODO pass in the example params into the outline scenarionode for (final ExampleParameter outlineParameters : scenario.getExampleParameters()) { BasicScenarioNode basicSenarioNode = buildBasicScenarioNode(scenario, outlineParameters, allTags, depth + 2); outlineRowNodes.add(new OutlineScenarioRowNode(idx++, basicSenarioNode, allTags, depth + 1)); } return new OutlineScenarioNode(scenario.getDescription(), outlineRowNodes, allTags, depth); }
@Override protected boolean execute(OutlineScenarioRowNode node, RootNodeExecutionContext context) { return basicScenarioNodeRunner.run(node.getBasicScenarioNode(), context); }
@Override public <RETURN_TYPE> List<RETURN_TYPE> accept(ExecutionNodeVisitor<RETURN_TYPE> executionNodeVisitor) { List<RETURN_TYPE> toReturn = Lists.newArrayList(); toReturn.add(executionNodeVisitor.visit(this)); if (getChildren().size() == 1) { toReturn.addAll(getChildren().get(0).accept(executionNodeVisitor)); } return toReturn; }
@Override public Void visit(OutlineScenarioNode outlineScenarioNode) { for (OutlineScenarioRowNode row : outlineScenarioNode.getChildren()) { visit(row.getBasicScenarioNode()); } return null; }
@Override public String getDescription() { return rowIndex + " " + getChildren().get(0).getScenarioName() + ":"; }