⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 run_tsuite.m

📁 时间序列分析中很用的源码,书的原名为时间序列分析的小波方法.
💻 M
字号:
function ts_summary = run_tsuite(tsuite, mode, logfile, tcase_list)% run_tsuite -- Run a MUnit test suite.%%****f* Drivers/run_tsuite%% NAME%   run_tsuite -- Run a MUnit test suite.%% SYNOPSIS%   run_tsuite(tsuite, [mode], [logfile])%% INPUTS%   * tsuite     -- test suite.%   * mode       -- (optional) level of detail for output diagnostics.%   * logfile    -- (optional) name of log file for writing output.%   * tcase_list -- (optional) name(s) or ordinal number(s) of specific tests%                   to run.%                   (string or integer, or cell array of strings or integer).%% OUTPUTS%   * ts_summary -- a test suite summary struct (ts_summary_s).%% SIDE EFFECTS%%% SYNOPSIS%   run_tsuite(tsuite)                       % default%   run_tsuite(tsuite, mode)                 % specify level of detail mode.%   run_tsuite(tsuite, '', logfile)          % specify log file.%   run_tsuite(tsuite, '', '', tcase_list)   % specify tcases to run.% DESCRIPTION%   run_tsuite is the main driver for running a test suite.%%   mode argument controls level of detail of output as follows:%    * 'silent'    -- no output.%    * 'minimal'   -- print test case summary.%    * 'normal'    -- print names of failed  tests and test case summary.%    * 'verbose'   -- print all test names and their status, and test case summary.%    * 'details'   -- print diagnostics while running tests as well all test names %                     and their status, and test case summary.%%   If logfile is specified, output is written to logfile.%   Note: Info printed by tested functions is still displayed to console.%% EXAMPLE%%% WARNINGS%%% ERRORS%%% NOTES%%% BUGS%%% TODO%%% ALGORITHM%%% REFERENCES%%% SEE ALSO%%% TOOLBOX%     munit/munit%% CATEGORY%   Application Drivers%% AUTHOR%   Charlie Cornish%% CREATION DATE%   2004-04-28%% COPYRIGHT%   (c) 2004, 2005 Charles R. Cornish%% CREDITS%%% REVISION%   $Revision: 112 $%%***%   $Id: run_tsuite.m 112 2005-09-13 05:53:51Z ccornish $  usage_str = ['Usage:  [ts_summary] = ', mfilename, ...             '(tsuite, [mode], [logfile], [tcase_list])'];  if (nargin < 1 || nargin > 4)  error(usage_str);endif (isa(tsuite, 'function_handle'))  ts = MU_tsuite_create(tsuite);elseif (isa(tsuite, 'char'))  ts = MU_tsuite_create(tsuite);elseif (isa(tsuite, 'struct'))  ts = tsuite;else  error('MUNIT:UnknownTestSuite', ...        ['tsuite is not a valid name, function handle, or struct', ...         ' for a test case']);endif (~exist('mode', 'var') || isempty(mode))  mode = 'normal';endif (exist('logfile', 'var') && ~isempty(logfile))  if (exist('logfile', 'file'))    delete(logfile);  end  diary(logfile);endrun_all_tcases = 1;if (exist('tcase_list', 'var') && ~isempty(tcase_list))  run_all_tcases = 0;  if (ischar(tcase_list))    tcase_name_list = {tcase_list};  elseif (iscellstr(tcase_list))    tcase_name_list = tcase_list;  elseif (isnumeric(tcase_list))    tcase_name_list = {};    ii = 0;    for (i = 1:length(tcase_list))      tcase_num = tcase_list(i);      if (tcase_num <= length(ts.tcases))        ii = ii + 1;        tcase_name_list{ii} = ts.tcases(tcase_num).name;      else        warning(['Specified test number (', num2str(tcase_num), ...                 ') is out of range of number of available tests', ...                 '(', num2str(length(ts.tcases)), ')']);      end    end  else    error('MUNIT:invalidArgumentType', ...          ['Argument (test_list) must be string or cell array of strings or', ...           'a numeric scalar or array']);  end  if (isempty(tcase_name_list))    warning(['No matches found for specified test cases.']);    return  endendif (~strcmp(mode, 'silent'))  disp(['Start Test Suite: ', ts.name]);  disp(['              at: ', datestr(now, 31)]);  disp(' ');end% Start timertstart = clock;if (run_all_tcases)  ts_results = MU_tsuite_run(ts, mode);else  ts_results = MU_tsuite_run(ts, mode, tcase_name_list);endts_summary = MU_summarize_ts_results(ts.name, ts_results);MU_print_tsuite_summary(ts_summary, mode);diary off;% Stop timertstop = clock;if (~strcmp(mode, 'silent'))  disp(' ');  disp(['Finished Test Suite: ', ts.name]);  disp(['                 at: ', datestr(now, 31)]);  disp(['       Elapsed Time: ', num2str(etime(tstop, tstart)), ' sec.']);  disp(' ');endreturn

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -