public void testTreeBranchPart3D() {
BasicTreeBranchPart3D part3D = new BasicTreeBranchPart3D(mockUniverse3D, part3DState, mockBranchPart);
CompilerHelper.compile(part3D.getGroup());
assertEquals(nbLeaves, part3D.getLeaves().size());
assertEquals(part3DState.getEndPoint().toPointValue(), part3D.getEndPoint());
Group partGroup = part3D.getGroup();
assertTrue(partGroup.getCapability(Group.ALLOW_CHILDREN_WRITE));
assertTrue(partGroup.getCapability(Group.ALLOW_CHILDREN_EXTEND));
int nbTimesNoLeafShapeIsFound = 0;
int nbLeavesFound = 0;
for (Enumeration enumeration = partGroup.getAllChildren(); enumeration.hasMoreElements();) {
Object child = enumeration.nextElement();
if (child instanceof BranchGroup) {
nbLeavesFound++;
} else {
if (child instanceof Shape3D) {