From 74d5616eb89c99cf1bb0152d8a8aee770537af00 Mon Sep 17 00:00:00 2001 From: Markus Schorn Date: Wed, 24 Nov 2010 08:29:07 +0000 Subject: [PATCH] Bug 330123: Testcase for renaming function with const parameter. --- .../rename/RenameFunctionTests.java | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/refactoring/rename/RenameFunctionTests.java b/core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/refactoring/rename/RenameFunctionTests.java index c838322726c..8d4fbaf1742 100644 --- a/core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/refactoring/rename/RenameFunctionTests.java +++ b/core/org.eclipse.cdt.ui.tests/ui/org/eclipse/cdt/ui/tests/refactoring/rename/RenameFunctionTests.java @@ -812,4 +812,25 @@ public class RenameFunctionTests extends RenameTests { Change changes = getRefactorChanges(cpp, offset, "z"); //$NON-NLS-1$ assertTotalChanges( 2, changes ); } + + public void testBug330123() throws Exception { + StringWriter writer = new StringWriter(); + writer.write("class Foo{ \n"); //$NON-NLS-1$ + writer.write(" void bar(const int param);\n"); //$NON-NLS-1$ + writer.write("}; \n"); //$NON-NLS-1$ + String header = writer.toString(); + IFile h = importFile("Foo.h", header); //$NON-NLS-1$ + writer = new StringWriter(); + writer.write("#include \"Foo.h\" \n"); //$NON-NLS-1$ + writer.write("void Foo::bar(const int param) {\n"); //$NON-NLS-1$ + writer.write("} \n"); //$NON-NLS-1$ + String source = writer.toString(); + IFile cpp = importFile("Foo.cpp", source); //$NON-NLS-1$ + int offset = header.indexOf("bar") ; //$NON-NLS-1$ + Change changes = getRefactorChanges(h, offset, "ooga"); //$NON-NLS-1$ + + assertTotalChanges(2, changes); + assertChange(changes, h, header.indexOf("bar"), 3, "ooga"); //$NON-NLS-1$//$NON-NLS-2$ + assertChange(changes, cpp, source.indexOf("bar"), 3, "ooga"); //$NON-NLS-1$//$NON-NLS-2$ + } }