view test/bug-45969.tst @ 32072:f7206b6577c2 stable

unicode2native: Fix conversion to UTF-16 (bug #64139). * liboctave/wrappers/uniconv-wrappers.c (octave_u8_conv_to_encoding_intern): Avoid appending a zero-byte when converting to UTF-* to avoid having to strip a varying number of bytes after the conversion. * scripts/strings/unicode2native.m: Add test for conversion to UTF-16.
author Markus Mützel <markus.muetzel@gmx.de>
date Wed, 03 May 2023 20:43:36 +0200
parents 9080316864bf
children
line wrap: on
line source

%!test <*45969>
%! text_filename = tempname ();
%! binary_filename = tempname ();
%! a = 2;
%! b = 10;
%! c = 20;
%! f1 = @ (f, x) f (x) + a;
%! f2 = @ (y) f1 (@ (z) z^2 + b * y, y) + c;
%! f2_arg = 5;
%! save_default_options ("-text", "local");
%! unwind_protect
%!   save (text_filename, "f2");
%!   save ("-binary", binary_filename, "f2");
%!   text = load (text_filename);
%!   binary = load (binary_filename);
%!   assert (f2 (f2_arg), text.f2 (f2_arg));
%!   assert (f2 (f2_arg), binary.f2 (f2_arg));
%! unwind_protect_cleanup
%!   unlink (text_filename);
%!   unlink (binary_filename);
%! end_unwind_protect

%!testif HAVE_HDF5 <*45969>
%! hdf5_filename = tempname ();
%! a = 2;
%! b = 10;
%! c = 20;
%! f1 = @ (f, x) f (x) + a;
%! f2 = @ (y) f1 (@ (z) z^2 + b * y, y) + c;
%! f2_arg = 5;
%! save_default_options ("-text", "local");
%! unwind_protect
%!   save ("-hdf5", hdf5_filename, "f2");
%!   hdf5 = load (hdf5_filename);
%!   assert (f2 (f2_arg), hdf5.f2 (f2_arg));
%! unwind_protect_cleanup
%!   unlink (hdf5_filename);
%! end_unwind_protect