Skip to content
Snippets Groups Projects
TreeBaseTest.cpp 1.21 KiB
Newer Older
  • Learn to ignore specific revisions
  • Jan Trávníček's avatar
    Jan Trávníček committed
    #include "TreeBaseTest.h"
    
    CPPUNIT_TEST_SUITE_NAMED_REGISTRATION ( TreeBaseTest, "bits" );
    CPPUNIT_TEST_SUITE_REGISTRATION ( TreeBaseTest );
    
    void TreeBaseTest::setUp ( ) {
    }
    
    void TreeBaseTest::tearDown ( ) {
    }
    
    void TreeBaseTest::testRegexps ( ) {
    
    	RegExpIteration iter = RegExpEmpty ( );
    
    Jan Trávníček's avatar
    Jan Trávníček committed
    
    
    	CPPUNIT_ASSERT ( iter.getChild ( ).getParent ( ) == & iter );
    
    Jan Trávníček's avatar
    Jan Trávníček committed
    
    
    	RegExpIteration iter2 = iter;
    	RegExpIteration iter3 = iter2;
    
    Jan Trávníček's avatar
    Jan Trávníček committed
    
    
    	CPPUNIT_ASSERT ( iter3.getChild ( ).getParent ( ) == & iter3 );
    
    Jan Trávníček's avatar
    Jan Trávníček committed
    
    	iter3 = iter;
    
    	RegExpIteration iter4 = RegExpEpsilon ( );
    
    Jan Trávníček's avatar
    Jan Trávníček committed
    	iter3 = iter4;
    
    
    	CPPUNIT_ASSERT ( iter3.getChild ( ).getParent ( ) == & iter3 );
    
    Jan Trávníček's avatar
    Jan Trávníček committed
    
    	RegExpSymbol s ( 'x' );
    	const RegExpSymbol & sr = s;
    
    	sr.getChildren ( );
    
    
    	RegExpAlternation alter ( std::move ( iter ), std::move ( iter2 ) );
    	for ( const RegExpElement & element : alter.getChildren ( ) ) {
    		CPPUNIT_ASSERT ( element.getParent ( ) == & alter );
    	}
    
    Jan Trávníček's avatar
    Jan Trávníček committed
    }
    
    void TreeBaseTest::testRankedTree ( ) {
    	RankedTreeNode node ( 'a', 1, { RankedTreeNode ( 'b', 1, { RankedTreeNode ( 'c', 0, { } ) } ) } );
    	const RankedTreeNode & cnode = node;
    
    	for ( const RankedTreeNode & child : cnode.getChildren ( ) )
    		CPPUNIT_ASSERT ( child.getParent ( ) == & cnode );
    }
    
    void TreeBaseTest::testUnrankedTree ( ) {
    }