X-Git-Url: https://ruin.nu/git/?a=blobdiff_plain;f=src%2Ftest%2Fgenesortertest.cpp;h=157e3c40be6c8764476a10b829babc58545766cf;hb=79451fe868d3d11c0294383a2ddab95b40a0a4ce;hp=b06191827c58376cd50e31346094dea7e05d7280;hpb=3401199b1ce268dd6465f09abf6264592b989140;p=germs.git diff --git a/src/test/genesortertest.cpp b/src/test/genesortertest.cpp index b061918..157e3c4 100644 --- a/src/test/genesortertest.cpp +++ b/src/test/genesortertest.cpp @@ -62,16 +62,16 @@ protected: GeneOrder go2(_validPerm2.begin(),_validPerm2.end()); al = so.sort(go2); CPPUNIT_ASSERT_EQUAL(1ul,al.size()); - CPPUNIT_ASSERT((*al[0]) == ReverseAction(2,3)); + CPPUNIT_ASSERT(al[0] == ReverseAction(2,3)); - (*al[0])(go2); + al[0](go2); CPPUNIT_ASSERT(equal(go.begin(),go.end(),go2.begin())); GeneOrder go3(_validPerm3.begin(),_validPerm3.end()); al = so.sort(go3); CPPUNIT_ASSERT_EQUAL(5ul,al.size()); for (size_t i = 0; i < al.size(); ++i) - (*al[i])(go3); + al[i](go3); int perm[] = {0,1,2,3,4,5,6,7,8,9}; CPPUNIT_ASSERT(equal(go3.begin(),go3.end(),perm)); } @@ -83,9 +83,20 @@ protected: GeneOrder go2(_validPerm2.begin(),_validPerm2.end()); al = so.safeActions(go2); - CPPUNIT_ASSERT_EQUAL(1ul,al.size()); - CPPUNIT_ASSERT((*al[0]) == ReverseAction(2,3)); - CPPUNIT_ASSERT(!((*al[0]) == ReverseAction(2,5))); + CPPUNIT_ASSERT_EQUAL(2ul,al.size()); + CPPUNIT_ASSERT(al[0] == ReverseAction(2,3)); + CPPUNIT_ASSERT(al[1] == ReverseAction(2,3)); + CPPUNIT_ASSERT(!(al[0] == ReverseAction(2,5))); + + GeneOrder go3(_validPerm3.begin(),_validPerm3.end()); + al = so.safeActions(go3); + CPPUNIT_ASSERT(al.size() > 0); + size_t dist = inversionDistance(go3); + for (size_t i = 0; i < al.size(); ++i){ + GeneOrder go(go3); + al[0](go); + CPPUNIT_ASSERT(dist > inversionDistance(go)); + } } };