### Question:
ShapeFileDataSource extends ImportDataSource { @Override public String generateTypeKey() { return StringUtilities.concat("SHP::", getName(), "::", toString(getSourceUri())); } ShapeFileDataSource();  ShapeFileDataSource(URI sourceUri); ImportParseParameters getParseParameters(); void setParseParameters(ImportParseParameters parseParameters); @Override int hashCode(); @Override boolean equals(Object obj); @Override String toString(); @Override ShapeFileDataSource clone(); @Override String generateTypeKey(); Set<String> getColumnFilter();  }### Answer:
@Test public void testGenerateTypeKey() { ShapeFileDataSource dataSource = getTestObject(); File file = new File("x:\\sample_files\\test.shp"); URI uri = file.toURI(); dataSource.setSourceUri(uri); String expectedTypeKey = "SHP::" + dataSource.getName() + "::" + file.getAbsolutePath(); Assert.assertEquals(expectedTypeKey, dataSource.generateTypeKey()); }