@Test
	public void testTypeNamespaceSimpleConversionDoesNotApply2() throws Exception {
		String mangled = ".?AU?$name0@$$QEAV<lambda_0>@?0???1Aname1@name2@@UEAA@XZ@@name3@name4@@";
		String expected =
			"name4::name3::name0<`public: virtual __cdecl name2::Aname1::~Aname1(void)'::`1'::<lambda_0> &&>";
		// See MDMangUtils.getSimpleSymbolPath(item) javadoc to understand why expected and
		//  simpleExpected are the same
		String simpleExpected = expected;
		String expectedDemangled =
			"struct name4::name3::name0<class `public: virtual __cdecl name2::Aname1::~Aname1(void) __ptr64'::`1'::<lambda_0> && __ptr64>";

		MDMangGhidra demangler = new MDMangGhidra();
		demangler.setMangledSymbol(mangled);
		demangler.setErrorOnRemainingChars(true);
		MDDataType item = demangler.demangleType();

		String demangled = item.toString();
		SymbolPath symbolPath = MDMangUtils.getSymbolPath(item);
		SymbolPath simpleSymbolPath = MDMangUtils.getSimpleSymbolPath(item);
		String result = symbolPath.getPath();
		String simpleResult = simpleSymbolPath.getPath();

		assertEquals(expected, result);
		assertEquals(simpleExpected, simpleResult);
		assertEquals(expectedDemangled, demangled);
	}
This class performs testing of MDMangUtils methods
Ghidra/Features/MicrosoftDmang/src/test/java/mdemangler/MDMangUtilsTest.java