]> ruin.nu Git - germs.git/blobdiff - src/test/geneordertest.cpp
some cleanup, documentation, begin() and end() methods
[germs.git] / src / test / geneordertest.cpp
index d8cf105f68b3dce230beba2f23aa5bf0dddb246f..8583b3b7731fe164776f5034c510995c8ad478ae 100644 (file)
@@ -2,6 +2,8 @@
 #include <cppunit/extensions/HelperMacros.h>
 
 #include <geneorder.h>
+
+#include <algorithm>
 using namespace std;
 
 /* 
@@ -17,6 +19,8 @@ class TESTNAME : public CPPUNIT_NS::TestFixture
 {
   CPPUNIT_TEST_SUITE( TESTNAME );
   CPPUNIT_TEST( testCreate );
+  CPPUNIT_TEST( testCopyCreate );
+  CPPUNIT_TEST( testAssign );
   CPPUNIT_TEST_SUITE_END();
 
 protected:
@@ -51,6 +55,21 @@ protected:
                CPPUNIT_ASSERT_NO_THROW(GeneOrder go(_bigvalidPerm.begin(),_bigvalidPerm.end()));
                CPPUNIT_ASSERT_THROW(GeneOrder go(_invalidPerm.begin(),_invalidPerm.end()),invalid_argument);
        }
+       void testCopyCreate (){
+               GeneOrder go(_bigvalidPerm.begin(),_bigvalidPerm.end());
+               GeneOrder go2(go);
+               CPPUNIT_ASSERT(equal(go.begin(),go.end(),go2.begin()));
+               GeneOrder go3(_validPerm.begin(),_validPerm.end());
+               CPPUNIT_ASSERT(!equal(go3.begin(),go3.end(),go2.begin()));
+       }
+       void testAssign (){
+               GeneOrder go(_bigvalidPerm.begin(),_bigvalidPerm.end());
+               GeneOrder go2(_validPerm.begin(),_validPerm.end());
+               go2 = go;
+               CPPUNIT_ASSERT(equal(go.begin(),go.end(),go2.begin()));
+               GeneOrder go3(_validPerm.begin(),_validPerm.end());
+               CPPUNIT_ASSERT(!equal(go3.begin(),go3.end(),go2.begin()));
+       }
 };
 
 CPPUNIT_TEST_SUITE_REGISTRATION( TESTNAME );