### Question:
ShapeViewDecoratorAnimation extends AbstractAnimation<LienzoShapeView<?>> { private IAnimationHandle animate(final com.ait.lienzo.client.core.shape.Shape<?> shape) { final AnimationProperties properties = isStrokeNotFill ? AnimationProperties.toPropertyList(STROKE_COLOR(color), STROKE_ALPHA(alpha), STROKE_WIDTH(strokeWidth)) : AnimationProperties.toPropertyList(FILL_COLOR(color), FILL_ALPHA(alpha)); return shape.animate( AnimationTweener.LINEAR, properties, getDuration(), getAnimationCallback()); } ShapeViewDecoratorAnimation(final Supplier<LienzoShapeView<?>> shapeView,
                                final String fillColor,
                                final double fillAlpha);   ShapeViewDecoratorAnimation(final Supplier<LienzoShapeView<?>> shapeView,
                                final String strokeColor,
                                final double strokeWidth,
                                final double strokeAlpha); static ShapeViewDecoratorAnimation newStrokeDecoratorAnimation(final Supplier<LienzoShapeView<?>> shapeView,
                                                                          final String strokeColor,
                                                                          final double strokeWidth,
                                                                          final double strokeAlpha); static ShapeViewDecoratorAnimation newFillDecoratorAnimation(final Supplier<LienzoShapeView<?>> shapeView,
                                                                        final String fillColor,
                                                                        final double fillAlpha); @Override LienzoShapeView<?> getSource(); @Override AnimationHandle run(); Supplier<LienzoShapeView<?>> getShapeView(); String getColor(); double getStrokeWidth(); double getAlpha();  }### Answer:
@Test public void testAnimate() { tested.run(); final ArgumentCaptor<AnimationProperties> propertiesArgumentCaptor = ArgumentCaptor.forClass(AnimationProperties.class); verify(decorator, times(1)).animate(any(AnimationTweener.class), propertiesArgumentCaptor.capture(), anyDouble(), any(AnimationCallback.class)); assertEquals(3, propertiesArgumentCaptor.getValue().size()); }