TuttleOFX  1
main.cpp
Go to the documentation of this file.
00001 #include <detector.hpp>
00002 
00003 #include <boost/assign/std/vector.hpp>
00004 
00005 #define BOOST_TEST_MODULE StringSequenceDetector
00006 
00007 #include <boost/test/unit_test.hpp>
00008 using boost::unit_test::test_suite;
00009 
00010 BOOST_AUTO_TEST_SUITE( SimpleDetections )
00011 
00012 BOOST_AUTO_TEST_CASE( Nothing )
00013 {
00014         boost::ptr_vector<sequenceParser::Sequence> listSequence;
00015 
00016         std::vector<boost::filesystem::path> paths;
00017 
00018         listSequence = sequenceParser::sequenceFromFilenameList( paths );
00019 
00020         BOOST_CHECK( listSequence.size() == 0 );
00021 }
00022 
00023 BOOST_AUTO_TEST_CASE( SingleFilename )
00024 {
00025         boost::ptr_vector<sequenceParser::Sequence> listSequence;
00026 
00027         std::vector<boost::filesystem::path> paths;
00028 
00029         boost::assign::push_back( paths )
00030                 ( "aaa/bbb/a1b2.j2c" )
00031                 ;
00032 
00033         listSequence = sequenceParser::sequenceFromFilenameList( paths );
00034 
00035         BOOST_CHECK( listSequence.size() == 0 );
00036 }
00037 
00038 BOOST_AUTO_TEST_CASE( SingleSequence )
00039 {
00040         boost::ptr_vector<sequenceParser::Sequence> listSequence1;
00041 
00042         {
00043                 std::vector<boost::filesystem::path> paths;
00044                 boost::assign::push_back( paths )
00045                         ( "aaa/bbb/a1b2.j2c" )
00046                         ( "aaa/bbb/a1b3.j2c" )
00047                         ( "aaa/bbb/a1b4.j2c" )
00048                         ;
00049 
00050                 listSequence1 = sequenceParser::sequenceFromFilenameList( paths );
00051         }
00052 
00053         boost::ptr_vector<sequenceParser::Sequence> listSequence2;
00054         {
00055                 std::vector<boost::filesystem::path> paths;
00056                 boost::assign::push_back( paths )
00057                         ( "aaa/bbb/a1b2.j2c" )
00058                         ( "aaa/bbb/a1b4.j2c" )
00059                         ( "aaa/bbb/a1b3.j2c" )
00060                         ;
00061                 listSequence2 = sequenceParser::sequenceFromFilenameList( paths );
00062                 BOOST_CHECK( listSequence2.size() == 1 );
00063         }
00064 
00065         BOOST_CHECK( listSequence1.front() == listSequence2.front() );
00066 
00067         boost::ptr_vector<sequenceParser::Sequence> listSequence3;
00068         {
00069                 std::vector<boost::filesystem::path> paths;
00070                 boost::assign::push_back( paths )
00071                         ( "aaa/bbb/a1b2.j2c" )
00072                         ( "aaa/bbb/a1b5.j2c" )
00073                         ( "aaa/bbb/a1b3.j2c" )
00074                         ;
00075                 listSequence3 = sequenceParser::sequenceFromFilenameList( paths );
00076                 BOOST_CHECK( listSequence2.size() == 1 );
00077         }
00078 
00079         BOOST_CHECK( listSequence1.front() != listSequence3.front() );
00080 }
00081 
00082 
00083 BOOST_AUTO_TEST_SUITE_END()
00084