### Question:
SharpenImageTransformerImpl implements ImageTransformer { @Override public final Layer transform(final Layer layer, final ValueMap properties) { if (properties == null || properties.isEmpty()) { log.warn("Transform [ {} ] requires parameters.", TYPE); return layer; } log.debug("Transforming with [ {} ]", TYPE); String unsharpenMask = StringUtils.trim(properties.get(KEY_UNSHARP_MASK, String.class)); try { if(!unsharpenMask.isEmpty()) { String[] param = unsharpenMask.split(","); if(param.length == NUM_SHARPEN_PARAMS) { float amount = Float.parseFloat(param[0]); float radius = Float.parseFloat(param[1]); layer.sharpen(amount, radius); } else { log.warn("Transform [ {} ] requires 2 parameters.", TYPE); } } } catch (NumberFormatException exception) { log.warn("Transform [ {} ] requires floating type values.", TYPE); log.error("Exception occured while parsing string to float", exception); } return layer; }  @Override final Layer transform(final Layer layer, final ValueMap properties);  }### Answer:
@Test public void testTransform() throws Exception { properties.put("op_usm", "2.0,1.0"); transformer.transform(layer, properties); verify(layer, times(1)).sharpen(2.0f,1.0f); verifyNoMoreInteractions(layer); }
@Test public void testTransform_withFourValues() throws Exception { properties.put("op_usm", "2.0,1.0,3,5"); transformer.transform(layer, properties); verify(layer, times(0)).sharpen(2.0f,1.0f); verifyNoMoreInteractions(layer); }