### Question:
ShapeStateDefaultHandler implements ShapeStateHandler { public ShapeStateDefaultHandler setBorderShape(final Supplier<LienzoShapeView<?>> shapeSupplier) { handler.getAttributesHandler().setView(shapeSupplier); borderShapeSupplier = shapeSupplier; shapeViewDataEncoder.applyShapeViewType(shapeSupplier, ShapeType.BORDER); return this; } ShapeStateDefaultHandler();   ShapeStateDefaultHandler(final ShapeStateAttributeAnimationHandler<LienzoShapeView<?>> handler); ShapeStateDefaultHandler setRenderType(final RenderType renderType); ShapeStateDefaultHandler setBorderShape(final Supplier<LienzoShapeView<?>> shapeSupplier); ShapeStateDefaultHandler setBackgroundShape(final Supplier<LienzoShapeView<?>> shapeSupplier); ShapeStateDefaultHandler setContainerShape(final Supplier<LienzoShapeView<?>> shapeSupplier); @Override void applyState(final ShapeState shapeState); @Override ShapeStateHandler shapeAttributesChanged(); @Override ShapeState reset(); @Override ShapeState getShapeState();  }### Answer:
@Test public void testSetBorderShape() { tested.setBorderShape(() -> borderShape); ArgumentCaptor<Supplier> viewCaptor = ArgumentCaptor.forClass(Supplier.class); verify(delegateHandler, times(1)).setView(viewCaptor.capture()); Supplier<LienzoShapeView<?>> viewSupplier = viewCaptor.getValue(); assertEquals(borderShape, viewSupplier.get()); verifyShapeTypeAttributeWasSet(borderShape, "shapeType=BORDER"); }