RepeatUnrollStrategy extends AbstractTraversalStrategy<TraversalStrategy.OptimizationStrategy> implements TraversalStrategy.OptimizationStrategy { public static RepeatUnrollStrategy instance() { return INSTANCE; } private  RepeatUnrollStrategy(); @Override void apply(final Traversal.Admin<?, ?> traversal); static RepeatUnrollStrategy instance();  }
@Test public void doTest() { final TraversalStrategies strategies = new DefaultTraversalStrategies(); strategies.addStrategies(RepeatUnrollStrategy.instance()); for (final TraversalStrategy strategy : this.otherStrategies) { strategies.addStrategies(strategy); } this.original.asAdmin().setStrategies(strategies); this.original.asAdmin().applyStrategies(); assertEquals(this.optimized, this.original); }