@Test
	public void testChooseStructWithSourceOverExistingEmptyStructures() throws Exception {

		Structure struct = new StructureDataType(root, "TestStruct", 0, dataMgr);
		struct = (Structure) dataMgr.resolve(struct, null);

		SourceArchive source = new DummySourceArchive("Test");

		Structure structWithSource = new StructureDataType(root, "TestStruct", 0, dataMgr);
		structWithSource.setSourceArchive(source);
		structWithSource.add(ByteDataType.dataType);

		structWithSource = (Structure) dataMgr.resolve(structWithSource,
			DataTypeConflictHandler.REPLACE_EMPTY_STRUCTS_OR_RENAME_AND_ADD_HANDLER);

		assertEquals("TestStruct", structWithSource.getName());
		assertTrue(struct == structWithSource);
		SourceArchive sourceArchive = struct.getSourceArchive();
		assertEquals(source.getSourceArchiveID(), sourceArchive.getSourceArchiveID());
		assertEquals(source.getName(), sourceArchive.getName());
	}
Tests the
{@link DataTypeConflictHandler#REPLACE_EMPTY_STRUCTS_OR_RENAME_AND_ADD_HANDLER}
conflict handler to be sure that and empty local structure will be replaced by
a structure with source.
<p>
Success is the source version is chosen over the empty local version.
Ghidra/Features/Base/src/test.slow/java/ghidra/program/database/data/ConflictHandlerTest.java