#include <geneorder.h>
#include <genealgorithms.h>
#include <reverseaction.h>
+#include <models.h>
+#include <model.h>
#include <algorithm>
#include <iterator>
void testSort (){
GeneSorter so;
GeneOrder go(_validPerm.begin(),_validPerm.end());
- GeneSorter::ActionList al = so.sort(go);
+ GeneSorter::ActionList al = so.sort(go,Model(new Models::ModelImpl));
CPPUNIT_ASSERT_EQUAL((size_t)0u,al.size());
GeneOrder go2(_validPerm2.begin(),_validPerm2.end());
- al = so.sort(go2);
+ al = so.sort(go2,Model(new Models::ModelImpl));
CPPUNIT_ASSERT_EQUAL((size_t)1u,al.size());
CPPUNIT_ASSERT(al[0] == ReverseAction(2,3));
CPPUNIT_ASSERT(equal(go.begin(),go.end(),go2.begin()));
GeneOrder go3(_validPerm3.begin(),_validPerm3.end());
- al = so.sort(go3);
+ al = so.sort(go3,Model(new Models::ModelImpl));
CPPUNIT_ASSERT_EQUAL((size_t)5u,al.size());
for (size_t i = 0; i < al.size(); ++i)
al[i](go3);
CPPUNIT_ASSERT(equal(go3.begin(),go3.end(),perm));
GeneOrder go4(_validPerm4.begin(),_validPerm4.end());
- al = so.sort(go4);
+ al = so.sort(go4,Model(new Models::ModelImpl));
CPPUNIT_ASSERT_EQUAL((size_t)13u,al.size());
for (size_t i = 0; i < al.size(); ++i)
- al[i](go3);
+ al[i](go4);
CPPUNIT_ASSERT(equal(go3.begin(),go3.end(),perm));
}
void testSafeActions (){