### Question:
ConfigurationServiceImpl extends AbstractConveyorComponentService implements ConfigurationService { @Override public ConfigurationProperty findConfigurationPropertyByKey( final String configurationKey) throws ConveyorExecutionException { if (configurationKey == null || configurationKey.isEmpty()) { throw new IllegalArgumentException( "configurationKey is null or empty"); } log.info("findConfigurationServiceByKey() key = {}", configurationKey); try { return configurationPropertyDAO.findByPropertyKey(configurationKey); } catch (TransferDAOException e) { log.error("DAO exception", e); throw new ConveyorExecutionException(e); } }  @Override boolean isInTearOffMode(); ConfigurationPropertyDAO getConfigurationPropertyDAO(); void setConfigurationPropertyDAO(
			final ConfigurationPropertyDAO configurationPropertyDAO); @Override List<ConfigurationProperty> listConfigurationProperties(); @Override ConfigurationProperty findConfigurationPropertyByKey(
			final String configurationKey); @Override void deleteConfigurationProperty(
			final ConfigurationProperty configurationProperty); @Override ConfigurationProperty addConfigurationProperty(
			final ConfigurationProperty configurationProperty); @Override void updateConfigurationProperty(
			final ConfigurationProperty configurationProperty); @Override Properties exportProperties(); @Override void importProperties(final Properties propertiesToImport); @Override TransferControlBlock buildDefaultTransferControlBlockBasedOnConfiguration(
			final String restartPath,
			final IRODSAccessObjectFactory irodsAccessObjectFactory); @Override synchronized CachedConveyorConfigurationProperties getCachedConveyorConfigurationProperties(); static final String TEAR_OFF_MODE; }### Answer:
@Test public void testFindConfigurationPropertyByKey() throws Exception { String testKey = "testFindConfigurationPropertyByKeyProperty"; String testValue = "testFindConfigurationPropertyByKeyVal"; ConfigurationProperty configProperty = new ConfigurationProperty(); configProperty.setPropertyKey(testKey); configProperty.setPropertyValue(testValue); configProperty.setCreatedAt(new Date()); configurationService.addConfigurationProperty(configProperty); ConfigurationProperty actual = configurationService .findConfigurationPropertyByKey(testKey); Assert.assertNotNull("did not find key for props just added", actual); }
@Test(expected = IllegalArgumentException.class) public void testFindConfigurationPropertyByKeyNull() throws Exception { configurationService.findConfigurationPropertyByKey(null); }