### Question:
CaseManagementSvgSubprocessShapeDef extends BaseDimensionedShapeDef implements CaseManagementSvgShapeDef<ReusableSubprocess> { @Override public SVGShapeView<?> newViewInstance(final CaseManagementSVGViewFactory factory, final ReusableSubprocess bean) { return newViewInstance(Optional.empty(), Optional.empty(), VIEW_RESOURCES.getResource(factory, bean)); }  @Override SizeHandler<ReusableSubprocess, SVGShapeView> newSizeHandler(); @Override FontHandler<ReusableSubprocess, SVGShapeView> newFontHandler(); @Override @SuppressWarnings("unchecked") BiConsumer<ReusableSubprocess, SVGShapeView> viewHandler(); @Override SVGShapeView<?> newViewInstance(final CaseManagementSVGViewFactory factory, final ReusableSubprocess bean); @Override Glyph getGlyph(final Class<? extends ReusableSubprocess> type,
                          final String defId); static final SVGShapeViewResources<ReusableSubprocess, CaseManagementSVGViewFactory> VIEW_RESOURCES; static final Map<Class<? extends ReusableSubprocess>, Glyph> GLYPHS; }### Answer:
@Test public void testNewViewInstance() throws Exception { tested.newViewInstance(factory, new CaseReusableSubprocess()); verify(factory, times(1)).subcase(); tested.newViewInstance(factory, new ProcessReusableSubprocess()); verify(factory, times(1)).subprocess(); }