changeset 24461:0a034d34a686

Modify BIST tests to pass when string_fill_char is not ' '. * str2double.cc, strfns.cc, cstrcat.m, deblank.m, ostrsplit.m, strcat.m, strjust.m, strtrim.m, io.tst: Harden BIST tests to pass when string_fill_char is not the default value of a space.
author Rik <rik@octave.org>
date Mon, 25 Dec 2017 19:37:03 -0800
parents 892f7f096ffb
children 8ff3c13d14c1
files libinterp/corefcn/str2double.cc libinterp/corefcn/strfns.cc scripts/strings/cstrcat.m scripts/strings/deblank.m scripts/strings/ostrsplit.m scripts/strings/strcat.m scripts/strings/strjust.m scripts/strings/strtrim.m test/io.tst
diffstat 9 files changed, 21 insertions(+), 20 deletions(-) [+]
line wrap: on
line diff
--- a/libinterp/corefcn/str2double.cc	Mon Dec 25 08:33:52 2017 -0800
+++ b/libinterp/corefcn/str2double.cc	Mon Dec 25 19:37:03 2017 -0800
@@ -389,7 +389,7 @@
 %!assert (str2double ("i*2 + 3"), 3+2i)
 %!assert (str2double (".5*i + 3.5"), 3.5+0.5i)
 %!assert (str2double ("1e-3 + i*.25"), 1e-3 + 0.25i)
-%!assert (str2double (["2 + j";"1.25e-3";"-05"]), [2+i; 1.25e-3; -5])
+%!assert (str2double (char ("2 + j","1.25e-3","-05")), [2+i; 1.25e-3; -5])
 %!assert (str2double ({"2 + j","1.25e-3","-05"}), [2+i, 1.25e-3, -5])
 %!assert (str2double (1), NaN)
 %!assert (str2double ("1 2 3 4"), NaN)
--- a/libinterp/corefcn/strfns.cc	Mon Dec 25 08:33:52 2017 -0800
+++ b/libinterp/corefcn/strfns.cc	Mon Dec 25 19:37:03 2017 -0800
@@ -158,7 +158,7 @@
 %!assert (char (100, [], 100), ["d";" ";"d"])
 %!assert (char ({100, [], 100}), ["d";" ";"d"])
 %!assert (char ({100,{100, {""}}}), ["d";"d";" "])
-%!assert (char (["a";"be"], {"c", 100}), ["a";"be";"c";"d"])
+%!assert (char (["a ";"be"], {"c", 100}), ["a ";"be";"c ";"d "])
 %!assert (char ("a", "bb", "ccc"), ["a  "; "bb "; "ccc"])
 %!assert (char ([65, 83, 67, 73, 73]), "ASCII")
 
@@ -277,7 +277,7 @@
 %!assert (strvcat (100, [], 100), ["d";"d"])
 %!assert (strvcat ({100, [], 100}), ["d";"d"])
 %!assert (strvcat ({100,{100, {""}}}), ["d";"d"])
-%!assert (strvcat (["a";"be"], {"c", 100}), ["a";"be";"c";"d"])
+%!assert (strvcat (["a ";"be"], {"c", 100}), ["a ";"be";"c ";"d "])
 %!assert (strvcat ("a", "bb", "ccc"), ["a  "; "bb "; "ccc"])
 %!assert (strvcat (), "")
 */
@@ -894,11 +894,11 @@
 %! result = "abc     mnop\ndef     qrs\nghijkl  tuv\n";
 %! assert (list_in_columns (input, 20), result);
 %!test
-%! input  = ["abc"; "def"; "ghijkl"; "mnop"; "qrs"; "tuv"];
+%! input  = char ("abc", "def", "ghijkl", "mnop", "qrs", "tuv");
 %! result = "abc     mnop  \ndef     qrs   \nghijkl  tuv   \n";
 %! assert (list_in_columns (input, 20), result);
 %!test
-%! input  = ["abc"; "def"; "ghijkl"; "mnop"; "qrs"; "tuv"];
+%! input  = char ("abc", "def", "ghijkl", "mnop", "qrs", "tuv");
 %! result = "  abc     mnop  \n  def     qrs   \n  ghijkl  tuv   \n";
 %! assert (list_in_columns (input, 20, "  "), result);
 
--- a/scripts/strings/cstrcat.m	Mon Dec 25 08:33:52 2017 -0800
+++ b/scripts/strings/cstrcat.m	Mon Dec 25 19:37:03 2017 -0800
@@ -65,7 +65,7 @@
 %!assert (cstrcat (["ab ";"cde"], ["ab ";"cde"]), ["ab ab ";"cdecde"])
 
 %!assert (cstrcat ("foo", "bar"), "foobar")
-%!assert (cstrcat (["a"; "bb"], ["foo"; "bar"]), ["a foo"; "bbbar"])
+%!assert (cstrcat (["a "; "bb"], ["foo"; "bar"]), ["a foo"; "bbbar"])
 
 %!assert (cstrcat (), "")
 
--- a/scripts/strings/deblank.m	Mon Dec 25 08:33:52 2017 -0800
+++ b/scripts/strings/deblank.m	Mon Dec 25 19:37:03 2017 -0800
@@ -86,7 +86,7 @@
 
 %!assert (deblank (" f o o \0"), " f o o")
 %!assert (deblank (" \t f o o \t \0"), " \t f o o")
-%!assert (deblank ([" abc   "; "   def   "]), [" abc  " ; "   def"])
+%!assert (deblank (char (" abc   ", "   def   ")), [" abc  " ; "   def"])
 %!assert (deblank (["   "; "   "]), "")
 %!assert (deblank ('   '), '')
 %!assert (deblank ("   "), "")
