diff options
author | kmu <kmu@hdfgroup.org> | 2019-12-11 16:50:39 (GMT) |
---|---|---|
committer | kmu <kmu@hdfgroup.org> | 2019-12-11 16:50:39 (GMT) |
commit | 026c5b6f19dd06181a8bbe672704116778b1174b (patch) | |
tree | 5479f7a5c1c4bdaa669df705c230fe2f24c26117 /java/test | |
parent | 1f871e23b7c3fdec925004f2cd39d3a2cdd8decb (diff) | |
parent | b003ff5b1b35bd87444a22c4be2ea92b20a3d1e4 (diff) | |
download | hdf5-026c5b6f19dd06181a8bbe672704116778b1174b.zip hdf5-026c5b6f19dd06181a8bbe672704116778b1174b.tar.gz hdf5-026c5b6f19dd06181a8bbe672704116778b1174b.tar.bz2 |
Merge branch 'develop' of https://git.hdfgroup.org/scm/hdffv/hdf5 into develop
Diffstat (limited to 'java/test')
-rw-r--r-- | java/test/TestH5.java | 143 | ||||
-rw-r--r-- | java/test/TestH5Edefault.java | 2 | ||||
-rw-r--r-- | java/test/TestH5R.java | 486 | ||||
-rw-r--r-- | java/test/testfiles/JUnit-TestH5.txt | 3 | ||||
-rw-r--r-- | java/test/testfiles/JUnit-TestH5R.txt | 41 |
5 files changed, 539 insertions, 136 deletions
diff --git a/java/test/TestH5.java b/java/test/TestH5.java index 2bee075..9b2a1d3 100644 --- a/java/test/TestH5.java +++ b/java/test/TestH5.java @@ -22,12 +22,17 @@ import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; +import java.io.FileReader; +import java.io.FileNotFoundException; import java.io.IOException; import java.io.ObjectInputStream; import java.io.ObjectOutputStream; +import java.io.Reader; +import java.io.StreamTokenizer; import hdf.hdf5lib.H5; import hdf.hdf5lib.HDF5Constants; +import hdf.hdf5lib.exceptions.HDF5LibraryException; import org.junit.After; import org.junit.Before; @@ -50,6 +55,81 @@ public class TestH5 { public void nextTestName() { System.out.println(); } + private static final String H5_FILE = "testData.h5"; + private static final String EXPORT_FILE = "testExport.txt"; + private static final int DIM_X = 4; + private static final int DIM_Y = 6; + private static final int RANK = 2; + long H5fid = -1; + long H5dsid = -1; + long H5did = -1; + long[] H5dims = { DIM_X, DIM_Y }; + + private final void _deleteFile(String filename) { + File file = null; + try { + file = new File(filename); + } + catch (Throwable err) {} + + if (file.exists()) { + try {file.delete();} catch (SecurityException e) {} + } + } + + private final long _createDataset(long fid, long dsid, String name, long dapl) { + long did = -1; + try { + did = H5.H5Dcreate(fid, name, HDF5Constants.H5T_STD_I32LE, dsid, + HDF5Constants.H5P_DEFAULT, HDF5Constants.H5P_DEFAULT, dapl); + } + catch (Throwable err) { + err.printStackTrace(); + fail("H5.H5Dcreate: " + err); + } + assertTrue("TestH5._createDataset: ", did > 0); + + return did; + } + + private final void _createH5File() { + try { + H5fid = H5.H5Fcreate(H5_FILE, HDF5Constants.H5F_ACC_TRUNC, + HDF5Constants.H5P_DEFAULT, HDF5Constants.H5P_DEFAULT); + H5dsid = H5.H5Screate_simple(2, H5dims, null); + H5did = _createDataset(H5fid, H5dsid, "dset", HDF5Constants.H5P_DEFAULT); + } + catch (Throwable err) { + err.printStackTrace(); + fail("TestH5Pfapl.createH5file: " + err); + } + assertTrue("TestH5.createH5file: H5.H5Fcreate: ", H5fid > 0); + assertTrue("TestH5.createH5file: H5.H5Screate_simple: ", H5dsid > 0); + assertTrue("TestH5.createH5file: _createDataset: ", H5did > 0); + + try { + H5.H5Fflush(H5fid, HDF5Constants.H5F_SCOPE_LOCAL); + } + catch (Throwable err) { + err.printStackTrace(); + } + } + + public final void _closeH5File() throws HDF5LibraryException { + if (H5did >= 0) + try {H5.H5Dclose(H5did);} catch (Exception ex) {} + if (H5dsid > 0) + try {H5.H5Sclose(H5dsid);} catch (Exception ex) {} + if (H5fid > 0) + try {H5.H5Fclose(H5fid);} catch (Exception ex) {} + H5fid = -1; + H5dsid = -1; + H5did = -1; + } + + public final void _deleteH5file() { + _deleteFile(H5_FILE); + } /** * Test method for {@link hdf.hdf5lib.H5#J2C(int)}. @@ -268,4 +348,67 @@ public class TestH5 { fail("Exception thrown during test: " + ex.toString()); } } + + @Test + public void testH5export_dataset() { + int[][] dset_data = new int[DIM_X][DIM_Y]; + int[][] dset_indata = new int[DIM_X][DIM_Y]; + int FILLVAL = 99; + + _createH5File(); + + // Initialize the dataset. + for (int indx = 0; indx < DIM_X; indx++) + for (int jndx = 0; jndx < DIM_Y; jndx++) + dset_data[indx][jndx] = FILLVAL; + + try { + if (H5did >= 0) + H5.H5Dwrite(H5did, HDF5Constants.H5T_STD_I32LE, + HDF5Constants.H5S_ALL, HDF5Constants.H5S_ALL, + HDF5Constants.H5P_DEFAULT, dset_data); + } + catch (Exception e) { + e.printStackTrace(); + } + + _closeH5File(); + + try { + H5.H5export_dataset(EXPORT_FILE, H5_FILE, "/dset", 99); + } + catch (HDF5LibraryException err) { + err.printStackTrace(); + fail("H5export_dataset failed: " + err); + } + + File file = new File(EXPORT_FILE); + + try { + Reader reader = new FileReader(EXPORT_FILE); + StreamTokenizer streamTokenizer = new StreamTokenizer(reader); + int indx = 0; + int jndx = 0; + while(streamTokenizer.nextToken() != StreamTokenizer.TT_EOF){ + if(streamTokenizer.ttype == StreamTokenizer.TT_NUMBER) { + dset_indata[indx][jndx] = (int)streamTokenizer.nval; + jndx++; + if (jndx >= DIM_Y) { + jndx = 0; + indx++; + } + } + } + reader.close(); + } + catch (IOException err) { + err.printStackTrace(); + fail("read file failed: " + err); + } + for(int row = 0; row < DIM_X; row++) + for(int col = 0; col < DIM_Y; col++) { + assertTrue("H5export_dataset: <"+row+","+col+">"+dset_indata[row][col]+"=99", dset_indata[row][col]==99); + } + _deleteH5file(); + } } diff --git a/java/test/TestH5Edefault.java b/java/test/TestH5Edefault.java index ee2850b..6f968b1 100644 --- a/java/test/TestH5Edefault.java +++ b/java/test/TestH5Edefault.java @@ -366,7 +366,7 @@ public class TestH5Edefault { } assertTrue("H5.H5Eset_current_stack: get_num #:" + num_msg, num_msg == saved_num_msg); - // Se the current stack to be the default and try that again + // Set the current stack to be the default and try that again try { H5.H5Eset_current_stack(stack_id); num_msg = H5.H5Eget_num(HDF5Constants.H5E_DEFAULT); diff --git a/java/test/TestH5R.java b/java/test/TestH5R.java index 5349855..7b9f538 100644 --- a/java/test/TestH5R.java +++ b/java/test/TestH5R.java @@ -14,6 +14,7 @@ package test; import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNotNull; import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; @@ -24,9 +25,11 @@ import hdf.hdf5lib.H5; import hdf.hdf5lib.HDF5Constants; import hdf.hdf5lib.exceptions.HDF5Exception; import hdf.hdf5lib.exceptions.HDF5LibraryException; +import hdf.hdf5lib.exceptions.HDF5FunctionArgumentException; import org.junit.After; import org.junit.Before; +import org.junit.Ignore; import org.junit.Rule; import org.junit.Test; import org.junit.rules.TestName; @@ -42,6 +45,8 @@ public class TestH5R { long H5gid = -1; long H5did2 = -1; long[] H5dims = { DIM_X, DIM_Y }; + int[][] dset_data = new int[DIM_X][DIM_Y]; + int FILLVAL = 99; private final void _deleteFile(String filename) { File file = null; @@ -51,8 +56,9 @@ public class TestH5R { catch (Throwable err) {} if (file.exists()) { - try {file.delete();} catch (SecurityException e) {} + try {file.delete();} catch (SecurityException e) {e.printStackTrace();} } + assertFalse("TestH5R._deleteFile file still exists ", file.exists()); } private final long _createDataset(long fid, long dsid, String name, long dapl) { @@ -66,7 +72,7 @@ public class TestH5R { err.printStackTrace(); fail("H5.H5Dcreate: " + err); } - assertTrue("TestH5R._createDataset: ",did > 0); + assertTrue("TestH5R._createDataset: ", did > 0); return did; } @@ -100,6 +106,21 @@ public class TestH5R { H5did2 = _createDataset(H5gid, H5dsid, "dset2", HDF5Constants.H5P_DEFAULT); H5did = _createDataset(H5fid, H5dsid, "dset", HDF5Constants.H5P_DEFAULT); + // Initialize the dataset. + for (int indx = 0; indx < DIM_X; indx++) + for (int jndx = 0; jndx < DIM_Y; jndx++) + dset_data[indx][jndx] = FILLVAL; + + try { + if (H5did >= 0) + H5.H5Dwrite(H5did, HDF5Constants.H5T_NATIVE_INT, + HDF5Constants.H5S_ALL, HDF5Constants.H5S_ALL, + HDF5Constants.H5P_DEFAULT, dset_data[0]); + } + catch (Exception e) { + e.printStackTrace(); + } + } catch (Throwable err) { err.printStackTrace(); @@ -129,205 +150,438 @@ public class TestH5R { System.out.println(); } + // Test v1.8 APIs params + /* + * @Ignore public void testH5Rget_name() { long loc_id = H5fid; int ref_type = + * HDF5Constants.H5R_OBJECT; long ret_val = -1; byte[] ref = null; String[] name = {""}; String + * objName = "/dset"; + * + * try { ref = H5.H5Rcreate(H5fid, objName, ref_type, -1); } catch (Throwable err) { + * err.printStackTrace(); fail("H5.H5Rget_name:H5Rcreate " + err); } + * + * try { ret_val = H5.H5Rget_name(loc_id, ref_type, ref, name, 16); } catch (Throwable err) { + * err.printStackTrace(); fail("H5.H5Rget_name: " + err); } + * + * assertTrue("testH5Rget_name: H5Rget_name", ret_val>0); assertTrue("The name of the object: ", + * objName.equals(name[0])); } + * + * @Ignore public void testH5Rget_obj_type2() { int ref_type=HDF5Constants.H5R_OBJECT; byte[] + * ref=null; + * + * String objName = "/dset"; int obj_type = -1; + * + * try { ref = H5.H5Rcreate(H5fid, objName, ref_type, -1); } catch(Throwable err) { + * err.printStackTrace(); } + * + * try { obj_type = H5.H5Rget_obj_type(H5fid, HDF5Constants.H5R_OBJECT, ref); } catch (Throwable + * err) { err.printStackTrace(); fail("H5.H5Rget_obj_type2: " + err); } assertEquals(obj_type, + * HDF5Constants.H5O_TYPE_DATASET); } + * + * @Ignore public void testH5Rcreate_refobj() { byte[] ref = null; + * + * try { ref = H5.H5Rcreate(H5fid, "/dset", HDF5Constants.H5R_OBJECT, -1); } catch (Throwable err) { + * err.printStackTrace(); fail("H5.H5Rcreate: " + err); } assertNotNull(ref); } + * + * @Ignore public void testH5Rcreate_regionrefobj() { byte[] ref = null; try { ref = + * H5.H5Rcreate(H5fid, "/dset", HDF5Constants.H5R_DATASET_REGION, H5dsid); } catch (Throwable err) { + * err.printStackTrace(); fail("H5.H5Rcreate: " + err); } assertNotNull(ref); } + * + * @Ignore public void testH5Rdereference() { byte[] ref1 = null; byte[] ref2 = null; long + * dataset_id = -1; long group_id = -1; try { //Create reference on dataset ref1 = + * H5.H5Rcreate(H5fid, "/dset", HDF5Constants.H5R_DATASET_REGION, H5dsid); dataset_id= + * H5.H5Rdereference(H5fid, HDF5Constants.H5P_DEFAULT, HDF5Constants.H5R_DATASET_REGION, ref1); + * + * //Create reference on group ref2 = H5.H5Rcreate(H5gid, "/Group1", HDF5Constants.H5R_OBJECT, -1); + * group_id= H5.H5Rdereference(H5gid, HDF5Constants.H5P_DEFAULT, HDF5Constants.H5R_OBJECT, ref2); + * assertNotNull(ref1); assertNotNull(ref2); assertTrue(dataset_id >= 0); assertTrue(group_id >= 0); + * } catch (Throwable err) { err.printStackTrace(); fail("TestH5Rdereference " + err); } finally { + * try {H5.H5Dclose(dataset_id);} catch (Exception ex) {} try {H5.H5Gclose(group_id);} catch + * (Exception ex) {} } } + * + * @Ignore public void testH5Rget_region() { byte[] ref = null; long dsid = -1; try { ref = + * H5.H5Rcreate(H5fid, "/dset", HDF5Constants.H5R_DATASET_REGION, H5dsid); dsid = + * H5.H5Rget_region(H5fid, HDF5Constants.H5R_DATASET_REGION, ref); assertNotNull(ref); + * assertTrue(dsid >= 0); } catch (Throwable err) { err.printStackTrace(); + * fail("TestH5Rget_region: " + err); } finally { try {H5.H5Sclose(dsid);} catch (Exception ex) {} } + * } + * + * @Ignore//(expected = IllegalArgumentException.class) public void testH5Rget_name_Invalidreftype() + * throws Throwable { byte[] ref = null; String[] name = {""}; ref = H5.H5Rcreate(H5fid, "/dset", + * HDF5Constants.H5R_OBJECT, -1); H5.H5Rget_name(H5fid, HDF5Constants.H5R_DATASET_REGION, ref, name, + * 16); } + * + * @Ignore//(expected = NullPointerException.class) public void testH5Rget_name_NULLreference() + * throws Throwable { byte[] ref = null; String[] name = {""}; H5.H5Rget_name(H5fid, + * HDF5Constants.H5R_OBJECT, ref, name, 16); } + * + * @Ignore//(expected = HDF5LibraryException.class) public void + * testH5Rget_obj_type2_Invalidreftype() throws Throwable { byte[] ref = null; ref = + * H5.H5Rcreate(H5fid, "/dset", HDF5Constants.H5R_OBJECT, -1); H5.H5Rget_obj_type(H5fid, + * HDF5Constants.H5R_DATASET_REGION, ref); } + * + * @Ignore//(expected = HDF5LibraryException.class) public void testH5Rcreate_InvalidObjectName() + * throws Throwable { byte[] ref=H5.H5Rcreate(H5fid, "/GROUPS", HDF5Constants.H5R_OBJECT, -1); } + * + * @Ignore//(expected = HDF5LibraryException.class) public void testH5Rcreate_Invalidspace_id() + * throws Throwable { byte[] ref=H5.H5Rcreate(H5fid, "/dset", HDF5Constants.H5R_DATASET_REGION, -1); + * } + * + * @Ignore//(expected = IllegalArgumentException.class) public void testH5Rcreate_Invalidreftype() + * throws Throwable { byte[] ref=H5.H5Rcreate(H5fid, "/dset", HDF5Constants.H5R_BADTYPE, -1); } + * + * @Ignore//(expected = IllegalArgumentException.class) public void + * testH5Rgetregion_Invalidreftype() throws Throwable { byte[] ref = null; ref = H5.H5Rcreate(H5fid, + * "/dset", HDF5Constants.H5R_OBJECT, H5dsid); H5.H5Rget_region(H5fid, + * HDF5Constants.H5R_DATASET_REGION, ref); } + * + * @Ignore//(expected = IllegalArgumentException.class) public void + * testH5Rgetregion_Badreferencetype() throws Throwable { byte[] ref = null; ref = + * H5.H5Rcreate(H5fid, "/dset", HDF5Constants.H5R_OBJECT, H5dsid); H5.H5Rget_region(H5fid, + * HDF5Constants.H5R_OBJECT, ref); } + * + * @Ignore//(expected = NullPointerException.class) public void testH5Rgetregion_Nullreference() + * throws Throwable { byte[] ref = null; H5.H5Rget_region(H5fid, HDF5Constants.H5R_DATASET_REGION, + * ref); } + * + * @Ignore//(expected = NullPointerException.class) public void testH5Rdereference_Nullreference() + * throws Throwable { byte[] ref = null; H5.H5Rdereference(H5did2, HDF5Constants.H5P_DEFAULT, + * HDF5Constants.H5R_OBJECT, ref); } + * + * @Ignore//(expected = IllegalArgumentException.class) public void + * testH5Rdereference_Invalidreference() throws Throwable { byte[] ref1 = null; byte[] ref2 = null; + * ref1 = H5.H5Rcreate(H5fid, "/dset", HDF5Constants.H5R_DATASET_REGION, H5dsid); ref2 = + * H5.H5Rcreate(H5gid, "/Group1", HDF5Constants.H5R_OBJECT, -1); H5.H5Rdereference(H5gid, + * HDF5Constants.H5P_DEFAULT, HDF5Constants.H5R_OBJECT, ref1); } + */ + // Test v1.12 APIs params + @Test - public void testH5Rget_name() { - long loc_id=H5fid; - int ref_type=HDF5Constants.H5R_OBJECT; - long ret_val=-1; - byte[] ref=null; - String[] name= {""}; + public void testH5Rget_object() { + int ref_type = HDF5Constants.H5R_OBJECT2; + long ret_val = -1; + byte[] ref = null; + String name = ""; String objName = "/dset"; try { - ref = H5.H5Rcreate(H5fid, objName, ref_type, -1); + ref = H5.H5Rcreate_object(H5fid, objName, HDF5Constants.H5P_DEFAULT); } catch (Throwable err) { err.printStackTrace(); - fail("H5.H5Rget_name:H5Rcreate " + err); + fail("testH5Rget_object: H5Rcreate_object " + err); } try { - ret_val = H5.H5Rget_name(loc_id, ref_type, ref, name, 16); + ret_val = H5.H5Rget_type(ref); } catch (Throwable err) { err.printStackTrace(); - fail("H5.H5Rget_name: " + err); + fail("testH5Rget_object: H5Rget_type: " + err); } - - assertTrue("testH5Rget_name: H5Rget_name", ret_val>0); - assertTrue("The name of the object: ", objName.equals(name[0])); - } - - @Test - public void testH5Rget_obj_type2() { - int ref_type=HDF5Constants.H5R_OBJECT; - byte[] ref=null; - - String objName = "/dset"; - int obj_type = -1;; + assertTrue("testH5Rget_object: H5Rget_type", ret_val == ref_type); try { - ref = H5.H5Rcreate(H5fid, objName, ref_type, -1); + name = H5.H5Rget_file_name(ref); } - catch(Throwable err) { + catch (Throwable err) { err.printStackTrace(); + fail("testH5Rget_object: H5Rget_file_name: " + err); } + assertTrue("testH5Rget_object: H5Rget_file_name", H5_FILE.equals(name)); try { - obj_type = H5.H5Rget_obj_type(H5fid, HDF5Constants.H5R_OBJECT, ref); + name = H5.H5Rget_obj_name(ref, HDF5Constants.H5P_DEFAULT); } catch (Throwable err) { err.printStackTrace(); - fail("H5.H5Rget_obj_type2: " + err); + fail("testH5Rget_object: H5Rget_obj_name: " + err); } - assertEquals(obj_type, HDF5Constants.H5O_TYPE_DATASET); + assertTrue("The name of the object: ", objName.equals(name)); + H5.H5Rdestroy(ref); } @Test - public void testH5Rcreate_refobj() { + public void testH5Rget_obj_type3() { + int obj_type = -1; byte[] ref = null; + String objName = "/dset"; try { - ref = H5.H5Rcreate(H5fid, "/dset", HDF5Constants.H5R_OBJECT, -1); + ref = H5.H5Rcreate_object(H5fid, objName, HDF5Constants.H5P_DEFAULT); } catch (Throwable err) { err.printStackTrace(); - fail("H5.H5Rcreate: " + err); + fail("testH5Rget_obj_type3: H5Rcreate_object " + err); } - assertNotNull(ref); - } - @Test - public void testH5Rcreate_regionrefobj() { - byte[] ref = null; try { - ref = H5.H5Rcreate(H5fid, "/dset", HDF5Constants.H5R_DATASET_REGION, H5dsid); + obj_type = H5.H5Rget_obj_type3(ref, HDF5Constants.H5P_DEFAULT); } catch (Throwable err) { err.printStackTrace(); - fail("H5.H5Rcreate: " + err); + fail("testH5Rget_obj_type3: H5.H5Rget_obj_type3: " + err); } - assertNotNull(ref); + assertEquals(obj_type, HDF5Constants.H5O_TYPE_DATASET); + H5.H5Rdestroy(ref); } @Test - public void testH5Rdereference() { - byte[] ref1 = null; - byte[] ref2 = null; - long dataset_id = -1; - long group_id = -1; + public void testH5Rcreate_regionref_object() { + byte[] ref = null; + String objName = "/dset"; + long start[] = {2,2}; // Starting location of hyperslab + long stride[] = {1,1}; // Stride of hyperslab + long count[] = {1,1}; // Element count of hyperslab + long block[] = {3,3}; // Block size of hyperslab + + // Select 3x3 hyperslab for reference try { - //Create reference on dataset - ref1 = H5.H5Rcreate(H5fid, "/dset", HDF5Constants.H5R_DATASET_REGION, H5dsid); - dataset_id= H5.H5Rdereference(H5fid, HDF5Constants.H5P_DEFAULT, HDF5Constants.H5R_DATASET_REGION, ref1); - - //Create reference on group - ref2 = H5.H5Rcreate(H5gid, "/Group1", HDF5Constants.H5R_OBJECT, -1); - group_id= H5.H5Rdereference(H5gid, HDF5Constants.H5P_DEFAULT, HDF5Constants.H5R_OBJECT, ref2); - assertNotNull(ref1); - assertNotNull(ref2); - assertTrue(dataset_id>=0); - assertTrue(group_id>=0); + H5.H5Sselect_hyperslab(H5dsid, HDF5Constants.H5S_SELECT_SET, start, stride, count, block); } catch (Throwable err) { err.printStackTrace(); - fail("TestH5Rdereference " + err); - } - finally { - try {H5.H5Dclose(dataset_id);} catch (Exception ex) {} - try {H5.H5Gclose(group_id);} catch (Exception ex) {} + fail("testH5Rget_object: H5Sselect_hyperslab " + err); } - } - - @Test - public void testH5Rget_region() { - byte[] ref = null; - long dsid = -1; try { - ref = H5.H5Rcreate(H5fid, "/dset", HDF5Constants.H5R_DATASET_REGION, H5dsid); - dsid = H5.H5Rget_region(H5fid, HDF5Constants.H5R_DATASET_REGION, ref); - assertNotNull(ref); - assertTrue(dsid>=0); + ref = H5.H5Rcreate_region(H5fid, objName, H5dsid, HDF5Constants.H5P_DEFAULT); } catch (Throwable err) { err.printStackTrace(); - fail("TestH5Rget_region: " + err); - } - finally { - try {H5.H5Sclose(dsid);} catch (Exception ex) {} + fail("testH5Rget_object: H5Rcreate_region " + err); } + assertNotNull(ref); + H5.H5Rdestroy(ref); } - @Test(expected = IllegalArgumentException.class) - public void testH5Rget_name_Invalidreftype() throws Throwable { - byte[] ref = null; - String[] name= {""}; - ref = H5.H5Rcreate(H5fid, "/dset", HDF5Constants.H5R_OBJECT, -1); - H5.H5Rget_name(H5fid, HDF5Constants.H5R_DATASET_REGION, ref, name, 16); +// These tests need to be updated with new APIs +// @Test// +// public void testH5Rget_group() { +// long loc_id = H5fid; +// int ref_type = HDF5Constants.H5R_OBJECT2; +// long ret_val = -1; +// byte[] ref = null; +// String name = ""; +// String objName = "/dset"; +// +// try { +// ref = H5.H5Rcreate_object(H5fid, objName, HDF5Constants.H5P_DEFAULT); +// } +// catch (Throwable err) { +// err.printStackTrace(); +// fail("testH5Rget_object: H5Rcreate_object " + err); +// } +// try { +// dataset_id= H5.H5Rdereference(H5fid, HDF5Constants.H5P_DEFAULT, HDF5Constants.H5R_DATASET_REGION, ref1); +// +// //Create reference on group +// ref2 = H5.H5Rcreate(H5gid, "/Group1", HDF5Constants.H5R_OBJECT, -1); +// group_id= H5.H5Rdereference(H5gid, HDF5Constants.H5P_DEFAULT, HDF5Constants.H5R_OBJECT, ref2); +// assertNotNull(ref1); +// assertNotNull(ref2); +// assertTrue(dataset_id >= 0); +// assertTrue(group_id >= 0); +// } +// catch (Throwable err) { +// err.printStackTrace(); +// fail("TestH5Rdereference " + err); +// } +// finally { +// try {H5.H5Dclose(dataset_id);} catch (Exception ex) {} +// try {H5.H5Gclose(group_id);} catch (Exception ex) {} +// } +// } + +// @Test// +// public void testH5Rget_region_dataset() { +// long loc_id = H5fid; +// int ref_type = HDF5Constants.H5R_OBJECT2; +// long ret_val = -1; +// byte[] ref = null; +// String name = ""; +// String objName = "/dset"; +// +// try { +// ref = H5.H5Rcreate_object(H5fid, objName, HDF5Constants.H5P_DEFAULT); +// } +// catch (Throwable err) { +// err.printStackTrace(); +// fail("testH5Rget_object: H5Rcreate_object " + err); +// } +// try { +// dsid = H5.H5Rget_region(H5fid, HDF5Constants.H5R_DATASET_REGION, ref); +// assertNotNull(ref); +// assertTrue(dsid >= 0); +// } +// catch (Throwable err) { +// err.printStackTrace(); +// fail("TestH5Rget_region: " + err); +// } +// finally { +// try {H5.H5Sclose(dsid);} catch (Exception ex) {} +// } +// } + +// @Test// +// public void testH5Rget_attr() { +// long loc_id = H5fid; +// int ref_type = HDF5Constants.H5R_OBJECT2; +// long ret_val = -1; +// byte[] ref = null; +// String name = ""; +// String objName = "/dset"; +// +// try { +// ref = H5.H5Rcreate_object(H5fid, objName, HDF5Constants.H5P_DEFAULT); +// } +// catch (Throwable err) { +// err.printStackTrace(); +// fail("testH5Rget_object: H5Rcreate_object " + err); +// } +// try { +// dsid = H5.H5Rget_region(H5fid, HDF5Constants.H5R_DATASET_REGION, ref); +// assertNotNull(ref); +// assertTrue(dsid >= 0); +// } +// catch (Throwable err) { +// err.printStackTrace(); +// fail("TestH5Rget_region: " + err); +// } +// finally { +// try {H5.H5Sclose(dsid);} catch (Exception ex) {} +// } +// } + + // Test parameters to H5Rcreate_object + @Test(expected = NullPointerException.class) + public void testH5Rcreate_object_Nullname() throws Throwable { + String name = null; + H5.H5Rcreate_object(H5fid, name, HDF5Constants.H5P_DEFAULT); + } + + @Test(expected = HDF5FunctionArgumentException.class) + public void testH5Rget_name_Invalidloc() throws Throwable { + String name= ""; + H5.H5Rcreate_object(-1, name, HDF5Constants.H5P_DEFAULT); } + // Test parameters to H5Rcreate_region @Test(expected = NullPointerException.class) - public void testH5Rget_name_NULLreference() throws Throwable { + public void testH5Rcreate_region_Nullname() throws Throwable { + String name = null; + H5.H5Rcreate_region(H5fid, name, -1, HDF5Constants.H5P_DEFAULT); + } + + @Test(expected = HDF5FunctionArgumentException.class) + public void testH5Rcreate_region_Invalidloc() throws Throwable { + String name= ""; + H5.H5Rcreate_region(-1, name, -1, HDF5Constants.H5P_DEFAULT); + } + + // Test parameters to H5Rcreate_attr + @Test(expected = NullPointerException.class) + public void testH5Rcreate_attr_Nullname() throws Throwable { + String name = null; + String attrname = ""; + H5.H5Rcreate_attr(H5fid, name, attrname, HDF5Constants.H5P_DEFAULT); + } + + @Test(expected = NullPointerException.class) + public void testH5Rcreate_attr_Nullattrname() throws Throwable { + String name = ""; + String attrname = null; + H5.H5Rcreate_attr(H5fid, name, attrname, HDF5Constants.H5P_DEFAULT); + } + + @Test(expected = HDF5FunctionArgumentException.class) + public void testH5Rcreate_attr_Invalidloc() throws Throwable { + String name= ""; + String attrname= ""; + H5.H5Rcreate_attr(-1, name, attrname, HDF5Constants.H5P_DEFAULT); + } + + // Test parameters to H5Rdestroy + @Test(expected = NullPointerException.class) + public void testH5Rdestroy_Nullref() throws Throwable { byte[] ref = null; - String[] name= {""}; - H5.H5Rget_name(H5fid, HDF5Constants.H5R_OBJECT, ref, name, 16); + H5.H5Rdestroy(ref); } - @Test(expected = HDF5LibraryException.class) - public void testH5Rget_obj_type2_Invalidreftype() throws Throwable { + // Test parameters to H5Rget_type + @Test(expected = NullPointerException.class) + public void testH5Rget_type_Nullref() throws Throwable { byte[] ref = null; - ref = H5.H5Rcreate(H5fid, "/dset", HDF5Constants.H5R_OBJECT, -1); - H5.H5Rget_obj_type(H5fid, HDF5Constants.H5R_DATASET_REGION, ref); + H5.H5Rget_type(ref); + } + + // Test parameters to H5Requal + @Test(expected = NullPointerException.class) + public void testH5Requal_Nullref1() throws Throwable { + byte[] ref1 = null; + byte[] ref2 = {0,0,0,0}; + H5.H5Requal(ref1, ref2); } - @Test(expected = HDF5LibraryException.class) - public void testH5Rcreate_InvalidObjectName() throws Throwable { - H5.H5Rcreate(H5fid, "/GROUPS", HDF5Constants.H5R_OBJECT, -1); + @Test(expected = NullPointerException.class) + public void testH5Requal_Nullref2() throws Throwable { + byte[] ref1 = {0,0,0,0}; + byte[] ref2 = null; + H5.H5Requal(ref1, ref2); } - @Test(expected = HDF5LibraryException.class) - public void testH5Rcreate_Invalidspace_id() throws Throwable { - H5.H5Rcreate(H5fid, "/dset", HDF5Constants.H5R_DATASET_REGION, -1); + // Test parameters to H5Rcopy + @Test(expected = NullPointerException.class) + public void testH5Rcopy_Nullref1() throws Throwable { + byte[] ref1 = null; + byte[] ref2 = H5.H5Rcopy(ref1); } - @Test(expected = IllegalArgumentException.class) - public void testH5Rcreate_Invalidreftype() throws Throwable { - H5.H5Rcreate(H5fid, "/dset", HDF5Constants.H5R_BADTYPE, -1); + // Test parameters to H5Ropen_object + @Test(expected = NullPointerException.class) + public void testH5Ropen_object_Nullref() throws Throwable { + byte[] ref = null; + H5.H5Ropen_object(ref, -1, -1); } - @Test(expected = IllegalArgumentException.class) - public void testH5Rgetregion_Invalidreftype() throws Throwable { + // Test parameters to H5Ropen_region + @Test(expected = NullPointerException.class) + public void testH5Ropen_region_Nullref() throws Throwable { byte[] ref = null; - ref = H5.H5Rcreate(H5fid, "/dset", HDF5Constants.H5R_OBJECT, H5dsid); - H5.H5Rget_region(H5fid, HDF5Constants.H5R_DATASET_REGION, ref); + H5.H5Ropen_region(ref, -1, -1); } - @Test(expected = IllegalArgumentException.class) - public void testH5Rgetregion_Badreferencetype() throws Throwable { + // Test parameters to H5Ropen_attr + @Test(expected = NullPointerException.class) + public void testH5Ropen_attr_Nullref() throws Throwable { byte[] ref = null; - ref = H5.H5Rcreate(H5fid, "/dset", HDF5Constants.H5R_OBJECT, H5dsid); - H5.H5Rget_region(H5fid, HDF5Constants.H5R_OBJECT, ref); + H5.H5Ropen_attr(ref, -1, -1); } + // Test parameters to H5Rget_obj_type3 @Test(expected = NullPointerException.class) - public void testH5Rgetregion_Nullreference() throws Throwable { + public void testH5Rget_obj_type3_Nullref() throws Throwable { byte[] ref = null; - H5.H5Rget_region(H5fid, HDF5Constants.H5R_DATASET_REGION, ref); + H5.H5Rget_obj_type3(ref, -1); } + // Test parameters to H5Rget_file_name @Test(expected = NullPointerException.class) - public void testH5Rdereference_Nullreference() throws Throwable { + public void testH5Rget_file_name_Nullref() throws Throwable { byte[] ref = null; - H5.H5Rdereference(H5did2, HDF5Constants.H5P_DEFAULT, HDF5Constants.H5R_OBJECT, ref); + H5.H5Rget_file_name(ref); } - @Test(expected = IllegalArgumentException.class) - public void testH5Rdereference_Invalidreference() throws Throwable { - byte[] ref1 = null; - byte[] ref2 = null; - ref1 = H5.H5Rcreate(H5fid, "/dset", HDF5Constants.H5R_DATASET_REGION, H5dsid); - ref2 = H5.H5Rcreate(H5gid, "/Group1", HDF5Constants.H5R_OBJECT, -1); - H5.H5Rdereference(H5gid, HDF5Constants.H5P_DEFAULT, HDF5Constants.H5R_OBJECT, ref1); + // Test parameters to H5Rget_obj_name + @Test(expected = NullPointerException.class) + public void testH5Rget_obj_name_Nullref() throws Throwable { + byte[] ref = null; + H5.H5Rget_obj_name(ref, -1); + } + + // Test parameters to H5Rget_attr_name + @Test(expected = NullPointerException.class) + public void testH5Rget_attr_name_Nullref() throws Throwable { + byte[] ref = null; + H5.H5Rget_attr_name(ref); } } diff --git a/java/test/testfiles/JUnit-TestH5.txt b/java/test/testfiles/JUnit-TestH5.txt index b282a91..4bab633 100644 --- a/java/test/testfiles/JUnit-TestH5.txt +++ b/java/test/testfiles/JUnit-TestH5.txt @@ -1,6 +1,7 @@ JUnit version 4.11 .testH5get_libversion_null_param .testJ2C +.testH5export_dataset .testIsSerializable .testH5garbage_collect .testH5error_off @@ -12,5 +13,5 @@ JUnit version 4.11 Time: XXXX -OK (10 tests) +OK (11 tests) diff --git a/java/test/testfiles/JUnit-TestH5R.txt b/java/test/testfiles/JUnit-TestH5R.txt index 150df54..a96fbb4 100644 --- a/java/test/testfiles/JUnit-TestH5R.txt +++ b/java/test/testfiles/JUnit-TestH5R.txt @@ -1,23 +1,28 @@ JUnit version 4.11 -.testH5Rgetregion_Nullreference -.testH5Rget_obj_type2_Invalidreftype -.testH5Rdereference -.testH5Rget_name -.testH5Rcreate_Invalidreftype -.testH5Rget_name_NULLreference -.testH5Rget_region -.testH5Rdereference_Nullreference -.testH5Rcreate_refobj -.testH5Rcreate_Invalidspace_id -.testH5Rdereference_Invalidreference -.testH5Rgetregion_Badreferencetype -.testH5Rcreate_regionrefobj -.testH5Rget_name_Invalidreftype -.testH5Rgetregion_Invalidreftype -.testH5Rget_obj_type2 -.testH5Rcreate_InvalidObjectName +.testH5Ropen_attr_Nullref +.testH5Rget_attr_name_Nullref +.testH5Ropen_region_Nullref +.testH5Requal_Nullref1 +.testH5Requal_Nullref2 +.testH5Rget_object +.testH5Rget_obj_type3_Nullref +.testH5Ropen_object_Nullref +.testH5Rdestroy_Nullref +.testH5Rcreate_object_Nullname +.testH5Rget_obj_type3 +.testH5Rget_name_Invalidloc +.testH5Rcopy_Nullref1 +.testH5Rcreate_attr_Invalidloc +.testH5Rget_file_name_Nullref +.testH5Rget_obj_name_Nullref +.testH5Rcreate_region_Nullname +.testH5Rcreate_regionref_object +.testH5Rcreate_attr_Nullattrname +.testH5Rcreate_region_Invalidloc +.testH5Rget_type_Nullref +.testH5Rcreate_attr_Nullname Time: XXXX -OK (17 tests) +OK (22 tests) |