@Test public void testACoreMetadatadd1() { MetadataList<Elem> list = new MetadataList<>(); for (int i = 0; i < 3; i++) { list.add(); } checkContainerSize(list, new int[] {0,0,0}); }
/** * Construct a list containing a specified number of primary and secondary elements. * * This may be used to specify e.g. the number of image series including all sub-resolutions. * * @param sizes The number of primary and secondary list elements; the array elements are the secondary element sizes. */ public MetadataList(int[] sizes) { for (int i : sizes) { add(i); } }
@Test public void testConstructEmpty() { MetadataList<Elem> list = new MetadataList<>(); assertEquals(0, list.size()); }
@Test(dataProvider = "itemlist") public void testCountsSized(int[][] data, int[] expected) { MetadataList<Elem> list = new MetadataList<>(expected); assertArrayEquals(expected, list.sizes()); for (int i = 0; i < data.length; i++) { for (int j = 0; j < data[i].length; j++) { Elem e = new Elem(); e.value = data[i][j]; list.set(i, j, e); } } checkContainerSize(list, expected); checkContainer(list, data); }
@Test public void testRemove2() { MetadataList<Elem> list = new MetadataList<>(new int[] {5,4,3,2,1,0}); checkContainerSize(list, new int[] {5,4,3,2,1,0}); list.clear(2); list.clear(4); checkContainerSize(list, new int[] {5,4,0,2,0,0}); }
private void checkContainer(MetadataList<Elem> list, int[][] data) { for (int i = 0; i < data.length; i++) { for (int j = 0; j < data[i].length; j++) { assertEquals(list.get(i, j).value, data[i][j]); } } }
@Test public void testConstructSize1() { MetadataList<Elem> list = new MetadataList<>(5); checkContainerSize(list, new int[] {0,0,0,0,0}); }
@Test public void testAdd2() { MetadataList<Elem> list = new MetadataList<>(); int[] sizes = new int[] { 6,2,1,5,9,2,1 }; for (int s : sizes) { list.add(s); } checkContainerSize(list, sizes); }
/** * Add a secondary array element to the specified primary array * @param i1 The primary array index * @param value The element to set */ @Override public void add(int i1, CoreMetadata value) { super.add(i1, value); }
@Test public void testRemove1() { MetadataList<Elem> list = new MetadataList<>(new int[] {5,4,3,2,1,0}); checkContainerSize(list, new int[] {5,4,3,2,1,0}); list.clear(); checkContainerSize(list, new int[] {}); }
@Test public void testConstructSize2() { MetadataList<Elem> list = new MetadataList<>(4,3); checkContainerSize(list, new int[] {3,3,3,3}); }
@Test public void testAdd1() { MetadataList<Elem> list = new MetadataList<>(); for (int i = 0; i < 2; i++) { list.add(new Elem()); } checkContainerSize(list, new int[] {1,1}); }
/** * Construct a list containing a specified number of primary and secondary elements. * * This may be used to specify e.g. the number of image series including all sub-resolutions. * * @param sizes The number of primary and secondary list elements; the array elements are the secondary element sizes. */ public MetadataList(int[] sizes) { for (int i : sizes) { add(i); } }
@Test public void testConstructSize3() { MetadataList<Elem> list = new MetadataList<>(new int[] {5,4,3,2,1,0}); checkContainerSize(list, new int[] {5,4,3,2,1,0}); }
@Test(dataProvider = "itemlist") public void testCountsAppend(int[][] data, int[] expected) { MetadataList<Elem> list = new MetadataList<>(); for (int i = 0; i < data.length; i++) { list.add(); for (int j = 0; j < data[i].length; j++) { Elem e = new Elem(); e.value = data[i][j]; list.add(i, e); } } checkContainerSize(list, expected); checkContainer(list, data); }
/** * Construct a list containing a specified number of primary elements and a fixed number of secondary elements. * * This may be used to specify e.g. the number of image series with a fixed number of sub-resolutions. * * @param size1 The number of primary list elements * @param size2 The number of secondary level list elements */ public MetadataList(int size1, int size2) { for (int i = 0; i < size1; i++) { add(size2); } }
@Test(dataProvider = "itemlist") public void testCopy(int[][] data, int[] expected) { MetadataList<Elem> list = new MetadataList<>(); for (int i = 0; i < data.length; i++) { list.add(); for (int j = 0; j < data[i].length; j++) { Elem e = new Elem(); e.value = data[i][j]; list.add(i, e); } } MetadataList<Elem> list2 = new MetadataList<>(list); checkContainerSize(list, expected); checkContainer(list, data); checkContainer(list2, data); }