@Test
	public void testStructureInUnionAndViceVersa() throws Exception {

		setupStructureInUnionAndViceVersa();
		executeMerge();

		pressButtonByName(waitForWindow("Union Update Failed"), "OK"); // expected dependency error on CoolUnion

		waitForCompletion();

		DataTypeManager dtm = resultProgram.getDataTypeManager();
		Structure intStruct = (Structure) dtm
				.getDataType(new CategoryPath("/Category1/Category2/Category3"), "IntStruct");
		assertNotNull(intStruct);
		//@formatter:off
		assertEquals("/Category1/Category2/Category3/IntStruct\n" + 
			"pack()\n" + 
			"Structure IntStruct {\n" + 
			"   0   byte   1   field0   \"\"\n" + 
			"   2   word   2      \"\"\n" + 
			"   4   dword   4      \"\"\n" + 
			"   8   qword   8      \"\"\n" + 
			"   16   CoolUnion   112      \"\"\n" + 
			"}\n" + 
			"Length: 128 Alignment: 4\n", intStruct.toString());
		//@formatter:on

		Union coolUnion =
			(Union) dtm.getDataType(new CategoryPath("/Category1/Category2"), "CoolUnion");
		assertNotNull(coolUnion);
		//@formatter:off
		assertEquals("/Category1/Category2/CoolUnion\n" + 
			"pack()\n" + 
			"Union CoolUnion {\n" + 
			"   0   qword   8      \"\"\n" + 
			"   0   word   2      \"\"\n" + 
			"   0   undefined * * * * *   4      \"\"\n" + 
			"   0   DLL_Table   96      \"\"\n" + 
			"   0   DLL_Table *32   4      \"\"\n" + 
			"   0   -BAD-   112      \"Failed to apply 'IntStruct', Data type IntStruct has CoolUnion within it.\"\n" + 
			"}\n" + 
			"Length: 112 Alignment: 4\n", coolUnion.toString());
		//@formatter:on

	}
Data type merge tests for aligned data types.
Ghidra/Features/Base/src/test.slow/java/ghidra/app/merge/datatypes/DataTypeMerge6Test.java