assertEquals(nci1.n2, nci1.n1.searchImmediateSubnodes("name", "n2")); return super.determinePlacement(v,p,a); assertEquals(nci2.n2, nci2.n1.searchImmediateSubnodes("name", "n2")); this.addTest("testPlacement"); this.addTest("testPlacementWithOverride"); assertEquals(nci1.n2, nci1.n1.searchImmediateSubnodes("name", "n2")); return super.determinePlacement(v,p,a); assertEquals(nci2.n2, nci2.n1.searchImmediateSubnodes("name", "n2")); this.addTest("testPlacement"); this.addTest("testPlacementWithOverride"); assertEquals(nci1.n2, nci1.searchImmediateSubnodes("name", "n2")); return super.determinePlacement(v,p,a); assertEquals(nci2.n2, nci2.searchImmediateSubnodes("name", "n2")); this.addTest("testPlacement"); this.addTest("testPlacementWithOverride"); 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")); this.addTest("testIgnorePlacement"); this.addTest("testIgnorePlacementWithOverride"); assertEquals(nci1.n3, nci1.n2.n1.searchImmediateSubnodes("name", "n3")); return super.determinePlacement(v,p,a); assertEquals(nci2.n3, nci2.n2.n1.searchImmediateSubnodes("name", "n3")); this.addTest("testPlacement"); this.addTest("testPlacementWithOverride"); hadDP = true; return super.determinePlacement(v, placement, args); assertTrue(nci1.hadDP); this.addTest("testOverride"); assertEquals(null, nci1.n1.searchImmediateSubnodes("name", "n3")); assertEquals(nci1.n3, nci1.n2.searchImmediateSubnodes("name", "n3")); this.addTest("testOverride"); // 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")); this.addTest("testErrantPlacement");