mirror of
https://github.com/NationalSecurityAgency/ghidra.git
synced 2025-10-05 02:39:44 +02:00
Test fixes
This commit is contained in:
parent
f2a94605eb
commit
05f8745c28
3 changed files with 40 additions and 54 deletions
|
@ -18,6 +18,7 @@ package ghidra.app.plugin.core.symboltree.actions;
|
|||
import docking.action.MenuData;
|
||||
import ghidra.app.plugin.core.symboltree.SymbolTreeActionContext;
|
||||
import ghidra.app.plugin.core.symboltree.SymbolTreePlugin;
|
||||
import ghidra.app.plugin.core.symboltree.nodes.SymbolNode;
|
||||
import ghidra.app.plugin.core.symboltree.nodes.SymbolTreeNode;
|
||||
|
||||
public class RenameAction extends SymbolTreeContextAction {
|
||||
|
@ -31,7 +32,7 @@ public class RenameAction extends SymbolTreeContextAction {
|
|||
@Override
|
||||
public boolean isEnabledForContext(SymbolTreeActionContext context) {
|
||||
SymbolTreeNode node = context.getSelectedNode();
|
||||
return node != null;
|
||||
return node instanceof SymbolNode;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -42,7 +42,7 @@ public class SymbolTreeLocationReferencesTest extends AbstractLocationReferences
|
|||
super.setUp();
|
||||
|
||||
symbolTreePlugin = getPlugin(tool, SymbolTreePlugin.class);
|
||||
treeProvider = (SymbolTreeProvider) getInstanceField("provider", symbolTreePlugin);
|
||||
treeProvider = (SymbolTreeProvider) getInstanceField("connectedProvider", symbolTreePlugin);
|
||||
showProvider(tool, treeProvider.getName());
|
||||
symbolTree = (SymbolGTree) getInstanceField("tree", treeProvider);
|
||||
showSymbolReferencesAction =
|
||||
|
@ -118,8 +118,9 @@ public class SymbolTreeLocationReferencesTest extends AbstractLocationReferences
|
|||
externalLocation);
|
||||
int txId = program.startTransaction("Add Ext Ref");
|
||||
try {
|
||||
program.getReferenceManager().addExternalReference(refAddr, 1, externalLocation,
|
||||
SourceType.USER_DEFINED, refType);
|
||||
program.getReferenceManager()
|
||||
.addExternalReference(refAddr, 1, externalLocation, SourceType.USER_DEFINED,
|
||||
refType);
|
||||
return externalLocation.createFunction();
|
||||
}
|
||||
finally {
|
||||
|
@ -130,8 +131,9 @@ public class SymbolTreeLocationReferencesTest extends AbstractLocationReferences
|
|||
private void addThunk(Address thunkAddr, Function thunkedFunction) throws Exception {
|
||||
int txId = program.startTransaction("Add Thunk");
|
||||
try {
|
||||
Function f = program.getFunctionManager().createFunction(null, thunkAddr,
|
||||
new AddressSet(thunkAddr), SourceType.USER_DEFINED);
|
||||
Function f = program.getFunctionManager()
|
||||
.createFunction(null, thunkAddr, new AddressSet(thunkAddr),
|
||||
SourceType.USER_DEFINED);
|
||||
f.setThunkedFunction(thunkedFunction);
|
||||
}
|
||||
finally {
|
||||
|
|
|
@ -257,15 +257,15 @@ public class SymbolTreePlugin1Test extends AbstractGhidraHeadedIntegrationTest {
|
|||
util.selectNode(rootNode);
|
||||
ActionContext context = util.getSymbolTreeContext();
|
||||
assertTrue(createLibraryAction.isEnabledForContext(context));
|
||||
assertTrue(!createClassAction.isEnabledForContext(context));
|
||||
assertTrue(!createNamespaceAction.isEnabledForContext(context));
|
||||
assertTrue(!renameAction.isEnabledForContext(context));
|
||||
assertTrue(!cutAction.isEnabledForContext(context));
|
||||
assertTrue(!pasteAction.isEnabledForContext(context));
|
||||
assertTrue(!deleteAction.isEnabledForContext(context));
|
||||
assertTrue(!selectionAction.isEnabledForContext(context));
|
||||
assertTrue(!goToExtLocAction.isEnabledForContext(context));
|
||||
assertTrue(!goToExtLocAction.isEnabledForContext(context));
|
||||
assertFalse(createClassAction.isEnabledForContext(context));
|
||||
assertFalse(createNamespaceAction.isEnabledForContext(context));
|
||||
assertFalse(renameAction.isEnabledForContext(context));
|
||||
assertFalse(cutAction.isEnabledForContext(context));
|
||||
assertFalse(pasteAction.isEnabledForContext(context));
|
||||
assertFalse(deleteAction.isEnabledForContext(context));
|
||||
assertFalse(selectionAction.isEnabledForContext(context));
|
||||
assertFalse(goToExtLocAction.isEnabledForContext(context));
|
||||
assertFalse(goToExtLocAction.isEnabledForContext(context));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -281,9 +281,6 @@ public class SymbolTreePlugin1Test extends AbstractGhidraHeadedIntegrationTest {
|
|||
util.selectNode(node);
|
||||
performAction(cutAction, util.getSymbolTreeContext(), true);
|
||||
|
||||
util.selectNode(rootNode);
|
||||
assertTrue(pasteAction.isEnabledForContext(util.getSymbolTreeContext()));
|
||||
|
||||
// move a function to a namespace
|
||||
// cut a function; select global; paste should be enabled
|
||||
GTreeNode nsParentNode = rootNode.getChild(5);
|
||||
|
@ -312,10 +309,6 @@ public class SymbolTreePlugin1Test extends AbstractGhidraHeadedIntegrationTest {
|
|||
util.selectNode(gNode);
|
||||
assertTrue(cutAction.isEnabledForContext(util.getSymbolTreeContext()));
|
||||
performAction(cutAction, util.getSymbolTreeContext(), true);
|
||||
|
||||
// select the root node
|
||||
util.selectNode(rootNode);
|
||||
assertTrue(pasteAction.isEnabledForContext(util.getSymbolTreeContext()));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -354,7 +347,7 @@ public class SymbolTreePlugin1Test extends AbstractGhidraHeadedIntegrationTest {
|
|||
|
||||
GTreeNode dNode = fNode.getChild(0);
|
||||
util.selectNode(dNode);
|
||||
assertTrue(!pasteAction.isEnabledForContext(util.getSymbolTreeContext()));
|
||||
assertFalse(pasteAction.isEnabledForContext(util.getSymbolTreeContext()));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -415,35 +408,25 @@ public class SymbolTreePlugin1Test extends AbstractGhidraHeadedIntegrationTest {
|
|||
else {
|
||||
assertFalse(createLibraryIsEnabled);
|
||||
}
|
||||
assertTrue(!createClassAction.isEnabledForContext(context));
|
||||
assertTrue(!createNamespaceAction.isEnabledForContext(context));
|
||||
assertTrue(!renameAction.isEnabledForContext(context));
|
||||
assertTrue(!renameAction.isEnabledForContext(context));
|
||||
assertTrue(!cutAction.isEnabledForContext(context));
|
||||
assertTrue(!cutAction.isEnabledForContext(context));
|
||||
assertTrue(!pasteAction.isEnabledForContext(context));
|
||||
assertTrue(!pasteAction.isEnabledForContext(context));
|
||||
assertTrue(!deleteAction.isEnabledForContext(context));
|
||||
assertTrue(!deleteAction.isEnabledForContext(context));
|
||||
assertTrue(!selectionAction.isEnabledForContext(context));
|
||||
assertTrue(!selectionAction.isEnabledForContext(context));
|
||||
assertFalse(createClassAction.isEnabledForContext(context));
|
||||
assertFalse(createNamespaceAction.isEnabledForContext(context));
|
||||
assertFalse(renameAction.isEnabledForContext(context));
|
||||
assertFalse(cutAction.isEnabledForContext(context));
|
||||
assertFalse(pasteAction.isEnabledForContext(context));
|
||||
assertFalse(deleteAction.isEnabledForContext(context));
|
||||
assertFalse(selectionAction.isEnabledForContext(context));
|
||||
|
||||
GTreeNode lNode = rootNode.getChild(1);
|
||||
util.selectNode(lNode);
|
||||
context = util.getSymbolTreeContext();
|
||||
assertTrue(!createLibraryAction.isEnabledForContext(context));
|
||||
assertTrue(!createClassAction.isEnabledForContext(context));
|
||||
assertTrue(!createNamespaceAction.isEnabledForContext(context));
|
||||
assertTrue(!renameAction.isEnabledForContext(context));
|
||||
assertTrue(!renameAction.isEnabledForContext(context));
|
||||
assertTrue(!cutAction.isEnabledForContext(context));
|
||||
assertTrue(!cutAction.isEnabledForContext(context));
|
||||
assertTrue(!pasteAction.isEnabledForContext(context));
|
||||
assertTrue(!pasteAction.isEnabledForContext(context));
|
||||
assertTrue(!deleteAction.isEnabledForContext(context));
|
||||
assertTrue(!deleteAction.isEnabledForContext(context));
|
||||
assertTrue(!selectionAction.isEnabledForContext(context));
|
||||
assertTrue(!selectionAction.isEnabledForContext(context));
|
||||
assertFalse(createLibraryAction.isEnabledForContext(context));
|
||||
assertFalse(createClassAction.isEnabledForContext(context));
|
||||
assertFalse(createNamespaceAction.isEnabledForContext(context));
|
||||
assertFalse(renameAction.isEnabledForContext(context));
|
||||
assertFalse(cutAction.isEnabledForContext(context));
|
||||
assertFalse(pasteAction.isEnabledForContext(context));
|
||||
assertFalse(deleteAction.isEnabledForContext(context));
|
||||
assertFalse(selectionAction.isEnabledForContext(context));
|
||||
}
|
||||
|
||||
@Test
|
||||
|
@ -457,8 +440,8 @@ public class SymbolTreePlugin1Test extends AbstractGhidraHeadedIntegrationTest {
|
|||
GTreeNode pNode = gNode.getChild(0);
|
||||
util.selectNode(pNode);
|
||||
ActionContext context = util.getSymbolTreeContext();
|
||||
assertTrue(!cutAction.isEnabledForContext(context));
|
||||
assertTrue(!pasteAction.isEnabledForContext(context));
|
||||
assertFalse(cutAction.isEnabledForContext(context));
|
||||
assertFalse(pasteAction.isEnabledForContext(context));
|
||||
assertTrue(renameAction.isEnabledForContext(context));
|
||||
assertTrue(renameAction.isEnabledForContext(context));
|
||||
assertTrue(selectionAction.isEnabledForContext(context));
|
||||
|
@ -476,7 +459,7 @@ public class SymbolTreePlugin1Test extends AbstractGhidraHeadedIntegrationTest {
|
|||
util.selectNode(gNode);
|
||||
ActionContext context = util.getSymbolTreeContext();
|
||||
assertTrue(cutAction.isEnabledForContext(context));
|
||||
assertTrue(!pasteAction.isEnabledForContext(context));
|
||||
assertFalse(pasteAction.isEnabledForContext(context));
|
||||
assertTrue(renameAction.isEnabledForContext(context));
|
||||
assertTrue(renameAction.isEnabledForContext(context));
|
||||
assertTrue(selectionAction.isEnabledForContext(context));
|
||||
|
@ -495,7 +478,7 @@ public class SymbolTreePlugin1Test extends AbstractGhidraHeadedIntegrationTest {
|
|||
util.selectNode(pNode);
|
||||
ActionContext context = util.getSymbolTreeContext();
|
||||
assertTrue(cutAction.isEnabledForContext(context));
|
||||
assertTrue(!pasteAction.isEnabledForContext(context));
|
||||
assertFalse(pasteAction.isEnabledForContext(context));
|
||||
assertTrue(renameAction.isEnabledForContext(context));
|
||||
assertTrue(renameAction.isEnabledForContext(context));
|
||||
assertTrue(selectionAction.isEnabledForContext(context));
|
||||
|
@ -866,8 +849,8 @@ public class SymbolTreePlugin1Test extends AbstractGhidraHeadedIntegrationTest {
|
|||
}
|
||||
|
||||
private void renameSelectedNode() throws Exception {
|
||||
SwingUtilities.invokeAndWait(
|
||||
() -> renameAction.actionPerformed(util.getSymbolTreeContext()));
|
||||
SwingUtilities
|
||||
.invokeAndWait(() -> renameAction.actionPerformed(util.getSymbolTreeContext()));
|
||||
waitForEditing();
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue