public void SetDouble() { string filename = GetFilename("setdouble.h5"); Hdf5File file = Hdf5File.Create(filename); List <Hdf5DimensionProperty> properties = new List <Hdf5DimensionProperty>(); Hdf5DimensionProperty property = new Hdf5DimensionProperty { CurrentSize = 5 }; properties.Add(property); Hdf5Dataset dataset = file.Datasets.Add("dataset1", Hdf5DataTypes.Double, properties); Assert.IsNotNull(dataset); Double[] value = { Double.MinValue, -1.1d, 0.0d, -1.3d, Double.MaxValue }; dataset.SetData(value); var array = dataset.GetData(); Assert.AreEqual(1, array.Rank); Assert.AreEqual(5, array.GetLength(0)); Assert.AreEqual(Double.MinValue, array.GetValue(0)); Assert.AreEqual(Double.MaxValue, array.GetValue(4)); file.Close(); }
public void SetUInt64() { string filename = GetFilename("setuint64.h5"); Hdf5File file = Hdf5File.Create(filename); List <Hdf5DimensionProperty> properties = new List <Hdf5DimensionProperty>(); Hdf5DimensionProperty property = new Hdf5DimensionProperty { CurrentSize = 5 }; properties.Add(property); Hdf5Dataset dataset = file.Datasets.Add("dataset1", Hdf5DataTypes.UInt64, properties); Assert.IsNotNull(dataset); UInt64[] value = { UInt64.MinValue, 1, 2, 3, UInt64.MaxValue }; dataset.SetData(value); var array = dataset.GetData(); Assert.AreEqual(1, array.Rank); Assert.AreEqual(5, array.GetLength(0)); Assert.AreEqual(UInt64.MinValue, array.GetValue(0)); Assert.AreEqual(UInt64.MaxValue, array.GetValue(4)); file.Close(); }
public void SetArrayDimensionMismatch1() { string filename = GetFilename("setarraydimensionmismatch1.h5"); Hdf5File file = Hdf5File.Create(filename); List <Hdf5DimensionProperty> properties = new List <Hdf5DimensionProperty>(); Hdf5DimensionProperty property = new Hdf5DimensionProperty { CurrentSize = 5 }; properties.Add(property); Hdf5Dataset dataset = file.Datasets.Add("dataset1", Hdf5DataTypes.Int32, properties); Assert.IsNotNull(dataset); try { //2 dimensions sent, only one expected Int32[,] value = { { 1, 2, 3, 4, 5 }, { 6, 7, 8, 9, 10 } }; dataset.SetData(value); Assert.Fail("Exception was expected"); } catch (Exception ex) { Assert.IsInstanceOf <Hdf5ArrayDimensionsMismatchException>(ex); } file.Close(); }
public void SetDataMismatch() { string filename = GetFilename("setdatamismatch.h5"); Hdf5File file = Hdf5File.Create(filename); List <Hdf5DimensionProperty> properties = new List <Hdf5DimensionProperty>(); Hdf5DimensionProperty property = new Hdf5DimensionProperty { CurrentSize = 3 }; properties.Add(property); Hdf5Dataset dataset = file.Datasets.Add("dataset1", Hdf5DataTypes.Int8, properties); Assert.IsNotNull(dataset); try { Int32[] value = { 1, 2, 3 }; dataset.SetData(value); Assert.Fail("Exception was expected"); } catch (Exception ex) { Assert.IsInstanceOf <Hdf5TypeMismatchException>(ex); } file.Close(); }
public void SetDataNull() { string filename = GetFilename("setdatatnull.h5"); Hdf5File file = Hdf5File.Create(filename); List <Hdf5DimensionProperty> properties = new List <Hdf5DimensionProperty>(); Hdf5DimensionProperty property = new Hdf5DimensionProperty { CurrentSize = 100 }; properties.Add(property); Hdf5Dataset dataset = file.Datasets.Add("dataset1", Hdf5DataTypes.Int8, properties); Assert.IsNotNull(dataset); try { sbyte[] value = null; dataset.SetData(value); Assert.Fail("Exception was expected"); } catch (Exception ex) { Assert.IsInstanceOf <ArgumentNullException>(ex); } file.Close(); }
public void Set2DuInt64() { string filename = GetFilename("set2duint64.h5"); Hdf5File file = Hdf5File.Create(filename); List <Hdf5DimensionProperty> properties = new List <Hdf5DimensionProperty>(); Hdf5DimensionProperty property1 = new Hdf5DimensionProperty { CurrentSize = 2 }; properties.Add(property1); Hdf5DimensionProperty property2 = new Hdf5DimensionProperty { CurrentSize = 3 }; properties.Add(property2); Hdf5Dataset dataset = file.Datasets.Add("dataset1", Hdf5DataTypes.UInt64, properties); Assert.IsNotNull(dataset); UInt64[,] value = { { UInt64.MinValue, 0, UInt64.MaxValue }, { UInt64.MaxValue, 0, UInt64.MinValue } }; dataset.SetData(value); var array = dataset.GetData(); Assert.AreEqual(2, array.Rank); Assert.AreEqual(2, array.GetLength(0)); Assert.AreEqual(3, array.GetLength(1)); Assert.AreEqual(UInt64.MinValue, array.GetValue(0, 0)); Assert.AreEqual(0, array.GetValue(0, 1)); Assert.AreEqual(UInt64.MaxValue, array.GetValue(0, 2)); Assert.AreEqual(UInt64.MaxValue, array.GetValue(1, 0)); Assert.AreEqual(0, array.GetValue(1, 1)); Assert.AreEqual(UInt64.MinValue, array.GetValue(1, 2)); file.Close(); }
public void Set2DArraySizeMismatch2() { string filename = GetFilename("set2darraysizemismatch2.h5"); Hdf5File file = Hdf5File.Create(filename); List <Hdf5DimensionProperty> properties = new List <Hdf5DimensionProperty>(); Hdf5DimensionProperty property1 = new Hdf5DimensionProperty { CurrentSize = 3 }; properties.Add(property1); Hdf5DimensionProperty property2 = new Hdf5DimensionProperty { CurrentSize = 5 }; properties.Add(property2); Hdf5Dataset dataset = file.Datasets.Add("dataset1", Hdf5DataTypes.Int32, properties); Assert.IsNotNull(dataset); try { //Only 3x4 Int32[,] value = { { 1, 2, 3 }, { 4, 5, 6, }, { 7, 8, 9, }, { 10, 11, 12, } }; dataset.SetData(value); Assert.Fail("Exception was expected"); } catch (Exception ex) { Assert.IsInstanceOf <Hdf5ArraySizeMismatchException>(ex); } file.Close(); }