curveTo(20,10,30,20,30,30);//4
quadTo(40,40, 50, 10);//3
close();//5
PathToPathIteratorAdapter pi=new PathToPathIteratorAdapter(p);
PathIterator i = gp.getPathIterator(new AffineTransform());
while(!i.isDone()){
assertFalse("More content then we expected", pi.isDone());
float[] expected=new float[6];
float[] actual=new float[6];
int expectedSegment = i.currentSegment(expected);
int actualSegement = pi.currentSegment(actual);
assertEquals(toName(expectedSegment), toName(actualSegement));
for( int j = 0; j < actual.length; j++ ) {
assertEquals(expected[j], actual[j], 0);
}
i.next();
pi.next();
}
assertTrue("Less content then we expected", pi.isDone());
pi=new PathToPathIteratorAdapter(p);
i = gp.getPathIterator(new AffineTransform());
while(!i.isDone()){
assertFalse(pi.isDone());
float[] expected=new float[6];
float[] actual=new float[6];
assertEquals(i.currentSegment(expected),
pi.currentSegment(actual));
for( int j = 0; j < actual.length; j++ ) {
assertEquals(expected[j], actual[j], 0);
}
i.next();
pi.next();
}
assertTrue(pi.isDone());
}