Name

assert_generror — Generates an error.

Calling Sequence

   assert_generror ( errormsg )
   assert_generror ( errormsg , errornb )
   
   

Parameters

expectedmsg :

a 1x1 matrix of strings, the error message to be produced

expectederrnb :

a 1x1 matrix of floating point integers, the error number (default expectederrnb=[]).

Description

Calls the error function, with the given arguments.

This function is called by the assert_check* function each time an error produced by the wrong match between expected and computed outputs is generated. In the case where a assert_check* function receives a wrong number of input arguments, a wrong number of ouput arguments, a wrong type of input argument or a wrong content of input arguments, the regular error function is called. This function can be customized to modify the behaviour of the assert_check* functions.

Examples

// Both these calls generate an error
assert_generror ( "oups" );
assert_generror ( "oups" , 123456789 );

// The following call generates an error.
assert_checktrue ( [%t %f] );
//
// Define our own error handler
function myerror ( varargin )
[lhs,rhs]=argn()
errormsg = varargin(1)
if ( rhs == 1 ) then
mprintf( "myerror: %s\n", errormsg )
else
errornb = varargin(2)
mprintf( "myerror: %s (%d)\n", errormsg , errornb )
end
endfunction
//
// Configure the new error handler
back=funcprot();
funcprot(0);
olderrorfunction = assert_generror;
assert_generror = myerror;
funcprot(back);
//
// Check that the new error handler is in place
assert_checktrue ( [%t %f] );
//
// Put back the regular error handler in place
back=funcprot();
funcprot(0);
assert_generror = olderrorfunction;
funcprot(back);

   

Authors

Copyright (C) 2010 - DIGITEO - Michael Baudin