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(); | |
} | |
} |