When developing a software package, it is useful to test changes by periodically running all the functions in a validation library. This function automates the process.
VALIDATE DIRNAME runs each M-file in the directory DIRNAME. Each M-file
should be a function that takes no inputs and returns a logical vector
or scalar. Three outcomes are possible:
'passed' All return values are true.
'failed' Some return value is false.
'crashed' Function threw an error.
A report is generated dynamically in the command window.
VALIDATE by itself tries to find a directory named 'validtests' in the
directory in which validate.m resides.
Toby Driscoll (2020). Automatic validation of software (https://www.mathworks.com/matlabcentral/fileexchange/20037-automatic-validation-of-software), MATLAB Central File Exchange. Retrieved .
The line in the comment above was accidentally left over from the project that inspired the submission. I have removed it and the package should work now.
This seems pretty good. In fact, it is a problem that we had to deal with in my previous job, validating large libraries of code.
I did find one line that caused some difficulty however. What is this? Both MATLAB and Google fail to find it.
I won't rate this code until the above question is resolved, since I can't test it. However, I'd probably have given the submission a fairly high rating. There is good help, the logical error checking, and the author has used tools like filesep and fullfile so the code will be insensitive to your particular operating system.
Bug due to an errant line as noted in the first review.