@Test
public void testSubGraphIterator()
{
RuleRegistry ruleRegistry = new RuleRegistry();
ruleRegistry.addElementFactory( NonTapFactory.TEMP_TAP, new NonTapFactory() );
PlannerContext plannerContext = new PlannerContext( ruleRegistry, null, null, null, true );
ruleRegistry.addRule( new RuleInsertionTransformer( PlanPhase.PreResolveAssembly, new TestCheckpointExpression(), IntermediateTapElementFactory.TEMP_TAP ) );
RuleResult ruleResult = new RuleExec( new TraceWriter(), ruleRegistry ).executeRulePhase( PlanPhase.PreResolveAssembly, plannerContext, new RuleResult( new StandardElementGraph() ) );
FlowElementGraph flowElementGraph = ruleResult.getAssemblyGraph();
SubGraphIterator iterator = new ExpressionSubGraphIterator(
new PlannerContext(),
new NoGroupTapExpressionGraph(),
new TapGroupTapExpressionGraph(),
flowElementGraph
);
while( iterator.hasNext() )
assertNotNull( iterator.next() );
}