function [sesDat,indDat]=saveTest(dat,rsl,typeTst)

test=[];
indDat=[];
sesDat=dat.sesDat;

test.rsl=rsl;
test.tstFile=sesDat.tstDat{dat.sesDat.noTst}.tstFile;
test.tstType=sesDat.tstDat{dat.sesDat.noTst}.tstType;
test.sndFile=sesDat.cuSndListFile;

% Create new test data file
sesDat.tstDat{dat.sesDat.noTst}=test;

% make temporary variable in workspace
assignin('base',typeTst,test);

% save the individual session
indDat.id=sesDat.id;
indDat.sesScript=sesDat.sesScript;
indDat.tstDat=sesDat.tstDat;
eval(sprintf('%s=indDat;',indDat.id));
expre=sprintf('save(''responses/%s'',''%s'')',indDat.id,indDat.id);
eval(expre);

% close the test window
closereq;

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Call the next test 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
noTst=sesDat.noTst+1;
nbTst=sesDat.nbTst;

if ~(noTst>nbTst)
   sesDat.noTst=noTst;
   expr=sprintf('%s(sesDat)',sesDat.tstDat{noTst}.tstType);
   eval(expr);
end

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Clean up
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
clear;