--- a/scripts/strings/ostrsplit.m	Mon Dec 25 08:33:52 2017 -0800
+++ b/scripts/strings/ostrsplit.m	Mon Dec 25 19:37:03 2017 -0800
@@ -106,9 +106,10 @@
 %!assert (ostrsplit ("road to hell", " "), {"road", "to", "hell"})
 %!assert (ostrsplit ("road to^hell", " ^"), {"road", "to", "hell"})
 %!assert (ostrsplit ("road   to--hell", " -", true), {"road", "to", "hell"})
-%!assert (ostrsplit (["a,bc";",de"], ","), {"a", "bc", char(ones(1,0)), "de "})
-%!assert (ostrsplit (["a,bc";",de"], ",", true), {"a", "bc", "de "})
-%!assert (ostrsplit (["a,bc";",de"], ", ", true), {"a", "bc", "de"})
+%!assert (ostrsplit (char ("a,bc", ",de"), ","),
+%!        {"a", "bc", char(ones(1,0)), "de "})
+%!assert (ostrsplit (char ("a,bc", ",de"), ",", true), {"a", "bc", "de "})
+%!assert (ostrsplit (char ("a,bc", ",de"), ", ", true), {"a", "bc", "de"})
 
 ## Test input validation
 %!error ostrsplit ()
--- a/scripts/strings/strcat.m	Mon Dec 25 08:33:52 2017 -0800
+++ b/scripts/strings/strcat.m	Mon Dec 25 19:37:03 2017 -0800
@@ -138,7 +138,7 @@
 
 ## test for deblanking implied trailing spaces of character input
 %!assert (strcat ("foo", "bar"), "foobar")
-%!assert (strcat (["a"; "bb"], ["foo"; "bar"]), ["afoo "; "bbbar"])
+%!assert (strcat (["a "; "bb"], ["foo"; "bar"]), ["afoo "; "bbbar"])
 
 ## test for mixing character and cell inputs
 %!assert (strcat ("a", {"bc", "de"}, "f"), {"abcf", "adef"})
--- a/scripts/strings/strjust.m	Mon Dec 25 08:33:52 2017 -0800
+++ b/scripts/strings/strjust.m	Mon Dec 25 19:37:03 2017 -0800
@@ -97,12 +97,12 @@
 endfunction
 
 
-%!assert (strjust (["a"; "ab"; "abc"; "abcd"]),
+%!assert (strjust (char ("a", "ab", "abc", "abcd")),
 %!        ["   a";"  ab"; " abc"; "abcd"])
-%!assert (strjust ([" a"; "  ab"; "abc"; "abcd"], "left"),
+%!assert (strjust (char (" a", "  ab", "abc", "abcd"), "left"),
 %!        ["a   "; "ab  "; "abc "; "abcd"])
-%!assert (strjust (["a"; "ab"; "abc"; "abcd"], "CENTER"),
-%!        [" a  "; " ab"; "abc "; "abcd"])
+%!assert (strjust (char ("a", "ab", "abc", "abcd"), "CENTER"),
+%!        [" a  "; " ab "; "abc "; "abcd"])
 %!assert (strjust (["";""]), "")
 
 ## Test input validation
--- a/scripts/strings/strtrim.m	Mon Dec 25 08:33:52 2017 -0800
+++ b/scripts/strings/strtrim.m	Mon Dec 25 19:37:03 2017 -0800
@@ -80,7 +80,7 @@
 %!assert (strtrim ("    abc  "), "abc")
 %!assert (strtrim ("  "), "")
 %!assert (strtrim ("abc"), "abc")
-%!assert (strtrim ([" abc   "; "   def   "]), ["abc  "; "  def"])
+%!assert (strtrim (char (" abc   ", "   def   ")), ["abc  "; "  def"])
 %!assert (strtrim ({" abc   "; "   def   "}), {"abc"; "def"})
 %!assert (strtrim ({" abc   ", {"   def   "}}), {"abc", {"def"}})
 
--- a/test/io.tst	Mon Dec 25 08:33:52 2017 -0800
+++ b/test/io.tst	Mon Dec 25 19:37:03 2017 -0800
@@ -476,19 +476,19 @@
 %!error <Invalid call to tempname> tempname (1, 2, 3)
 
 %!test
-%! type_list = ["char"; "char*1"; "integer*1"; "int8";
+%! type_list = {"char"; "char*1"; "integer*1"; "int8";
 %! "schar"; "signed char"; "uchar"; "unsigned char";
 %! "short"; "ushort"; "unsigned short"; "int";
 %! "uint"; "unsigned int"; "long"; "ulong"; "unsigned long";
 %! "float"; "float32"; "real*4"; "double"; "float64";
-%! "real*8"; "int16"; "integer*2"; "int32"; "integer*4"];
+%! "real*8"; "int16"; "integer*2"; "int32"; "integer*4"};
 %!
 %! n = rows (type_list);
 %! nm = tempname ();
 %! id = fopen (nm, "wb");
 %! if (id > 0)
 %!   for i = 1:n
-%!     fwrite (id, i, deblank (type_list(i,:)));
+%!     fwrite (id, i, type_list{i});
 %!   endfor
 %!
 %!   fclose (id);
@@ -497,7 +497,7 @@
 %!   if (id > 0)
 %!     x = zeros (1, n);
 %!     for i = 1:n
-%!       x(i) = fread (id, [1, 1], deblank (type_list(i,:)));
+%!       x(i) = fread (id, [1, 1], type_list{i});
 %!     endfor
 %!
 %!     if (x == 1:n)