Tests

From Octave
Revision as of 18:39, 29 November 2011 by Carandraug (talk | contribs) (fixing headers level)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Writing tests for function is an important thing that is usually overlooked. It helps a lot in preventing regression.

Writing tests

in .m files

in .cc files

declaring functions inside a test block

function experience
%!test
%! experience_design_mat
%! experience_obs_eqs
%! assert (experience_design_mat == pi);
%! assert (experience_obs_eqs == exp(1));
%!
%! endfunction  % this is a trick.
%! % now we can declare functions to be used by the test above.
%!
%! function a = experience_design_mat 
%!     a = pi;
%! endfunction
%!
%! function b = experience_obs_eqs
%!     b = exp(1);
%! % endfunction: don't add it here. Let test() do it.

running tests

from m files

from .cc files

You can run tests in .cc files by doing something like

 test /full/path/to/file.cc