@Test
	public void testDragCopyToDataType() throws Exception {

		enableRenameConflictHandler();

		String structName = "ArrayStruct";
		DataTypeNode structureNode = createAndSelectStructure(structName);
		CategoryNode category3Node = (CategoryNode) structureNode.getParent();

		// drag/move ArrayStruct to MISC/ArrayStruct
		String miscName = "MISC";
		CategoryNode miscNode = (CategoryNode) programNode.getChild(miscName);
		expandNode(miscNode);

		DataTypeNode miscStructureNode = (DataTypeNode) miscNode.getChild("ArrayStruct");
		copyDragNodeToNode(structureNode, miscStructureNode);

		structureNode = (DataTypeNode) tree.getViewNode(structureNode);
		assertNotNull(structureNode.getParent());

		category3Node = (CategoryNode) tree.getViewNode(category3Node);
		assertNotNull(category3Node.getChild(structName));

		miscNode = (CategoryNode) tree.getViewNode(miscNode);
		DataTypeNode newNode =
			(DataTypeNode) miscNode.getChild(structName + DataType.CONFLICT_SUFFIX);
		assertNotNull(newNode);
		assertNotNull(structureNode.getParent());
	}
Tests copy/paste/drag/drop operations
Ghidra/Features/Base/src/test.slow/java/ghidra/app/plugin/core/datamgr/DataTypeCopyMoveDragTest.java