Test and sources have been updated to improve coverage and dynamic tests

git-svn-id: svn://scm.gforge.inria.fr/svnroot/paradiseo@1122 331e1502-861f-0410-8da2-ba01fb791d7f
This commit is contained in:
jboisson 2008-03-12 14:10:00 +00:00
commit 4d252c4373
30 changed files with 616 additions and 394 deletions

View file

@ -133,15 +133,25 @@ public:
class solutionContinue : public moSolContinue<solution>
{
public :
solutionContinue(): counter(0)
{}
bool operator () (const solution & _solution)
{
const solution sol(_solution);
if(counter==0)
{
counter++;
return true;
}
return false;
}
void init()
{}
private :
unsigned int counter;
} ;
class solutionComparator : public moComparator<solution>
@ -161,7 +171,7 @@ class solutionPerturbation : public eoMonOp<solution>
public :
bool operator () (solution & _solution)
{
solution sol(_solution);
_solution.fitness(2);
return true;
}
@ -172,7 +182,7 @@ class solutionEval : public eoEvalFunc <solution>
public :
void operator () (solution & _solution)
{
_solution.fitness(2);
_solution.fitness(0);
}
} ;
@ -181,11 +191,10 @@ public :
int
main()
{
cout << "[ moILS_TS ] ==> ";
solution sol;
std::string test_result;
int return_value;
sol.fitness(0);
solution solution;
testMoveInit init;
testMoveNext next;
@ -194,24 +203,21 @@ main()
testAspirCrit aspirCrit;
solutionEval eval;
solutionContinue continu;
moTS<testMove> ts(init, next, incrEval, tabuList, aspirCrit, continu, eval);
solutionContinue continu_2;
solutionComparator comparator;
solutionPerturbation perturbation;
moILS<testMove> ils(ts, continu, comparator, perturbation, eval);
moILS<testMove> ils(init, next, incrEval, tabuList, aspirCrit, continu, continu_2, comparator, perturbation, eval);
ils(sol);
if(sol.fitness()!=2)
{
cout << "KO" << endl;
return EXIT_FAILURE;
}
cout << "[ moILS_TS ] ==> ";
cout << "OK" << endl;
return EXIT_SUCCESS;
ils(solution);
test_result=((solution.fitness()!=2)?"KO":"OK");
return_value=((test_result.compare("KO")==0)?EXIT_FAILURE:EXIT_SUCCESS);
cout << test_result << endl;
return return_value;
}
//-----------------------------------------------------------------------------