11/*
2- * Copyright 2009-2017 the original author or authors.
2+ * Copyright 2009-2020 the original author or authors.
33 *
44 * Licensed under the Apache License, Version 2.0 (the "License");
55 * you may not use this file except in compliance with the License.
66 * You may obtain a copy of the License at
77 *
8- * http ://www.apache.org/licenses/LICENSE-2.0
8+ * https ://www.apache.org/licenses/LICENSE-2.0
99 *
1010 * Unless required by applicable law or agreed to in writing, software
1111 * distributed under the License is distributed on an "AS IS" BASIS,
@@ -17,19 +17,19 @@ package org.codehaus.groovy.eclipse.refactoring.test.rename
1717
1818import static org.eclipse.jdt.core.formatter.DefaultCodeFormatterConstants.FORMATTER_BLANK_LINES_BETWEEN_IMPORT_GROUPS
1919import static org.eclipse.jdt.ui.PreferenceConstants.ORGIMPORTS_IMPORTORDER
20+ import static org.eclipse.ltk.core.refactoring.RefactoringCore.getUndoManager
21+
22+ import groovy.transform.NotYetImplemented
2023
2124import org.codehaus.groovy.eclipse.refactoring.test.rename.RenameRefactoringTestSuite.TestSource
2225import org.eclipse.core.resources.IFile
2326import org.eclipse.core.resources.IFolder
24- import org.eclipse.core.runtime.NullProgressMonitor
2527import org.eclipse.jdt.core.ICompilationUnit
2628import org.eclipse.jdt.core.refactoring.descriptors.MoveDescriptor
2729import org.eclipse.jdt.internal.core.refactoring.descriptors.RefactoringSignatureDescriptorFactory
2830import org.eclipse.ltk.core.refactoring.Refactoring
29- import org.eclipse.ltk.core.refactoring.RefactoringCore
3031import org.eclipse.ltk.core.refactoring.RefactoringStatus
3132import org.junit.Before
32- import org.junit.Ignore
3333import org.junit.Test
3434
3535/**
@@ -39,14 +39,14 @@ import org.junit.Test
3939final class MoveCURefactoringTests extends RenameRefactoringTestSuite {
4040
4141 /**
42- * Moves the first test source to the specified new package. References to
43- * any types contained within should be updated in the other test sources .
42+ * Moves the first source unit to the specified new package. References to
43+ * any types contained within should be updated in the other source units .
4444 */
4545 private void performRefactoringAndUndo (String newPackageName , TestSource ... sources ) {
4646 ICompilationUnit [] units = createUnits(sources)
4747
4848 MoveDescriptor descriptor = RefactoringSignatureDescriptorFactory . createMoveDescriptor()
49- descriptor. setMoveResources(new IFile [0 ], new IFolder [0 ], [ units[0 ]] as ICompilationUnit [ ])
49+ descriptor. setMoveResources(new IFile [0 ], new IFolder [0 ], units[0 ])
5050 descriptor. setDestination(getPackageFragment(newPackageName))
5151 descriptor. setUpdateQualifiedNames(true )
5252 descriptor. setUpdateReferences(true )
@@ -61,24 +61,24 @@ final class MoveCURefactoringTests extends RenameRefactoringTestSuite {
6161 String typeName = sources[0 ]. name. substring(0 , sources[0 ]. name. indexOf(' .' ))
6262 String qualName = newPackageName. length() > 0 ? newPackageName + ' .' + typeName : typeName
6363 ICompilationUnit newUnit = packageFragmentRoot. javaProject. findType(qualName). compilationUnit
64+ ICompilationUnit oldUnit = units[0 ]
6465
65- ICompilationUnit origUnit = units[0 ]
6666 units[0 ] = newUnit
6767 assertContents(units, sources* . finalContents)
6868
6969 // undo
70- assert RefactoringCore . getUndoManager(). anythingToUndo() : ' anythingToUndo'
71- assert ! RefactoringCore . getUndoManager(). anythingToRedo() : ' ! anythingToRedo'
72-
73- RefactoringCore . getUndoManager(). performUndo(null , new NullProgressMonitor ())
70+ assert undoManager. anythingToUndo()
71+ assert ! undoManager. anythingToRedo()
72+ undoManager. performUndo(null , null )
7473
75- units[0 ] = origUnit
74+ units[0 ] = oldUnit
7675 assertContents(units, sources* . contents)
7776
7877 // redo
79- assert ! RefactoringCore . getUndoManager(). anythingToUndo() : ' ! anythingToUndo'
80- assert RefactoringCore . getUndoManager(). anythingToRedo() : ' anythingToRedo'
81- RefactoringCore . getUndoManager(). performRedo(null , new NullProgressMonitor ())
78+ assert ! undoManager. anythingToUndo()
79+ assert undoManager. anythingToRedo()
80+ undoManager. performRedo(null , null )
81+
8282 units[0 ] = newUnit
8383 assertContents(units, sources* . finalContents)
8484 }
@@ -95,69 +95,69 @@ final class MoveCURefactoringTests extends RenameRefactoringTestSuite {
9595 void testSimpleMove1 () {
9696 performRefactoringAndUndo(' NEW' , new TestSource (
9797 pack : ' p' , name : ' Java.java' ,
98- contents : ' package p;\n public class Java { }' ,
99- finalContents : ' package NEW;\n public class Java { }'
98+ contents : ' package p;\n public class Java {}' ,
99+ finalContents : ' package NEW;\n public class Java {}'
100100 ))
101101 }
102102
103103 @Test
104104 void testSimpleMove2 () {
105105 performRefactoringAndUndo(' NEW' , new TestSource (
106106 pack : ' p' , name : ' Groovy.groovy' ,
107- contents : ' package p;\n public class Groovy { }' ,
108- finalContents : ' package NEW;\n public class Groovy { }'
107+ contents : ' package p;\n public class Groovy {}' ,
108+ finalContents : ' package NEW;\n public class Groovy {}'
109109 ))
110110 }
111111
112112 @Test
113113 void testSimpleMove3 () {
114114 performRefactoringAndUndo(' NEW' , new TestSource (
115115 pack : ' p' , name : ' Java.java' ,
116- contents : ' package p;\n public class Java { }' ,
117- finalContents : ' package NEW;\n public class Java { }'
116+ contents : ' package p;\n public class Java {}' ,
117+ finalContents : ' package NEW;\n public class Java {}'
118118 ), new TestSource (
119119 pack : ' p' , name : ' Groovy.groovy' ,
120- contents : ' package p;\n public class Groovy extends Java { }' ,
121- finalContents : ' package p;\n\n import NEW.Java\n\n public class Groovy extends Java { }'
120+ contents : ' package p;\n public class Groovy extends Java {}' ,
121+ finalContents : ' package p;\n\n import NEW.Java\n\n public class Groovy extends Java {}'
122122 ))
123123 }
124124
125125 @Test
126126 void testSimpleMove4 () {
127127 performRefactoringAndUndo(' NEW' , new TestSource (
128128 pack : ' p1' , name : ' Groovy.groovy' ,
129- contents : ' package p1\n import p2.Groovy2\n public class Groovy {\n Groovy2 g }' ,
130- finalContents : ' package NEW\n import p2.Groovy2\n public class Groovy {\n Groovy2 g }'
129+ contents : ' package p1\n import p2.Groovy2\n public class Groovy {\n Groovy2 g \n }' ,
130+ finalContents : ' package NEW\n import p2.Groovy2\n public class Groovy {\n Groovy2 g \n }'
131131 ), new TestSource (
132132 pack : ' p2' , name : ' Groovy2.groovy' ,
133- contents : ' package p2\n import p1.Groovy\n public class Groovy2 extends Groovy { }' ,
134- finalContents : ' package p2\n import NEW.Groovy\n public class Groovy2 extends Groovy { }'
133+ contents : ' package p2\n import p1.Groovy\n public class Groovy2 extends Groovy {}' ,
134+ finalContents : ' package p2\n import NEW.Groovy\n public class Groovy2 extends Groovy {}'
135135 ))
136136 }
137137
138138 @Test
139139 void testQualifiedMove1 () {
140140 performRefactoringAndUndo(' NEW' , new TestSource (
141141 pack : ' p' , name : ' Java.java' ,
142- contents : ' package p;\n public class Java { }' ,
143- finalContents : ' package NEW;\n public class Java { }'
142+ contents : ' package p;\n public class Java {}' ,
143+ finalContents : ' package NEW;\n public class Java {}'
144144 ), new TestSource (
145145 pack : ' p' , name : ' Groovy.groovy' ,
146- contents : ' package p;\n public class Groovy extends p.Java { }' ,
147- finalContents : ' package p;\n public class Groovy extends NEW.Java { }'
146+ contents : ' package p;\n public class Groovy extends p.Java {}' ,
147+ finalContents : ' package p;\n public class Groovy extends NEW.Java {}'
148148 ))
149149 }
150150
151151 @Test
152152 void testQualifiedMove2 () {
153153 performRefactoringAndUndo(' NEW' , new TestSource (
154154 pack : ' p1' , name : ' Groovy.groovy' ,
155- contents : ' package p1\n public class Groovy {\n p2 .Groovy2 g }' ,
156- finalContents : ' package NEW\n public class Groovy {\n p2 .Groovy2 g }'
155+ contents : ' package p1\n public class Groovy {\n p2 .Groovy2 g\n }' ,
156+ finalContents : ' package NEW\n public class Groovy {\n p2 .Groovy2 g\n }'
157157 ), new TestSource (
158158 pack : ' p2' , name : ' Groovy2.groovy' ,
159- contents : ' package p2\n public class Groovy2 extends p1.Groovy { }' ,
160- finalContents : ' package p2\n public class Groovy2 extends NEW.Groovy { }'
159+ contents : ' package p2\n public class Groovy2 extends p1.Groovy {}' ,
160+ finalContents : ' package p2\n public class Groovy2 extends NEW.Groovy {}'
161161 ))
162162 }
163163
@@ -167,140 +167,140 @@ final class MoveCURefactoringTests extends RenameRefactoringTestSuite {
167167 performRefactoringAndUndo(' j2' , new TestSource (
168168 pack : ' j1' , name : ' Java.java' ,
169169 contents : ''' \
170- package j1
171- public class Java {
172- public static final int N = 1;
173- }
174- ''' . stripIndent (),
170+ | package j1
171+ | public class Java {
172+ | public static final int N = 1;
173+ | }
174+ | ''' . stripMargin (),
175175 finalContents : ''' \
176- package j2
177- public class Java {
178- public static final int N = 1;
179- }
180- ''' . stripIndent ()
176+ | package j2
177+ | public class Java {
178+ | public static final int N = 1;
179+ | }
180+ | ''' . stripMargin ()
181181 ), new TestSource (
182182 pack : ' g1' , name : ' Groovy.groovy' ,
183183 contents : ''' \
184- package g1
185-
186- import static j1.Java.*
187- import j1.Java
188-
189- class Groovy {
190- def m1() {
191- Java j = new j1.Java()
192- }
193- def m2() {
194- def n = N
195- }
196- }
197- ''' . stripIndent (),
184+ | package g1
185+ |
186+ | import static j1.Java.*
187+ | import j1.Java
188+ |
189+ | class Groovy {
190+ | def m1() {
191+ | Java j = new j1.Java()
192+ | }
193+ | def m2() {
194+ | def n = N
195+ | }
196+ | }
197+ | ''' . stripMargin (),
198198 finalContents : ''' \
199- package g1
200-
201- import static j2.Java.*
202- import j2.Java
203-
204- class Groovy {
205- def m1() {
206- Java j = new j2.Java()
207- }
208- def m2() {
209- def n = N
210- }
211- }
212- ''' . stripIndent (),
199+ | package g1
200+ |
201+ | import static j2.Java.*
202+ | import j2.Java
203+ |
204+ | class Groovy {
205+ | def m1() {
206+ | Java j = new j2.Java()
207+ | }
208+ | def m2() {
209+ | def n = N
210+ | }
211+ | }
212+ | ''' . stripMargin (),
213213 ))
214214 }
215215
216216 @Test
217217 void testNonPrimaryMove () {
218218 performRefactoringAndUndo(' NEW' , new TestSource (
219219 pack : ' p1' , name : ' GroovyFoo.groovy' ,
220- contents : ' package p1\n import p2.Groovy2\n public class Groovy {\n Groovy2 g }' ,
221- finalContents : ' package NEW\n import p2.Groovy2\n public class Groovy {\n Groovy2 g }'
220+ contents : ' package p1\n import p2.Groovy2\n public class Groovy {\n Groovy2 g \n }' ,
221+ finalContents : ' package NEW\n import p2.Groovy2\n public class Groovy {\n Groovy2 g \n }'
222222 ), new TestSource (
223223 pack : ' p2' , name : ' GroovyFoo2.groovy' ,
224- contents : ' package p2\n import p1.Groovy\n public class Groovy2 extends Groovy { }' ,
225- finalContents : ' package p2\n import NEW.Groovy\n public class Groovy2 extends Groovy { }'
224+ contents : ' package p2\n import p1.Groovy\n public class Groovy2 extends Groovy {}' ,
225+ finalContents : ' package p2\n import NEW.Groovy\n public class Groovy2 extends Groovy {}'
226226 ))
227227 }
228228
229229 @Test
230230 void testNonPrimaryQualifiedMove () {
231231 performRefactoringAndUndo(' NEW' , new TestSource (
232232 pack : ' p1' , name : ' GroovyFoo.groovy' ,
233- contents : ' package p1\n public class Groovy {\n p2 .Groovy2 g }' ,
234- finalContents : ' package NEW\n public class Groovy {\n p2 .Groovy2 g }'
233+ contents : ' package p1\n public class Groovy {\n p2 .Groovy2 g\n }' ,
234+ finalContents : ' package NEW\n public class Groovy {\n p2 .Groovy2 g\n }'
235235 ), new TestSource (
236236 pack : ' p2' , name : ' GroovyFoo2.groovy' ,
237- contents : ' package p2\n public class Groovy2 extends p1.Groovy { }' ,
238- finalContents : ' package p2\n public class Groovy2 extends NEW.Groovy { }'
237+ contents : ' package p2\n public class Groovy2 extends p1.Groovy {}' ,
238+ finalContents : ' package p2\n public class Groovy2 extends NEW.Groovy {}'
239239 ))
240240 }
241241
242242 @Test
243243 void testMoveBack () {
244244 performRefactoringAndUndo(' p2' , new TestSource (
245245 pack : ' p1' , name : ' Groovy.groovy' ,
246- contents : ' package p1\n import p2.Groovy2\n\n public class Groovy { Groovy2 g }' ,
247- finalContents : ' package p2\n\n public class Groovy { Groovy2 g }'
246+ contents : ' package p1\n import p2.Groovy2\n\n public class Groovy {\n Groovy2 g\n }' ,
247+ finalContents : ' package p2\n\n public class Groovy {\n Groovy2 g\n }'
248248 ), new TestSource (
249249 pack : ' p2' , name : ' Groovy2.groovy' ,
250- contents : ' package p2\n import p1.Groovy\n\n public class Groovy2 extends Groovy { }' ,
251- finalContents : ' package p2\n\n public class Groovy2 extends Groovy { }'
250+ contents : ' package p2\n import p1.Groovy\n\n public class Groovy2 extends Groovy {}' ,
251+ finalContents : ' package p2\n\n public class Groovy2 extends Groovy {}'
252252 ))
253253 }
254254
255- @Test @Ignore ( ' see https://bugs.eclipse.org/bugs/show_bug.cgi?id=350205' )
255+ @Test @NotYetImplemented // see https://bugs.eclipse.org/bugs/show_bug.cgi?id=350205
256256 void testInnerMove1 () {
257257 performRefactoringAndUndo(' NEW' , new TestSource (
258258 pack : ' p' , name : ' Groovy.groovy' ,
259- contents : ' package p;\n public class Groovy {\n class Inner { }\n }' ,
260- finalContents : ' package NEW;\n public class Groovy {\n class Inner { }\n }'
259+ contents : ' package p;\n public class Groovy {\n class Inner {}\n }' ,
260+ finalContents : ' package NEW;\n public class Groovy {\n class Inner {}\n }'
261261 ), new TestSource (
262262 pack : ' p' , name : ' Groovy2.groovy' ,
263- contents : ' package p;\n public class Groovy2 extends Groovy.Inner { }' ,
264- finalContents : ' package p;\n import NEW.Groovy;\n public class Groovy2 extends Groovy.Inner { }'
263+ contents : ' package p;\n public class Groovy2 extends Groovy.Inner {}' ,
264+ finalContents : ' package p;\n import NEW.Groovy;\n public class Groovy2 extends Groovy.Inner {}'
265265 ))
266266 }
267267
268- @Test @Ignore ( ' see https://bugs.eclipse.org/bugs/show_bug.cgi?id=350205' )
268+ @Test @NotYetImplemented // see https://bugs.eclipse.org/bugs/show_bug.cgi?id=350205
269269 void testInnerMove2 () {
270270 performRefactoringAndUndo(' NEW' , new TestSource (
271271 pack : ' p' , name : ' Groovy2.groovy' ,
272- contents : ' package p;\n public class Groovy2 extends Groovy.Inner { }' ,
273- finalContents : ' package NEW;\n import p.Groovy;\n public class Groovy2 extends Groovy.Inner { }'
272+ contents : ' package p;\n public class Groovy2 extends Groovy.Inner {}' ,
273+ finalContents : ' package NEW;\n import p.Groovy;\n public class Groovy2 extends Groovy.Inner {}'
274274 ), new TestSource (
275275 pack : ' p' , name : ' Groovy.groovy' ,
276- contents : ' package p;\n public class Groovy {\n class Inner { }\n }' ,
277- finalContents : ' package p;\n public class Groovy {\n class Inner { }\n }'
276+ contents : ' package p;\n public class Groovy {\n class Inner {}\n }' ,
277+ finalContents : ' package p;\n public class Groovy {\n class Inner {}\n }'
278278 ))
279279 }
280280
281- @Test @Ignore ( ' see https://bugs.eclipse.org/bugs/show_bug.cgi?id=350205' )
281+ @Test @NotYetImplemented // see https://bugs.eclipse.org/bugs/show_bug.cgi?id=350205
282282 void testInnerMove3 () {
283283 performRefactoringAndUndo(' NEW' , new TestSource (
284284 pack : ' p' , name : ' Groovy.groovy' ,
285- contents : ' package p;\n public class Groovy {\n class Inner { }\n }' ,
286- finalContents : ' package NEW;\n public class Groovy {\n class Inner { }\n }'
285+ contents : ' package p;\n public class Groovy {\n class Inner {}\n }' ,
286+ finalContents : ' package NEW;\n public class Groovy {\n class Inner {}\n }'
287287 ), new TestSource (
288288 pack : ' p' , name : ' Groovy2.groovy' ,
289- contents : ' package p;\n import Groovy.Inner\n public class Groovy2 extends Inner { }' ,
290- finalContents : ' package p;\n import NEW.Groovy.Inner;\n public class Groovy2 extends Inner { }'
289+ contents : ' package p;\n import Groovy.Inner\n public class Groovy2 extends Inner {}' ,
290+ finalContents : ' package p;\n import NEW.Groovy.Inner;\n public class Groovy2 extends Inner {}'
291291 ))
292292 }
293293
294- @Test @Ignore ( ' see https://bugs.eclipse.org/bugs/show_bug.cgi?id=350205' )
294+ @Test @NotYetImplemented // see https://bugs.eclipse.org/bugs/show_bug.cgi?id=350205
295295 void testInnerMove4 () {
296296 performRefactoringAndUndo(' NEW' , new TestSource (
297297 pack : ' p' , name : ' Groovy2.groovy' ,
298- contents : ' package p;\n import Groovy.Inner\n public class Groovy2 extends Inner { }' ,
299- finalContents : ' package NEW;\n import p.Groovy.Inner;\n public class Groovy2 extends Inner { }'
298+ contents : ' package p;\n import Groovy.Inner\n public class Groovy2 extends Inner {}' ,
299+ finalContents : ' package NEW;\n import p.Groovy.Inner;\n public class Groovy2 extends Inner {}'
300300 ), new TestSource (
301301 pack : ' p' , name : ' Groovy.groovy' ,
302- contents : ' package p;\n public class Groovy {\n class Inner { }\n }' ,
303- finalContents : ' package p;\n public class Groovy {\n class Inner { }\n }'
302+ contents : ' package p;\n public class Groovy {\n class Inner {}\n }' ,
303+ finalContents : ' package p;\n public class Groovy {\n class Inner {}\n }'
304304 ))
305305 }
306306}
0 commit comments