1// ============================================================================= 2// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab 3// Copyright (C) 2012 - SCILAB ENTERPRISES - Simon GARESTE 4// 5// This file is distributed under the same license as the Scilab package. 6// ============================================================================= 7// 8// <-- CLI SHELL MODE --> 9msgerr = msprintf(gettext("%s: Wrong number of input argument(s): %d to %d expected.\n"), "h5dataset", 5, 7); 10assert_checkerror("h5dataset()",msgerr,77); 11assert_checkerror("h5dataset(42)",msgerr,77); 12msgerr = msprintf(gettext("%s: Wrong type for input argument #%d: string or H5Object expected.\n"), "h5dataset", 1); 13assert_checkerror("h5dataset(42,42,42,42,42)",msgerr,999); 14msgerr = msprintf(gettext("%s: Wrong type for input argument #%d: string expected.\n"), "h5dataset", 2); 15assert_checkerror("h5dataset(""42"",42,42,42,42)",msgerr,999); 16//msgerr = msprintf(gettext("%s: Wrong size for input argument #%d: five row vector expected.\n"), "h5dataset", 3); 17//assert_checkerror("h5dataset(""42"",""42"",42,42,42)",msgerr,999); 18msgerr = msprintf(gettext("%s: Wrong type for input argument #%d: A double matrix expected.\n"), "h5dataset", 3); 19assert_checkerror("h5dataset(""42"",""42"",[""42"",""42"",""42"",""42"",""42""],42,42)",msgerr,999); 20msgerr = msprintf(gettext("%s: Wrong size for input argument #%d: six row vector expected.\n"), "h5dataset", 5); 21assert_checkerror("h5dataset(""42"",""42"",[42;42;42;42;42],42,42)",msgerr,999); 22msgerr = msprintf(gettext("%s: %s\n"), "h5dataset", msprintf(gettext("Invalid hdf5 file: %s."), "42")); 23assert_checkerror("h5dataset(""42"",""42"",[42;42;42;42;42],42,[42;42;42;42;42;42])",msgerr,999); 24a = h5open(TMPDIR + "/test.h5", "w"); 25msgerr = msprintf(gettext("%s: %s\n"), "h5dataset", gettext("Incompatible dimensions")); 26assert_checkerror("h5dataset(a,""42"",[42;42;42;42;42],42,[42;42;42;42;42;42])",msgerr,999); 27x = uint32(1:100); 28y = uint32(matrix(1:100,10,10)); 29z = uint32(zeros(7,12)); 30h5write(a,"dx",y',[2 1 ],[ 4 1 ],[ 2 1 ],[ 1 9 ]); 31z(3:6,3:11) = a.root.dx.Data; 32msgerr = msprintf(gettext("%s: %s\n"), "h5dataset", msprintf(gettext("Cannot create the dataset: %s"), "")); 33assert_checkerror("h5dataset(a, """", [10 10 ; 2 1 ; 4 1 ; 2 1 ; 1 9], x, [7 12 ; 9 14 ; 3 3 ; 1 1 ; 1 1 ; 4 9])",msgerr,999); 34h5dataset(a, "D_set1", [10 10 ; 2 1 ; 4 1 ; 2 1 ; 1 9], x, [7 12 ; 9 14 ; 3 3 ; 1 1 ; 1 1 ; 4 9]); 35assert_checkequal(a.root.D_set1.Data,z'); 36z = uint32(zeros(9,12)); 37z(1:5,1) = uint32([1;21;41;61;81]); 38h5dataset(a, "D_set2", [5 20 ; 1 1 ; 1 1 ; 1 1 ; 5 1], y, [9 12 ; 9 14 ; 1 1 ; 1 1 ; 1 1 ; 5 1]); 39assert_checkequal(a.root.D_set2.Data,z'); 40msgerr = msprintf(gettext("%s: %s\n") + "%s: %s\n", "h5dataset", gettext("Cannot write data in the dataset."), gettext("HDF5 description"), "src and dest data spaces have different sizes."); 41assert_checkerror("h5dataset(a, ""Dset_3"", [10 10 ; 2 1 ; 4 1 ; 2 1 ; 1 9], x, [10 10 ; 11 14 ; 3 3 ; 1 1 ; 1 1 ; 1 1])",msgerr,999); 42msgerr = msprintf(gettext("%s: %s\n"), "h5dataset", gettext("Invalid target dataspace.")); 43assert_checkerror("h5dataset(a, ""D_set4"", [10 10 ; 2 1 ; 4 1 ; 2 1 ; 1 9], x, [7 12 ; 6 11 ; 3 3 ; 1 1 ; 1 1 ; 4 9])",msgerr,999); 44