@Test
public void pointIterator() {

	assertTrue(this.path.add(this.s1));
	assertTrue(this.path.add(this.s2));
	assertTrue(this.path.add(this.s3));
	assertTrue(this.path.add(this.s5));		
	assertTrue(this.path.add(this.s5));
	
	Iterator<ConnectionStub> iterator = this.path.pointIterator();
	assertTrue(iterator.hasNext());
	assertSame(this.c1, iterator.next());
	assertTrue(iterator.hasNext());
	assertSame(this.c2, iterator.next());
	assertTrue(iterator.hasNext());
	assertSame(this.c3, iterator.next());
	assertTrue(iterator.hasNext());
	assertSame(this.c4, iterator.next());
	assertTrue(iterator.hasNext());
	assertSame(this.c5, iterator.next());
	assertTrue(iterator.hasNext());
	assertSame(this.c4, iterator.next());
	assertFalse(iterator.hasNext());
	iterator = this.path.pointIterator();
	assertTrue(iterator.hasNext());
	assertSame(this.c1, iterator.next());
	assertTrue(iterator.hasNext());
	assertSame(this.c2, iterator.next());
	assertTrue(iterator.hasNext());
	assertSame(this.c3, iterator.next());
	assertTrue(iterator.hasNext());
	assertSame(this.c4, iterator.next());
	assertTrue(iterator.hasNext());
	assertSame(this.c5, iterator.next());
	assertTrue(iterator.hasNext());
	assertSame(this.c4, iterator.next());
	assertFalse(iterator.hasNext());
}