private TestGraphAlgorithmSteppingViewerPanel<TestV, TestE> showViewer(
			AlgorithmSteppingTaskMonitor steppingMonitor) {

		String isHeadless = Boolean.toString(false);
		System.setProperty(SystemUtilities.HEADLESS_PROPERTY, isHeadless);
		System.setProperty("java.awt.headless", isHeadless);

		JFrame frame = new JFrame("Graph");
		TestGraphAlgorithmSteppingViewerPanel<TestV, TestE> gp =
			new TestGraphAlgorithmSteppingViewerPanel<>(g, steppingMonitor);
		frame.getContentPane().add(gp);
		frame.setSize(800, 800);
		frame.setVisible(true);

		frame.addWindowListener(new WindowAdapter() {
			@Override
			public void windowClosing(WindowEvent e) {
				steppingMonitor.cancel();
			}
		});

		return gp;
	}
A tool, written as a junit, that allows the user to run a test and then use the UI to step
through the given graph algorithm.
Ghidra/Framework/Graph/src/test/java/ghidra/graph/GraphAlgorithmsVisualDebugger.java