From: <bl...@us...> - 2003-03-06 22:38:39
|
Update of /cvsroot/cpptool/rfta/src/rfta In directory sc8-pr-cvs1:/tmp/cvs-serv6573/src/rfta Modified Files: SourceBasedTestBase.cpp SourceBasedTestBase.h TransformListTest.cpp TransformListTest.h Log Message: * new statement insertion in compound generate correct text change Index: SourceBasedTestBase.cpp =================================================================== RCS file: /cvsroot/cpptool/rfta/src/rfta/SourceBasedTestBase.cpp,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** SourceBasedTestBase.cpp 22 Dec 2002 16:03:52 -0000 1.7 --- SourceBasedTestBase.cpp 6 Mar 2003 22:18:41 -0000 1.8 *************** *** 9,12 **** --- 9,13 ---- #include <rfta/parser/ASTNodes.h> #include <rfta/parser/MaxLODMutator.h> + #include <rfta/parser/NonSemanticBlanker.h> #include <rfta/parser/ParseContext.h> #include <rfta/parser/StatementsParser.h> *************** *** 48,51 **** --- 49,73 ---- { sourceNode_ = SourceASTNode::create( source_, source_ ); + ParseContext context( sourceNode_ ); + StatementsParser parser( context, + sourceNode_->getBlankedSourceStart(), + sourceNode_->getBlankedSourceEnd() ); + CPPUNIT_ASSERT( parser.tryParse() ); + + // don't bother with lazy parsing for now... + MaxLODMutator mutator; + mutator.mutate( sourceNode_, sourceNode_ ); + } + + + void + SourceBasedTestBase::blankAndParse() + { + std::string blankedSource; + NullPPDirectiveListener nullListener; + NonSemanticBlanker blanker( source_, blankedSource, nullListener ); + blanker.blank(); + + sourceNode_ = SourceASTNode::create( blankedSource, source_ ); ParseContext context( sourceNode_ ); StatementsParser parser( context, Index: SourceBasedTestBase.h =================================================================== RCS file: /cvsroot/cpptool/rfta/src/rfta/SourceBasedTestBase.h,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** SourceBasedTestBase.h 22 Dec 2002 16:03:52 -0000 1.5 --- SourceBasedTestBase.h 6 Mar 2003 22:18:41 -0000 1.6 *************** *** 33,36 **** --- 33,37 ---- protected: void parse(); + void blankAndParse(); ASTNodePtr getIdentifierNode( const SourceRange &range ); ASTNodePtr getIdentifierNode( const std::string &identifierRangeKey ); Index: TransformListTest.cpp =================================================================== RCS file: /cvsroot/cpptool/rfta/src/rfta/TransformListTest.cpp,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** TransformListTest.cpp 22 Dec 2002 16:03:53 -0000 1.4 --- TransformListTest.cpp 6 Mar 2003 22:18:41 -0000 1.5 *************** *** 124,126 **** --- 124,146 ---- + void + TransformListTest::testPreserveOrder() + { + const std::string line1( " return 2;" ); + transforms_->add( *new ReplaceTextTransform( SourceRange( 0,0 ), "{" ) ); + transforms_->add( *new ReplaceTextTransform( SourceRange( 0,0 ), line1 ) ); + transforms_->add( *new ReplaceTextTransform( SourceRange( 0,0 ), "}" ) ); + document_->expectSetSelectionRange( SourceRange( 0,0 ) ); + document_->expectReplaceSelection( "{" ); + document_->expectSetSelectionRange( SourceRange( 1,0 ) ); + document_->expectReplaceSelection( line1 ); + document_->expectSetSelectionRange( SourceRange( 1+line1.length(),0 ) ); + document_->expectReplaceSelection( "}" ); + + transforms_->apply( *document_ ); + + document_->verify(); + } + + } // namespace Refactoring Index: TransformListTest.h =================================================================== RCS file: /cvsroot/cpptool/rfta/src/rfta/TransformListTest.h,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** TransformListTest.h 27 Oct 2002 13:28:23 -0000 1.3 --- TransformListTest.h 6 Mar 2003 22:18:41 -0000 1.4 *************** *** 26,29 **** --- 26,30 ---- CPPUNIT_TEST( testApplyTwoOrdered ); CPPUNIT_TEST( testApplyThreeMissordered ); + CPPUNIT_TEST( testPreserveOrder ); CPPUNIT_TEST_SUITE_END(); *************** *** 44,47 **** --- 45,49 ---- void testApplyTwoOrdered(); void testApplyThreeMissordered(); + void testPreserveOrder(); private: |