No BSD License  

Highlights from
MATLAB/Simulink Unit Test Framework

from MATLAB/Simulink Unit Test Framework by Carl Kritzinger
A unit test framework for matlab and simulink components

file_find(root_dir,varargin)
function results = file_find(root_dir,varargin)
% file_find - emulate the gnu find utility
%
% Inputs:
%    root_dir - root directory for search
%    varargin - criteria - must be structured like gnu fund options
%
% Example:
%    test_file_list =
%    file_find(source_root_directory,'-name','_unit_test.mat');
%
% Other m-files required: none
%
% Author: Carl Kritzinger
% KAT DSP Team
% email address: carl@ska.ac.za
% November 2005


  %------------- MAIN --------------

    file_list = make_file_list(root_dir);
    results = [];

    if strcmp(varargin{1},'-name')


            for kk  = 1:length(file_list)

                if ~isempty(regexp(file_list(kk).name,varargin{2}))
                    results = [results file_list(kk)];
                end
            end

    end
    
end

function file_list = make_file_list(root_dir)

    file_list = dir(root_dir);

    subdirs = file_list([file_list.isdir]);
    file_list = file_list(~[file_list.isdir]);
    
    for kk = 1:length(file_list)
        file_list(kk).name = fullfile(root_dir,file_list(kk).name);
    end

    for kk = 1:length(subdirs)

        if(~(strcmp(subdirs(kk).name,'.') | strcmp(subdirs(kk).name,'..')))
            file_list = [file_list; make_file_list(fullfile(root_dir,subdirs(kk).name))];
        end

    end
end

Contact us at files@mathworks.com