45 lines
1 KiB
Text
45 lines
1 KiB
Text
lines(0);
|
|
warning('off');
|
|
ilib_verbose(0);
|
|
|
|
// Get test name (used in swigtest.quit file)
|
|
[units, typ, names] = file(1);
|
|
swigtestname = strsubst(fileparts(names, "fname"), "_runme", "");
|
|
|
|
// Test build dir
|
|
testdir = swigtestname + ".dir";
|
|
|
|
// Does the library exists? If not then exit!
|
|
libname = "lib" + swigtestname + "lib" + getdynlibext();
|
|
if ~isfile(fullfile(testdir, libname)) then
|
|
mfprintf(0, "*** LIBRARY NOT FOUND: %s ***\n", libname);
|
|
exit(1)
|
|
end
|
|
|
|
// Load library
|
|
try
|
|
exec(fullfile(testdir, "loader.sce"), -1);
|
|
catch
|
|
mfprintf(0, "*** LOADER EXECUTION FAILED ***\n");
|
|
exit(1)
|
|
end
|
|
|
|
// Module initialization
|
|
try
|
|
moduleInit = sprintf("%s_Init()", swigtestname);
|
|
execstr(moduleInit);
|
|
catch
|
|
mfprintf(0, "*** MODULE INIT FAILED ***\n");
|
|
exit(1)
|
|
end
|
|
|
|
// Error management function
|
|
function swigtesterror()
|
|
[lines, names] = where();
|
|
if size(lines, '*') > 1
|
|
mfprintf(0, "*** TEST FAILED (at line %d) ***\n", lines(2));
|
|
else
|
|
mfprintf(0, "*** TEST FAILED ***\n");
|
|
end;
|
|
exit(1)
|
|
endfunction
|