Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
View | Details | Raw Unified | Return to bug 196303
Collapse All | Expand All

(-)test cases/org/eclipse/jdt/ui/tests/refactoring/ccp/MoveTest.java (-7 / +68 lines)
Lines 97-102 Link Here
97
			};
97
			};
98
		}
98
		}
99
	}
99
	}
100
	
101
	private static final class ConfirmNoneQuery implements IReorgQueries {
102
		public IConfirmQuery createSkipQuery(String queryTitle, int queryID) {
103
			return new IConfirmQuery() {
104
				public boolean confirm(String question) throws OperationCanceledException {
105
					return false;
106
				}
107
				public boolean confirm(String question, Object[] elements) throws OperationCanceledException {
108
					return false;
109
				}
110
			};
111
		}
112
113
		public IConfirmQuery createYesNoQuery(String queryTitle, boolean allowCancel, int queryID) {
114
			return new IConfirmQuery() {
115
				public boolean confirm(String question) throws OperationCanceledException {
116
					return false;
117
				}
118
				public boolean confirm(String question, Object[] elements) throws OperationCanceledException {
119
					return false;
120
				}
121
			};
122
		}
123
124
		public IConfirmQuery createYesYesToAllNoNoToAllQuery(String queryTitle, boolean allowCancel, int queryID) {
125
			return new IConfirmQuery() {
126
				public boolean confirm(String question) throws OperationCanceledException {
127
					return false;
128
				}
129
				public boolean confirm(String question, Object[] elements) throws OperationCanceledException {
130
					return false;
131
				}
132
			};
133
		}
134
	}
100
135
101
	public MoveTest(String name) {
136
	public MoveTest(String name) {
102
		super(name);
137
		super(name);
Lines 1164-1171 Link Here
1164
			safeDelete(newCuD);
1199
			safeDelete(newCuD);
1165
			safeDelete(orgTest);
1200
			safeDelete(orgTest);
1166
			safeDelete(org);
1201
			safeDelete(org);
1167
			if (newOptions != null)
1202
			javaProject.setOptions(originalOptions);
1168
				javaProject.setOptions(originalOptions);
1169
		}
1203
		}
1170
	}
1204
	}
1171
1205
Lines 1209-1216 Link Here
1209
			safeDelete(newCuD);
1243
			safeDelete(newCuD);
1210
			safeDelete(orgTest);
1244
			safeDelete(orgTest);
1211
			safeDelete(org);
1245
			safeDelete(org);
1212
			if (newOptions != null)
1246
			javaProject.setOptions(originalOptions);
1213
				javaProject.setOptions(originalOptions);
1214
		}
1247
		}
1215
	}
1248
	}
1216
1249
Lines 1920-1926 Link Here
1920
			IJavaElement[] javaElements= {};
1953
			IJavaElement[] javaElements= {};
1921
			IResource[] resources= {file};
1954
			IResource[] resources= {file};
1922
			
1955
			
1923
			move(javaElements, resources, superFolder);
1956
			move(javaElements, resources, superFolder, true);
1957
			
1958
			assertIsParent(folder, file);
1959
			assertIsParent(superFolder, folder);
1960
		}finally{
1961
			performDummySearch();
1962
			safeDelete(file);
1963
		}
1964
	}	
1965
	
1966
	public void testDestination_bug196303() throws Exception{
1967
		IProject superFolder= RefactoringTestSetup.getProject().getProject();
1968
		IFolder folder1= superFolder.getFolder("bar");
1969
		folder1.create(true, true, null);
1970
		
1971
		IFolder folder= superFolder.getFolder("foo");
1972
		folder.create(true, true, null);
1973
		IFile file= folder.getFile("bar");
1974
		file.create(getStream("123"), true, null);
1975
		
1976
		try{
1977
			IJavaElement[] javaElements= {};
1978
			IResource[] resources= {file};
1979
			
1980
			move(javaElements, resources, superFolder, false);
1924
			
1981
			
1925
			assertIsParent(folder, file);
1982
			assertIsParent(folder, file);
1926
			assertIsParent(superFolder, folder);
1983
			assertIsParent(superFolder, folder);
Lines 1934-1940 Link Here
1934
		assertTrue(child.getParent().equals(parent));
1991
		assertTrue(child.getParent().equals(parent));
1935
	}
1992
	}
1936
1993
1937
	public void move(IJavaElement[] javaElements, IResource[] resources, IResource destination) throws Exception {
1994
	public void move(IJavaElement[] javaElements, IResource[] resources, IResource destination, boolean confirmAll) throws Exception {
1938
		assertNotNull(javaElements);
1995
		assertNotNull(javaElements);
1939
		assertNotNull(resources);
1996
		assertNotNull(resources);
1940
		assertNotNull(destination);
1997
		assertNotNull(destination);
Lines 1953-1959 Link Here
1953
		JavaMoveRefactoring ref= new JavaMoveRefactoring(processor);
2010
		JavaMoveRefactoring ref= new JavaMoveRefactoring(processor);
1954
		
2011
		
1955
		processor.setCreateTargetQueries(new CreateTargetQueries(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell()));
2012
		processor.setCreateTargetQueries(new CreateTargetQueries(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell()));
1956
		processor.setReorgQueries(new ConfirmAllQuery());
2013
		if (confirmAll) {
2014
			processor.setReorgQueries(new ConfirmAllQuery());			
2015
		} else {
2016
			processor.setReorgQueries(new ConfirmNoneQuery());
2017
		}
1957
		
2018
		
1958
		performRefactoring(ref);
2019
		performRefactoring(ref);
1959
	}
2020
	}
(-)core refactoring/org/eclipse/jdt/internal/corext/refactoring/reorg/OverwriteHelper.java (-8 / +3 lines)
Lines 182-203 Link Here
182
	private boolean willOverwrite(IResource resource) {
182
	private boolean willOverwrite(IResource resource) {
183
		if (resource == null)
183
		if (resource == null)
184
			return false;
184
			return false;
185
		
185
		IResource destinationResource= ResourceUtil.getResource(fDestination);
186
		IResource destinationResource= ResourceUtil.getResource(fDestination);
186
		if (destinationResource.equals(resource.getParent()))
187
		if (destinationResource.equals(resource.getParent()))
187
			return false;
188
			return false;
189
		
188
		if (destinationResource instanceof IContainer) {
190
		if (destinationResource instanceof IContainer) {
189
			IContainer container= (IContainer)destinationResource;
191
			IContainer container= (IContainer)destinationResource;
190
			IResource member=  container.findMember(resource.getName());
192
			IResource member=  container.findMember(resource.getName());
191
			if (member == null || !member.exists())
193
			if (member == null || !member.exists())
192
				return false;
194
				return false;
193
			if (member instanceof IContainer) {
195
			
194
				try {
195
					if (((IContainer)member).members().length == 0)
196
						return false;
197
				} catch (CoreException e) {
198
					return true;
199
				}
200
			}
201
			return true;
196
			return true;
202
		}
197
		}
203
		return false;
198
		return false;

Return to bug 196303