blob: 2858588566d575ecf2ce0767f7ed37db1dedbd3a [file] [log] [blame]
package org.eclipse.jdt.ui.tests.actions;
import junit.framework.Assert;
import org.eclipse.swt.dnd.Clipboard;
import org.eclipse.jdt.core.ICompilationUnit;
import org.eclipse.jdt.ui.actions.SelectionDispatchAction;
import org.eclipse.jdt.ui.tests.refactoring.infra.MockWorkbenchSite;
import org.eclipse.jdt.internal.ui.reorg.DeleteSourceReferencesAction;
import org.eclipse.jdt.internal.ui.reorg.ReorgActionFactory;
class SourceReferenceTestUtil {
private SourceReferenceTestUtil(){
}
static DeleteSourceReferencesAction createDeleteAction(Object[] elems){
DeleteSourceReferencesAction deleteAction= new DeleteSourceReferencesAction(new MockWorkbenchSite(elems)){
protected boolean confirmCusDelete(ICompilationUnit[] cusToDelete) {
return false;
}
protected boolean confirmGetterSetterDelete(){
return true;
}
};
deleteAction.setAskForDeleteConfirmation(false);
return deleteAction;
}
static void delete(Object[] elems) {
DeleteSourceReferencesAction deleteAction= createDeleteAction(elems);
deleteAction.update(deleteAction.getSelection());
Assert.assertTrue("delete action incorrectly disabled", deleteAction.isEnabled());
deleteAction.run();
}
// static void cut(Object[] elems) {
// ISelectionProvider provider= new FakeSelectionProvider(elems);
// CutSourceReferencesToClipboardAction cutAction= new CutSourceReferencesToClipboardAction(provider);
// cutAction.update();
// Assert.assertTrue("cut enabled", cutAction.isEnabled());
// cutAction.run();
// }
static void copy(Object[] elems, Clipboard clipboard) {
SelectionDispatchAction pasteAction= ReorgActionFactory.createPasteAction(new MockWorkbenchSite(elems), clipboard);
SelectionDispatchAction copyAction= ReorgActionFactory.createCopyAction(new MockWorkbenchSite(elems), clipboard, pasteAction);
copyAction.update(copyAction.getSelection());
Assert.assertTrue("copy incorrectly disabled", copyAction.isEnabled());
copyAction.run();
}
static void paste(Object[] elems, Clipboard clipboard) {
SelectionDispatchAction pasteAction= ReorgActionFactory.createPasteAction(new MockWorkbenchSite(elems), clipboard);
pasteAction.update(pasteAction.getSelection());
Assert.assertTrue("paste incorrectly disabled", pasteAction.isEnabled());
pasteAction.run();
}
}