@Test
	public void testReorderFolder3() throws Exception {

		// expand DLLs folder

		ProgramNode dllsNode = root.getChild("DLLs");
		expandNode(dllsNode);

		// drag "USER32.DLL" and place it above "ADVAPI32.DLL"
		ProgramNode wnode = dllsNode.getChild("USER32.DLL");
		ProgramNode anode = dllsNode.getChild("ADVAPI32.DLL");
		setSelectionPath(wnode);

		runSwingWithException(() -> {
			dndManager.add(anode, new ProgramNode[] { wnode }, DnDConstants.ACTION_MOVE, -1);
		});
		waitForProgram(program);

		assertEquals("USER32.DLL", dllsNode.getFirstChild().toString());

		ProgramNode node = dllsNode.getChild("USER32.DLL");
		assertTrue(tree.isPathSelected(node.getTreePath()));

		undo();
		dllsNode = root.getChild("DLLs");
		assertEquals("ADVAPI32.DLL", dllsNode.getFirstChild().toString());
		redo();
		dllsNode = root.getChild("DLLs");
		assertEquals("USER32.DLL", dllsNode.getFirstChild().toString());
	}
Tests for drag/drop/reorder for copy and move in the program tree.
Ghidra/Features/Base/src/test.slow/java/ghidra/app/plugin/core/programtree/ProgramTreePlugin3Test.java