cdt/cdt_6_0_x/org.eclipse.cdt.ui.tests/resources/refactoring/ExtractMethodHistory.rts
author ryall
Tue, 04 Aug 2009 14:00:13 -0500
changeset 50 fcb77f9783d2
parent 37 c2bce6dd59e7
permissions -rw-r--r--
Fix NPEs.

//!ExtractFunctionHistoryRefactoringTest variable defined in scope
//#org.eclipse.cdt.ui.tests.refactoring.RefactoringHistoryTest
//@A.h
#ifndef A_H_
#define A_H_

class A
{
public:
	A();
	virtual ~A();
	int foo();
	
private:
	int help();
};

#endif /*A_H_*/

//=
#ifndef A_H_
#define A_H_

class A
{
public:
	A();
	virtual ~A();
	int foo();
	
private:
	int help();
    int exp();
};

#endif /*A_H_*/

//@A.cpp
#include "A.h"

A::A()
{
}

A::~A()
{
}
int A::foo()
{
	int i = 2;
	++i;
	help();
	return i;
}

int A::help()
{
	return 42;
}	

//=
#include "A.h"

A::A()
{
}

A::~A()
{
}
int A::exp()
{
    int i = 2;
    ++i;
    help();
    return i;
}

int A::foo()
{
	int i = exp();
	return i;
}

int A::help()
{
	return 42;
}	

//@refScript.xml
<?xml version="1.0" encoding="UTF-8"?>
<session version="1.0">
<refactoring comment="Create method exp" description="Extract Method Refactoring" 
  fileName="file:$$projectPath$$/A.cpp" 
  flags="4" id="org.eclipse.cdt.internal.ui.refactoring.extractfunction.ExtractFunctionRefactoring" 
  name="exp" project="RegressionTestProject" selection="56,25" visibility="private"/>
</session>


//!ExtractFunctionHistoryRefactoringTest
//#org.eclipse.cdt.ui.tests.refactoring.RefactoringHistoryTest
//@A.h
#ifndef A_H_
#define A_H_

class A
{
public:
	A();
	virtual ~A();
	int foo();
	
private:
	int help();
};

#endif /*A_H_*/

//=
#ifndef A_H_
#define A_H_

class A
{
public:
	A();
	virtual ~A();
	int foo();
	
private:
	int help();
    void exp(int & i);
};

#endif /*A_H_*/

//@A.cpp
#include "A.h"

A::A()
{
}

A::~A()
{
}
int A::foo()
{
	int i = 2;
	//comment
	++i;
	help();
	return i;
}

int A::help()
{
	return 42;
}	

//=
#include "A.h"

A::A()
{
}

A::~A()
{
}
void A::exp(int & i)
{
    //comment
    ++i;
    help();
}

int A::foo()
{
	int i = 2;
    exp(i);
	return i;
}

int A::help()
{
	return 42;
}	

//@refScript.xml
<?xml version="1.0" encoding="UTF-8"?>
<session version="1.0">
<refactoring comment="Create method exp" description="Extract Method Refactoring"
 fileName="file:$$projectPath$$/A.cpp"
  flags="4" id="org.eclipse.cdt.internal.ui.refactoring.extractfunction.ExtractFunctionRefactoring"
  name="exp" project="RegressionTestProject" selection="79,13" visibility="private"/>
</session>

//!Extract Function History first extracted statement with leading comment
//#org.eclipse.cdt.ui.tests.refactoring.RefactoringHistoryTest
//@main.cpp
int main(){
	
	int i;
	// Comment
	i= 7;
	return i;
}

//=
void exp(int & i)
{
    // Comment
    i = 7;
}

int main(){
	
	int i;
    exp(i);
	return i;
}

//@refScript.xml
<?xml version="1.0" encoding="UTF-8"?>
<session version="1.0">
<refactoring comment="Create method exp" description="Extract Method Refactoring"
 fileName="file:$$projectPath$$/main.cpp"
 flags="4" id="org.eclipse.cdt.internal.ui.refactoring.extractfunction.ExtractFunctionRefactoring"
 name="exp" project="RegressionTestProject" selection="35,5" visibility="private"/>
</session>

//!Extract Function History extracted statement with trailling comment
//#org.eclipse.cdt.ui.tests.refactoring.RefactoringHistoryTest
//@main.cpp
int main(){
	
	int i;
	i= 7; // Comment
	return i;
}

//=
void exp(int & i)
{
    i = 7; // Comment
}

int main(){
	
	int i;
    exp(i);
    return i;
}

//@refScript.xml
<?xml version="1.0" encoding="UTF-8"?>
<session version="1.0">
<refactoring comment="Create method exp" description="Extract Method Refactoring"
 fileName="file:$$projectPath$$/main.cpp"
 flags="4" id="org.eclipse.cdt.internal.ui.refactoring.extractfunction.ExtractFunctionRefactoring"
 name="exp" project="RegressionTestProject" selection="23,5" visibility="private"/>
</session>

//!ExtractFunctionRefactoringTest duplicates with different Names History Test
//#org.eclipse.cdt.ui.tests.refactoring.RefactoringHistoryTest
//@A.h
#ifndef A_H_
#define A_H_

class A
{
public:
	A();
	virtual ~A();
	int foo();
	
private:
	int help();
};

#endif /*A_H_*/

//=
#ifndef A_H_
#define A_H_

class A
{
public:
	A();
	virtual ~A();
	int foo();
	
private:
	int help();
    void exp(int & i);
};

#endif /*A_H_*/

//@A.cpp
#include "A.h"

A::A()
{
}

A::~A()
{
	int oo = 99;
	++oo;
	help();
}int A::foo()
{
	int i = 2;
	++i;
	help();
	return i;
}

int A::help()
{
	return 42;
}	

//=
#include "A.h"

A::A()
{
}

A::~A()
{
	int oo = 99;
    exp(oo);
}void A::exp(int & i)
{
    ++i;
    help();
}

int A::foo()
{
	int i = 2;
    exp(i);
	return i;
}

int A::help()
{
	return 42;
}	

//@refScript.xml
<?xml version="1.0" encoding="UTF-8"?>
<session version="1.0">
<refactoring comment="Create method exp" description="Extract Method Refactoring" 
 fileName="file:$$projectPath$$/A.cpp" flags="4" id="org.eclipse.cdt.internal.ui.refactoring.extractfunction.ExtractFunctionRefactoring"
 name="exp" project="RegressionTestProject" replaceDuplicates="true" selection="97,13" visibility="private"/>
</session>