Mercurial > octave
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)