public void test_XMLNode_remove()
{
XMLAttributes attr = new XMLAttributes();
XMLTriple trp_p = new XMLTriple("parent","","");
XMLTriple trp_c1 = new XMLTriple("child1","","");
XMLTriple trp_c2 = new XMLTriple("child2","","");
XMLTriple trp_c3 = new XMLTriple("child3","","");
XMLTriple trp_c4 = new XMLTriple("child4","","");
XMLTriple trp_c5 = new XMLTriple("child5","","");
XMLNode p = new XMLNode(trp_p,attr);
XMLNode c1 = new XMLNode(trp_c1,attr);
XMLNode c2 = new XMLNode(trp_c2,attr);
XMLNode c3 = new XMLNode(trp_c3,attr);
XMLNode c4 = new XMLNode(trp_c4,attr);
XMLNode c5 = new XMLNode(trp_c5,attr);
XMLNode r;
p.addChild(c1);
p.addChild(c2);
p.addChild(c3);
p.addChild(c4);
p.addChild(c5);
r = p.removeChild(5);
assertTrue( r == null );
r = p.removeChild(1);
assertTrue( p.getNumChildren() == 4 );
assertTrue( ( "child2" != r.getName() ) == false );
r = null;
r = p.removeChild(3);
assertTrue( p.getNumChildren() == 3 );
assertTrue( ( "child5" != r.getName() ) == false );
r = null;
r = p.removeChild(0);
assertTrue( p.getNumChildren() == 2 );
assertTrue( ( "child1" != r.getName() ) == false );
r = null;
r = p.removeChild(1);
assertTrue( p.getNumChildren() == 1 );
assertTrue( ( "child4" != r.getName() ) == false );
r = null;
r = p.removeChild(0);
assertTrue( p.getNumChildren() == 0 );
assertTrue( ( "child3" != r.getName() ) == false );
r = null;
p.addChild(c1);
p.addChild(c2);
p.addChild(c3);
p.addChild(c4);
p.addChild(c5);
r = p.removeChild(4);
assertTrue( p.getNumChildren() == 4 );
assertTrue( ( "child5" != r.getName() ) == false );
r = null;
r = p.removeChild(3);
assertTrue( p.getNumChildren() == 3 );
assertTrue( ( "child4" != r.getName() ) == false );
r = null;
r = p.removeChild(2);
assertTrue( p.getNumChildren() == 2 );
assertTrue( ( "child3" != r.getName() ) == false );
r = null;
r = p.removeChild(1);
assertTrue( p.getNumChildren() == 1 );
assertTrue( ( "child2" != r.getName() ) == false );
r = null;
r = p.removeChild(0);
assertTrue( p.getNumChildren() == 0 );
assertTrue( ( "child1" != r.getName() ) == false );
r = null;
p.addChild(c1);
p.addChild(c2);
p.addChild(c3);
p.addChild(c4);
p.addChild(c5);
r = p.removeChild(0);
assertTrue( p.getNumChildren() == 4 );
assertTrue( ( "child1" != r.getName() ) == false );
r = null;
r = p.removeChild(0);
assertTrue( p.getNumChildren() == 3 );
assertTrue( ( "child2" != r.getName() ) == false );
r = null;
r = p.removeChild(0);
assertTrue( p.getNumChildren() == 2 );
assertTrue( ( "child3" != r.getName() ) == false );
r = null;
r = p.removeChild(0);
assertTrue( p.getNumChildren() == 1 );
assertTrue( ( "child4" != r.getName() ) == false );
r = null;
r = p.removeChild(0);
assertTrue( p.getNumChildren() == 0 );
assertTrue( ( "child5" != r.getName() ) == false );
r = null;
p.addChild(c1);
p.addChild(c2);
p.addChild(c3);
p.addChild(c4);
p.addChild(c5);
r = p.removeChild(0);
assertTrue( ( "child1" != r.getName() ) == false );
p.insertChild(0,r);
assertTrue( p.getNumChildren() == 5 );
assertTrue( ( "child1" != p.getChild(0).getName() ) == false );
r = null;
r = p.removeChild(1);
assertTrue( ( "child2" != r.getName() ) == false );
p.insertChild(1,r);
assertTrue( p.getNumChildren() == 5 );
assertTrue( ( "child2" != p.getChild(1).getName() ) == false );
r = null;
r = p.removeChild(2);
assertTrue( ( "child3" != r.getName() ) == false );
p.insertChild(2,r);
assertTrue( p.getNumChildren() == 5 );
assertTrue( ( "child3" != p.getChild(2).getName() ) == false );
r = null;
r = p.removeChild(3);
assertTrue( ( "child4" != r.getName() ) == false );
p.insertChild(3,r);
assertTrue( p.getNumChildren() == 5 );
assertTrue( ( "child4" != p.getChild(3).getName() ) == false );
r = null;
r = p.removeChild(4);
assertTrue( ( "child5" != r.getName() ) == false );
p.insertChild(4,r);
assertTrue( p.getNumChildren() == 5 );
assertTrue( ( "child5" != p.getChild(4).getName() ) == false );
r = null;
p = null;
c1 = null;
c2 = null;
c3 = null;
c4 = null;
c5 = null;
attr = null;
trp_p = null;
trp_c1 = null;
trp_c2 = null;
trp_c3 = null;
trp_c4 = null;
trp_c5 = null;
}