* Tests that elements can be set, retrieved and removed for a 5D container
*/
public void testFiveD()
{
// Set and get them one at a time.
NDimensionalIndex index =
new NDimensionalIndex(new int[] { 0, 0, 0, 0, 0 });
container.set(index, "a");
assertEquals("failed with 5d index ", "a", container.get(index));
index = new NDimensionalIndex(new int[] { 1, 2, 3, 4, 5 });
container.set(index, "b");
assertEquals("failed with 5d index ", "b", container.get(index));
index = new NDimensionalIndex(new int[] { 1, 2, 1, 0, 7 });
container.set(index, "c");
assertEquals("failed with 5d index ", "c", container.get(index));
index = new NDimensionalIndex(new int[] { 10, 12, 1, 6, 23 });
container.set(index, "d");
assertEquals("failed with 5d index ", "d", container.get(index));
index = new NDimensionalIndex(new int[] { 10, 12, 1, 3, 23 });
container.set(index, "e");
assertEquals("failed with 5d index ", "e", container.get(index));
index = new NDimensionalIndex(new int[] { 10, 12, 1, 3, 9 });
container.set(index, "f");
assertEquals("failed with 5d index ", "f", container.get(index));
// Now retrieve all of them
index = new NDimensionalIndex(new int[] { 0, 0, 0, 0, 0 });
assertEquals("failed with 5d index ", "a", container.get(index));
index = new NDimensionalIndex(new int[] { 1, 2, 3, 4, 5 });
assertEquals("failed with 5d index ", "b", container.get(index));
index = new NDimensionalIndex(new int[] { 1, 2, 1, 0, 7 });
assertEquals("failed with 5d index ", "c", container.get(index));
index = new NDimensionalIndex(new int[] { 10, 12, 1, 6, 23 });
assertEquals("failed with 5d index ", "d", container.get(index));
index = new NDimensionalIndex(new int[] { 10, 12, 1, 3, 23 });
assertEquals("failed with 5d index ", "e", container.get(index));
index = new NDimensionalIndex(new int[] { 10, 12, 1, 3, 9 });
assertEquals("failed with 5d index ", "f", container.get(index));
assertEquals("should be 23 elements in dim 5", 24,
container.getNumCellsInDimension(index));
assertEquals("wrong no. elements in 3rd dimension ", 4,
container.getNumCellsInDimension(
new NDimensionalIndex(new int[] {1, 2, 3})));
// Retrieve something that doesn't exist
index = new NDimensionalIndex(new int[] { 3, 4, 2, 1, 2 });
assertNull("failed with 5d index ", container.get(index));
// Amend an element that does exist and check all
index = new NDimensionalIndex(new int[] { 1, 2, 1, 0, 7 });
container.set(index, "g");
assertEquals("failed with 5d index ", "g", container.get(index));
index = new NDimensionalIndex(new int[] { 0, 0, 0, 0, 0 });
assertEquals("failed with 5d index ", "a", container.get(index));
index = new NDimensionalIndex(new int[] { 1, 2, 3, 4, 5 });
assertEquals("failed with 5d index ", "b", container.get(index));
index = new NDimensionalIndex(new int[] { 10, 12, 1, 6, 23 });
assertEquals("failed with 5d index ", "d", container.get(index));
index = new NDimensionalIndex(new int[] { 10, 12, 1, 3, 23 });
assertEquals("failed with 5d index ", "e", container.get(index));
index = new NDimensionalIndex(new int[] { 10, 12, 1, 3, 9 });
assertEquals("failed with 5d index ", "f", container.get(index));
assertEquals("should be 23 elements in dim 5", 24,
container.getNumCellsInDimension(index));
assertEquals("wrong no. elements in 3rd dimension ", 4,
container.getNumCellsInDimension(
new NDimensionalIndex(new int[] {1, 2, 3})));
// Remove an element and check all
index = new NDimensionalIndex(new int[] { 1, 2, 1, 0, 7 });
container.remove(index);
assertNull("failed with 5d index ", container.get(index));
index = new NDimensionalIndex(new int[] { 0, 0, 0, 0, 0 });
assertEquals("failed with 5d index ", "a", container.get(index));
index = new NDimensionalIndex(new int[] { 1, 2, 3, 4, 5 });
assertEquals("failed with 5d index ", "b", container.get(index));
index = new NDimensionalIndex(new int[] { 10, 12, 1, 6, 23 });
assertEquals("failed with 5d index ", "d", container.get(index));
index = new NDimensionalIndex(new int[] { 10, 12, 1, 3, 23 });
assertEquals("failed with 5d index ", "e", container.get(index));
index = new NDimensionalIndex(new int[] { 10, 12, 1, 3, 9 });
assertEquals("failed with 5d index ", "f", container.get(index));
assertEquals("should be 23 elements in dim 5", 24,
container.getNumCellsInDimension(index));
assertEquals("wrong no. elements in 3rd dimension ", 4,
container.getNumCellsInDimension(
new NDimensionalIndex(new int[] {1, 2, 3})));
}