octave-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Octave-bug-tracker] [bug #63063] ode{23, 45} options "Events", "OutputF


From: Nicholas Jankowski
Subject: [Octave-bug-tracker] [bug #63063] ode{23, 45} options "Events", "OutputFcn", and "Refine" do not perform correctly.
Date: Wed, 5 Oct 2022 17:18:47 -0400 (EDT)

Update of bug #63063 (project octave):

                 Release:                   7.2.0 => dev                    
        Operating System:       Microsoft Windows => Any                    

    _______________________________________________________

Follow-up Comment #22:

ok. I trimmed up the commit message quite a bit. sorry, i neglected to link
the wiki guidelines:
https://wiki.octave.org/Commit_message_guidelines#:~:text=The%20commit%20message%20should%20describe,to%20someone%20reading%20it%20later.

my only other concern is with some of the new BISTs. most are good. but ones
that generate plots, and don't have any assert or error statement tests,
aren't of much use. unless something generates a hard error, BISTs are
generally run passively during compilation to check for errors and to check
that desired outputs haven't changed. that's why most pure plotting functions
just use 'demo' blocks. for BISTS that to generate plots, its preferred to
disable the actual plot rendering so that they aren't generated when someone
runs the test suite. e.g., here's a BIST from figure.m:


%!test
%! hf = figure ("visible", "off");
%! unwind_protect
%!   assert (hf, gcf);
%!   assert (isfigure (hf));
%!   hf2 = figure (hf, "visible", "off");
%!   assert (hf, hf2);
%!   assert (hf2, gcf);
%!   assert (isfigure (hf2));
%!   assert (get (hf2, "visible"), "off");
%! unwind_protect_cleanup
%!   close (hf);
%! end_unwind_protect


so there are actual fail-able tests, and the visible plot is suppressed. if
there is an error, it cleans up after itself. 

So for now I've commented out those tests and left in FIXME: generate
appropriate plot self test or convert to demo block

Each function still also has another BIST like:

!test  # Details of OutputSel can't be tested
%! opt = odeset ("OutputFcn", @fout, "OutputSel", 1);
%! sol = ode45 (@fpol, [0 2], [2 0], opt);


but I notice that was there before, too. perhaps these could actually be
tested somehow.

the rest passes all tests, and seems to fix these bugs.  i was about to push
the patch when I ran into some login/ authentication issues. patch attached
for now. 

(file #53798)

    _______________________________________________________

Additional Item Attachment:

File name: bug_fix_63063_and_49408_total-20220927v2.patch Size:37 KB
   
<https://file.savannah.gnu.org/file/bug_fix_63063_and_49408_total-20220927v2.patch?file_id=53798>



    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?63063>

_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/




reply via email to

[Prev in Thread] Current Thread [Next in Thread]