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:
|