assertEquals(nci1.n2, nci1.n1.searchImmediateSubnodes("name", "n2")); return super.determinePlacement(v,p,a); assertEquals(nci2.n2, nci2.n1.searchImmediateSubnodes("name", "n2")); assertEquals(nci1.n2, nci1.n1.searchImmediateSubnodes("name", "n2")); return super.determinePlacement(v,p,a); assertEquals(nci2.n2, nci2.n1.searchImmediateSubnodes("name", "n2")); assertEquals(nci1.n2, nci1.searchImmediateSubnodes("name", "n2")); return super.determinePlacement(v,p,a); assertEquals(nci2.n2, nci2.searchImmediateSubnodes("name", "n2")); assertEquals(nci1.n2, nci1.searchImmediateSubnodes("name", "n2")); assertEquals(null, nci1.n1.searchImmediateSubnodes("name", "n2")); return super.determinePlacement(v,p,a); assertEquals(nci2.n2, nci2.searchImmediateSubnodes("name", "n2")); assertEquals(null, nci2.n1.searchImmediateSubnodes("name", "n2")); assertEquals(nci1.n3, nci1.n2.n1.searchImmediateSubnodes("name", "n3")); return super.determinePlacement(v,p,a); assertEquals(nci2.n3, nci2.n2.n1.searchImmediateSubnodes("name", "n3")); hadDP = true; return super.determinePlacement(v, placement, args); assertTrue(nci1.hadDP); assertEquals(null, nci1.n1.searchImmediateSubnodes("name", "n3")); assertEquals(nci1.n3, nci1.n2.searchImmediateSubnodes("name", "n3")); // This ISNT what you would want to happen: the instance nci6 has // "captured" the name "n2", so node n4 is places inside the wrong subnode. // I'm capturing this in a unit test to streamline response to bug reports. assertEquals(nci6.n4, nci6.n2.searchImmediateSubnodes("name", "n4"));