private static void DoTestVerticalSlices(int itemCount, int sliceCount, int expectedBoundablesPerSlice, int expectedBoundablesOnLastSlice) { var t = new STRtreeDemo.TestTree(2); var slices = t.VerticalSlices(ItemWrappers(itemCount), sliceCount); Assert.AreEqual(sliceCount, slices.Length); for (int i = 0; i < sliceCount - 1; i++) { //-1 Assert.AreEqual(expectedBoundablesPerSlice, slices[i].Count); } Assert.AreEqual(expectedBoundablesOnLastSlice, slices[sliceCount - 1].Count); }
private static void DoTestCreateParentsFromVerticalSlice(int childCount, int nodeCapacity, int expectedChildrenPerParentBoundable, int expectedChildrenOfLastParent) { var t = new STRtreeDemo.TestTree(nodeCapacity); var parentBoundables = t.CreateParentBoundablesFromVerticalSlice(ItemWrappers(childCount), 0); for (int i = 0; i < parentBoundables.Count - 1; i++) { //-1 var parentBoundable = (AbstractNode)parentBoundables[i]; Assert.AreEqual(expectedChildrenPerParentBoundable, parentBoundable.ChildBoundables.Count); } var lastParent = (AbstractNode)parentBoundables[parentBoundables.Count - 1]; Assert.AreEqual(expectedChildrenOfLastParent, lastParent.ChildBoundables.Count); }