Mentions légales du service

Skip to content
Snippets Groups Projects
Commit 55e835f6 authored by testcdash Nicolas Bellot's avatar testcdash Nicolas Bellot Committed by hhakim
Browse files

test matlab sous windows

parent 85df235e
Branches
Tags
No related merge requests found
......@@ -32,26 +32,35 @@ set(TIMEOUT_COMP 100)
if(BUILD_MATLAB_MEX_FILES)
if(WIN32 AND NOT UNIX)
add_test(NAME MATLAB_FACT_HIER_MEX_SUCCEED COMMAND ${FAUST_SRC_TEST_TOOL_DIR}/windows_test_matlab.bat "addpath('${FAUST_BIN_TEST_BIN_DIR}'@'${FAUST_BIN_TEST_TOOLS_DIR}')$set_path$hier_fact_test('matrix_hierarchical_fact'@'config_hierarchical_fact'@9402@1@'MEX')$")
add_test(NAME MATLAB_FACT_HIER_MEX_FAILED COMMAND ${FAUST_SRC_TEST_TOOL_DIR}/windows_test_matlab.bat "addpath('${FAUST_BIN_TEST_BIN_DIR}'@'${FAUST_BIN_TEST_TOOLS_DIR}')$set_path$hier_fact_test('matrix_hierarchical_fact'@'config_hierarchical_fact'@5@1@'MEX')$")
#WINDOWS :
# all the matlab test have the same structure, they launch a batch file ${FAUST_SRC_TEST_TOOL_DIR}/test_matlab.bat
# This script takes 2 arguments :
# 1st arg : the list of matlab script, function that will be executed
# WARNING : due to batch file issue,
# in the Matlab command passed as a string to the batch file,
# "@" means "," and "$" means ";"
# 2nd arg : the ouputfile that stores all the things that will be display in the matlab command window
##add_test(NAME MATLAB_FACT_HIER_MEX COMMAND matlab -nojvm -r "delete MATLAB_FACT_HIER_MEX.txt;diary MATLAB_FACT_HIER_MEX.txt;try;testpass=0;addpath('${FAUST_BIN_TEST_BIN_DIR}','${FAUST_BIN_TEST_TOOLS_DIR}');set_path;hier_fact_test('matrix_hierarchical_fact','config_hierarchical_fact',9402,1,'MEX'); catch ME ;testpass=-1;disp(getReport(ME)); end ; disp (testpass); diary OFF; exit(testpass)") # && type MATLAB_FACT_HIER_MEX.txt)
#add_test(NAME MATLAB_FACT_HIER_MEX COMMAND matlab -wait -nojvm -noFigureWindows -nosplash -r "delete ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FACT_HIER_MEX.txt;diary ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FACT_HIER_MEX.txt;try;testpass=0;addpath('${FAUST_BIN_TEST_BIN_DIR}','${FAUST_BIN_TEST_TOOLS_DIR}');set_path;hier_fact_test('matrix_hierarchical_fact','config_hierarchical_fact',9402,1,'MEX'); catch ME ;testpass=-1;disp(getReport(ME)); end ; disp (testpass); diary OFF; exit(testpass)" && more ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FACT_HIER_MEX.txt ) # && type MATLAB_FACT_HIER_MEX.txt)
add_test(NAME MATLAB_FACT_HIER_MEX COMMAND ${FAUST_SRC_TEST_TOOL_DIR}/windows_test_matlab.bat "addpath('${FAUST_BIN_TEST_BIN_DIR}'@'${FAUST_BIN_TEST_TOOLS_DIR}')$set_path$hier_fact_test('matrix_hierarchical_fact'@'config_hierarchical_fact'@9402@1@'MEX')$" "${FAUST_BIN_TEST_OUTPUT_DIR}/MATLAB_FACT_HIER_MEX")
add_test(NAME MATLAB_FACT_HIER_MATLAB COMMAND ${FAUST_SRC_TEST_TOOL_DIR}/windows_test_matlab.bat "addpath('${FAUST_BIN_TEST_BIN_DIR}'@'${FAUST_BIN_TEST_TOOLS_DIR}')$set_path$hier_fact_test('matrix_hierarchical_fact'@'config_hierarchical_fact'@9402@1@'MATLAB')$" "${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FACT_HIER_MATLAB")
#add_test(NAME MATLAB_FACT_HIER_MATLAB COMMAND matlab -wait -nojvm -noFigureWindows -nosplash -r "delete ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FACT_HIER_MATLAB.txt;diary ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FACT_HIER_MATLAB.txt;try;testpass=0;addpath('${FAUST_BIN_TEST_BIN_DIR}','${FAUST_BIN_TEST_TOOLS_DIR}');set_path;hier_fact_test('matrix_hierarchical_fact','config_hierarchical_fact',9402,1,'MATLAB'); catch ME ;testpass=-1;disp(getReport(ME)); end ; disp (testpass); diary OFF; exit(testpass)" && more ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FACT_HIER_MATLAB.txt) # && type MATLAB_FACT_HIER_MATLAB.txt)
#add_test(NAME MATLAB_FACT_MEG_MEX COMMAND matlab -wait -nojvm -noFigureWindows -nosplash -r "delete ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FACT_MEG_MEX.txt;diary ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FACT_MEG_MEX.txt;try;testpass=0;addpath('${FAUST_BIN_TEST_BIN_DIR}','${FAUST_BIN_TEST_TOOLS_DIR}');set_path;hier_fact_test('matrix_MEG','config_MEG',22480,1,'MEX');catch ME ;testpass=-1;disp(getReport(ME)); end ; disp (testpass); diary OFF; exit(testpass)" && more ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FACT_MEG_MEX.txt) # && type MATLAB_FACT_MEG_MEX.txt)
#add_test(NAME MATLAB_FACT_MEG_MATLAB COMMAND matlab -wait -nojvm -noFigureWindows -nosplash -r "delete ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FACT_MEG_MATLAB.txt;diary ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FACT_MEG_MATLAB.txt;try;testpass=0;addpath('${FAUST_BIN_TEST_BIN_DIR}','${FAUST_BIN_TEST_TOOLS_DIR}');set_path;hier_fact_test('matrix_MEG','config_MEG',22480,1,'MATLAB');catch ME ;testpass=-1;disp(getReport(ME)); end ; disp (testpass); diary OFF; exit(testpass)" && more ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FACT_MEG_MATLAB.txt) # && type MATLAB_FACT_MEG_MATLAB.txt)
#add_test(NAME MATLAB_FACT_HADAMARD_MEX COMMAND matlab -wait -nojvm -noFigureWindows -nosplash -r "delete ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FACT_HADAMARD_MEX.txt;diary ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FACT_HADAMARD_MEX.txt;try;testpass=0;addpath('${FAUST_BIN_TEST_BIN_DIR}','${FAUST_BIN_TEST_TOOLS_DIR}');set_path;hier_fact_test('matrix_HADAMARD_32','config_HADAMARD_32',5941,30,'MEX');catch ME ;testpass=-1;disp(getReport(ME)); end ; disp (testpass); diary OFF; exit(testpass)" && more ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FACT_HADAMARD_MEX.txt) #&& type MATLAB_FACT_HADAMARD_MEX.txt)
#add_test(NAME MATLAB_FACT_HADAMARD_MATLAB COMMAND matlab -wait -nojvm -noFigureWindows -nosplash -r "delete ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FACT_HADAMARD_MATLAB.txt;diary ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FACT_HADAMARD_MATLAB.txt;try;testpass=0;addpath('${FAUST_BIN_TEST_BIN_DIR}','${FAUST_BIN_TEST_TOOLS_DIR}');set_path;hier_fact_test('matrix_HADAMARD_32','config_HADAMARD_32',5941,30,'MATLAB');catch ME ;testpass=-1;disp(getReport(ME)); end ; disp (testpass); diary OFF; exit(testpass)" && more ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FACT_HADAMARD_MATLAB.txt) # && type MATLAB_FACT_HADAMARD_MATLAB.txt)
#add_test(NAME MATLAB_DEMO_INSTALL COMMAND matlab -wait -noFigureWindows -nosplash -r "delete ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_DEMO_INSTALL.txt;diary ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_DEMO_INSTALL.txt;try;testpass=0;addpath('${CMAKE_INSTALL_MATLAB_PREFIX}');setup_FAUST;run_all_demo;catch ME ;testpass=-1;disp(getReport(ME)); end ; disp (testpass); diary OFF; exit(testpass)" && more ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_DEMO_INSTALL.txt) # && type MATLAB_DEMO_INSTALL.txt)
#add_test(NAME MATLAB_DEMO_BUILD COMMAND matlab -wait -noFigureWindows -nosplash -r "delete ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_DEMO_BUILD.txt;diary ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_DEMO_BUILD.txt;try;testpass=0;addpath('${FAUST_MATLAB_BIN_DIR}');setup_FAUST;run_all_demo;catch ME ;testpass=-1;disp(getReport(ME)); end ; disp (testpass); diary OFF; exit(testpass)" && more ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_DEMO_BUILD.txt ) #&& type MATLAB_DEMO_BUILD.txt)
#add_test(NAME MATLAB_FAUST_1 COMMAND matlab -wait -nojvm -noFigureWindows -nosplash -r "delete ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FAUST_1.txt;diary ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FAUST_1.txt;try;testpass=0;addpath('${FAUST_BIN_TEST_BIN_DIR}','${FAUST_BIN_TEST_TOOLS_DIR}');set_path;test_matlab_faust;catch ME ;testpass=-1;disp(getReport(ME)); end ; disp (testpass); diary OFF; exit(testpass)" && more ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FAUST_1.txt ) #&& type MATLAB_FAUST_1.txt)
## test the matlab Faust class methods with incorrect parameter
#add_test(NAME MATLAB_FAUST_2 COMMAND matlab -wait -nojvm -noFigureWindows -nosplash -r "delete ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FAUST_2.txt;diary ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FAUST_2.txt;try;testpass=0;addpath('${FAUST_BIN_TEST_BIN_DIR}','${FAUST_BIN_TEST_TOOLS_DIR}');set_path;test_matlab_faust2;catch ME ;testpass=-1;disp(getReport(ME)); end ; disp (testpass); diary OFF; exit(testpass)" && more ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FAUST_2.txt) # && type MATLAB_FAUST_2.txt)
#add_test(NAME MATLAB_FAUST_SPEED COMMAND matlab -wait -nojvm -noFigureWindows -nosplash -r "delete ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FAUST_SPEED.txt;diary ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FAUST_SPEED.txt;try;testpass=0;addpath('${FAUST_BIN_TEST_BIN_DIR}','${FAUST_BIN_TEST_TOOLS_DIR}');set_path;test_matlab_faust_time;catch ME ;testpass=-1;disp(getReport(ME)); end ; disp (testpass); diary OFF; exit(testpass)" && more ${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FAUST_SPEED.txt) # && type MATLAB_FAUST_SPEED.txt)
add_test(NAME MATLAB_FACT_MEG_MEX COMMAND ${FAUST_SRC_TEST_TOOL_DIR}/windows_test_matlab.bat "addpath('${FAUST_BIN_TEST_BIN_DIR}'@'${FAUST_BIN_TEST_TOOLS_DIR}')$set_path$hier_fact_test('matrix_MEG'@'config_MEG'@22480@1@'MEX')$" "${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FACT_MEG_MEX")
add_test(NAME MATLAB_FACT_MEG_MATLAB COMMAND ${FAUST_SRC_TEST_TOOL_DIR}/windows_test_matlab.bat "addpath('${FAUST_BIN_TEST_BIN_DIR}'@'${FAUST_BIN_TEST_TOOLS_DIR}')$set_path$hier_fact_test('matrix_MEG'@'config_MEG'@22480@1@'MATLAB')$" "${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FACT_MEG_MATLAB")
add_test(NAME MATLAB_FACT_HADAMARD_MEX COMMAND ${FAUST_SRC_TEST_TOOL_DIR}/windows_test_matlab.bat "addpath('${FAUST_BIN_TEST_BIN_DIR}'@'${FAUST_BIN_TEST_TOOLS_DIR}')$set_path$hier_fact_test('matrix_HADAMARD_32'@'config_HADAMARD_32'@5941@30@'MEX')$" "${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FACT_HADAMARD_MEX")
add_test(NAME MATLAB_FACT_HADAMARD_MATLAB COMMAND ${FAUST_SRC_TEST_TOOL_DIR}/windows_test_matlab.bat "addpath('${FAUST_BIN_TEST_BIN_DIR}'@'${FAUST_BIN_TEST_TOOLS_DIR}')$set_path$hier_fact_test('matrix_HADAMARD_32'@'config_HADAMARD_32'@5941@30@'MATLAB')$" "${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FACT_HADAMARD_MATLAB")
add_test(NAME MATLAB_DEMO_INSTALL COMMAND ${FAUST_SRC_TEST_TOOL_DIR}/windows_test_matlab.bat "addpath('${CMAKE_INSTALL_MATLAB_PREFIX}')$setup_FAUST$run_all_demo$" "${FAUST_BIN_TEST_BIN_DIR}/MATLAB_DEMO_INSTALL")
add_test(NAME MATLAB_DEMO_BUILD COMMAND ${FAUST_SRC_TEST_TOOL_DIR}/windows_test_matlab.bat "addpath('${FAUST_MATLAB_BIN_DIR}')$setup_FAUST$run_all_demo$" "${FAUST_BIN_TEST_BIN_DIR}/MATLAB_DEMO_BUILD")
add_test(NAME MATLAB_FAUST_1 COMMAND ${FAUST_SRC_TEST_TOOL_DIR}/windows_test_matlab.bat "addpath('${FAUST_BIN_TEST_BIN_DIR}'@'${FAUST_BIN_TEST_TOOLS_DIR}')$set_path$test_matlab_faust$" "${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FAUST_1")
# test the matlab Faust class methods with incorrect parameter
add_test(NAME MATLAB_FAUST_2 COMMAND ${FAUST_SRC_TEST_TOOL_DIR}/windows_test_matlab.bat "addpath('${FAUST_BIN_TEST_BIN_DIR}'@'${FAUST_BIN_TEST_TOOLS_DIR}')$set_path$test_matlab_faust2$" "${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FAUST_2")
add_test(NAME MATLAB_FAUST_SPEED COMMAND ${FAUST_SRC_TEST_TOOL_DIR}/windows_test_matlab.bat "addpath('${FAUST_BIN_TEST_BIN_DIR}'@'${FAUST_BIN_TEST_TOOLS_DIR}')$set_path$test_matlab_faust_time$" "${FAUST_BIN_TEST_BIN_DIR}/MATLAB_FAUST_SPEED")
else(WIN32 AND NOT UNIX)
add_test(NAME MATLAB_FACT_HIER_MEX COMMAND matlab -nojvm -r "try;testpass=0;addpath('${FAUST_BIN_TEST_BIN_DIR}','${FAUST_BIN_TEST_TOOLS_DIR}');set_path;hier_fact_test('matrix_hierarchical_fact','config_hierarchical_fact',9402,1,'MEX'); catch ME ;testpass=-1;disp(getReport(ME)); end ; exit(testpass)" )
add_test(NAME MATLAB_FACT_HIER_MATLAB COMMAND matlab -nojvm -r "try;testpass=0;addpath('${FAUST_BIN_TEST_BIN_DIR}','${FAUST_BIN_TEST_TOOLS_DIR}');set_path;hier_fact_test('matrix_hierarchical_fact','config_hierarchical_fact',9402,1,'MATLAB'); catch ME ;testpass=-1;disp(getReport(ME)); end ; exit(testpass)" )
......
@ECHO OFF
:: par defaut le test est bon
set TESTPASS=0
set middle=%1
set "debut= delete MATLAB_TEST.txt;diary MATLAB_TEST.txt;try;testpass=0;"
set "fin= catch ME ;testpass=2;disp(getReport(ME)); end ; disp (testpass); diary OFF;exit(testpass);"
set test=%debut%%middle%%fin%
set ERRORLEVEL=0
set matlab_command_core=%1
set outputfile=%2%.txt
::transform the "/" character into "\" to have a valid path
set outputfile=%outputfile:/=\%
echo "OUTPUTFILE %outputfile%"
set "matlab_command_begin= delete %outputfile%;diary %outputfile%;try;testpass=0;"
set "matlab_command_end= catch ME ;testpass=2;disp(getReport(ME));end; diary OFF;exit(testpass);"
set matlab_command=%matlab_command_begin%%matlab_command_core%%matlab_command_end%
::echo DEBUT : %debut%
::echo MIDLLE : %middle%
::echo FIN : %fin%
::echo TEST : %test%
::transform the "@" character into ","
set test=%test:@=,%
set matlab_command=%matlab_command:@=,%
::transform the "$" character into ";"
set test=%test:$=;%
set matlab_command=%matlab_command:$=;%
echo MATLAB COMMAND : %test%
echo MATLAB COMMAND : %matlab_command%
:: launch the test in matlab an wait for matlab to finish
matlab -nojvm -wait -r """%test%"""
matlab -nojvm -wait -r """%matlab_command%"""
:: si le code renvoyer par la derniere cmd est sup a 2 on met TESPASS a 2 et erreur
IF ERRORLEVEL 2 set TESTPASS=2
:: si le code renvoyer par la derniere cmd est sup a 2 => erreur
IF ERRORLEVEL 2 set ERRORLEVEL=2
:: display the content of the MATLAB Command Window stored in a txtfile
echo ****** MATLAB WINDOW *******
type MATLAB_TEST.txt
type %outputfile%
IF ERRORLEVEL 1 set ERRORLEVEL=1
ECHO ERROR_LEVEL %TESTPASS%
ECHO ERROR_LEVEL %ERRORLEVEL%
::renvoie le code erreur
exit %TESTPASS%
exit %ERRORLEVEL%
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment