public void testAddingOberserverToChain() throws GraphException { GraphProcessor processor = new GraphProcessor(); GraphProcessingObserver[] observers = processor.getObservers(); assertNotNull(observers); assertEquals(0, observers.length); GraphProcessingObserverMock observerMock = new GraphProcessingObserverMock(); processor.addObserver(observerMock); observers = processor.getObservers(); assertNotNull(observers); assertEquals(1, observers.length); assertSame(observerMock, observers[0]); Graph graph = new Graph("test-graph"); graph.addNode(new Node("a", OpMock.Spi.class.getName())); processor.executeGraph(graph, ProgressMonitor.NULL); assertEquals(6, observerMock.entries.size()); assertEquals("graph [test-graph] started", observerMock.entries.get(0)); assertEquals("tile java.awt.Rectangle[x=0,y=0,width=10,height=5] started", observerMock.entries.get(1)); assertEquals("tile java.awt.Rectangle[x=0,y=0,width=10,height=5] stopped", observerMock.entries.get(2)); assertEquals("tile java.awt.Rectangle[x=0,y=5,width=10,height=5] started", observerMock.entries.get(3)); assertEquals("tile java.awt.Rectangle[x=0,y=5,width=10,height=5] stopped", observerMock.entries.get(4)); assertEquals("graph [test-graph] stopped", observerMock.entries.get(5)); }