view test/bug-53027/bug-53027.tst @ 31564:332a6ccac881 stable

maint: cleanup code in BIST tests to use Octave coding conventions. * data.cc: Use keyword "endfor" rather than bare "end". * file-io.cc, graphics.cc: Remove semicolon ';' at end of "end_try_catch" keyword. * variables.cc, bug-35448.tst, bug-53027.tst, bug-53579.tst, bug-53599.tst, bug-53956.tst, bug-55758.tst, global.tst: Use semicolon ';' after "global" variable declaration. * for.tst, io.tst: Delete semicolon ';' at end of "for" loop declaration. * struct.tst: Delete semicolon ';' at end of "function" declaration.
author Rik <rik@octave.org>
date Sun, 27 Nov 2022 17:01:00 -0800
parents 34617dd78f02
children e17b6b7de50f
line wrap: on
line source

%!function load53027 (fname)
%!  global X;
%!  X = 2;
%!  load (fname);
%!  assert (X, 1);
%!endfunction

%!function save53027 (fname)
%!  global X;
%!  X = 1;
%!  save (fname, "X");
%!endfunction

%!test <*53027>
%! global X;
%! X = 0;
%! fname = tempname ();
%! save53027 (fname);
%! assert (X, 1);
%! load53027 (fname);
%! assert (X, 1);
%! load53027 (fname);
%! assert (X, 1);
%! clear X
%! assert (exist ("X"), 0);
%! clear -global X;  # cleanup after test

%!test <*53027>
%! [a, b] = ntest53027a ();
%! assert ([a, b], [0, 0])
%! clear -global x;  # cleanup after test

%!test <*53027>
%! [a, b] = ntest53027b ();
%! assert ([a, b], [0, 0])
%! clear -global x;  # cleanup after test

%!test <*53027>
%! [a, b] = ntest53027c ();
%! assert ([a, b], [0, 0])
%! clear -global x;  # cleanup after test

## Previous bugs have caused segfaults when executing script twice.
%!test <*53027>
%! gtest53027
%! assert (isempty (a) && isempty (c))
%! assert (isglobal ("a") && isglobal ("c"))
%! assert (! exist ("b"))
%! assert (isempty (xx) && ! isglobal ("xx"))
%! gtest53027
%! assert (isempty (a) && isempty (c))
%! assert (isglobal ("a") && isglobal ("c"))
%! assert (! exist ("b"))
%! assert (isempty (xx) && ! isglobal ("xx"))
%! clear -global a b c;