}
public void testCycleAfterProvider() throws Exception {
eagerCycleFinder.reportError(
TestUtils.dependencyList(
new Dependency(Dependency.GINJECTOR, foo(), SOURCE),
new Dependency(foo(), bar(), false, true, SOURCE)),
TestUtils.dependencyList(
new Dependency(bar(), baz(), SOURCE),
new Dependency(baz(), bar(), SOURCE)));
expect(origin.getDependencies()).andStubReturn(
TestUtils.dependencyList(new Dependency(Dependency.GINJECTOR, foo(), SOURCE)));
control.replay();
DependencyGraph graph = new DependencyGraph.Builder(origin)
.addEdge(new Dependency(Dependency.GINJECTOR, foo(), SOURCE))
.addEdge(new Dependency(foo(), bar(), false, true, SOURCE))
.addEdge(new Dependency(bar(), baz(), SOURCE))
.addEdge(new Dependency(baz(), bar(), SOURCE)).build();
assertTrue(eagerCycleFinder.findAndReportCycles(graph));
control.verify();
}