changeset 32056:d98157d51a97

methods.m: Overhaul BIST testing. * methods.m: Re-order BIST tests to reflect the order in the code. Add BIST test for a classdef object and recode expected value for classdef classname test. Add further assert() statement to test for old-style @classnames. Add test for ordinary Java objects. Remove %!error test for exceeding maximum number of inputs as the interpreter now does that.
author Rik <rik@octave.org>
date Wed, 26 Apr 2023 08:13:49 -0700
parents dfd2b1a268a0
children f010a32986e4
files scripts/miscellaneous/methods.m
diffstat 1 files changed, 21 insertions(+), 11 deletions(-) [+]
line wrap: on
line diff
--- a/scripts/miscellaneous/methods.m	Tue Apr 25 18:09:29 2023 -0700
+++ b/scripts/miscellaneous/methods.m	Wed Apr 26 08:13:49 2023 -0700
@@ -115,10 +115,23 @@
 endfunction
 
 
+## test classdef object
+%!test
+%! ip = inputParser ();
+%! assert (methods (ip),
+%!         {"addOptional"; "addParamValue"; "addParameter"; "addRequired";
+%!          "addSwitch"; "delete"; "disp"; "parse"; });
+
+## test classdef classname
+%!assert (methods ("inputParser"),
+%!        {"addOptional"; "addParamValue"; "addParameter"; "addRequired";
+%!         "addSwitch"; "delete"; "disp"; "parse"; });
+
 ## test old-style @classname
 %!test
 %! mtds = methods ("ftp");
 %! assert (mtds{1}, "ascii");
+%! assert (numel (mtds), 15);
 
 ## test Java classname
 %!testif HAVE_JAVA; usejava ("jvm")
@@ -132,20 +145,17 @@
 %! search = strfind (mtds, "java.lang.Double valueOf");
 %! assert (! isempty ([search{:}]));
 
-## test that methods does the right thing when passed a String object
-%!testif HAVE_JAVA; usejava ("jvm") <*48758>
-%! object = javaObject ("java.lang.String", "java.lang.Integer");
-%! assert (methods (object), methods ("java.lang.String"));
+## test Java object
+%!testif HAVE_JAVA; usejava ("jvm")
+%! jobject = javaObject ("java.lang.Double", pi);
+%! assert (methods (jobject), methods ("java.lang.Double"));
 
-## test classdef classname
-%!assert (methods ("inputParser"),
-%!        {"addOptional"; "addParamValue"; "addParameter";
-%!         "addRequired"; "addSwitch"; "add_missing"; "delete";
-%!         "disp"; "error"; "is_argname"; "parse"; "validate_arg";
-%!         "validate_name"});
+## test exceptional case of Java String object
+%!testif HAVE_JAVA; usejava ("jvm") <*48758>
+%! jobject = javaObject ("java.lang.String", "java.lang.Integer");
+%! assert (methods (jobject), methods ("java.lang.String"));
 
 ## Test input validation
 %!error <Invalid call> methods ()
-%!error methods ("a", "b", "c")
 %!error <invalid option> methods ("ftp", "option1")
 %!error <invalid input argument> methods (1)