@Before public void setup() { proxy = new SessionPreviewCanvasHandlerProxy(wrapped, definitionManager, graphUtils, shapeManager, textPropertyProviderFactory); }
@Test public void checkAddChildWithIndexDelegatesToWrapped() { final Element parent = mock(Element.class); final Element child = mock(Element.class); final int index = 0; proxy.addChild(parent, child, index); verify(wrapped).addChild(eq(parent), eq(child), eq(index)); }
@Test public void checkAddRegistrationListenerDelegatesToWrapped() { final CanvasElementListener instance = mock(CanvasElementListener.class); proxy.addRegistrationListener(instance); verify(wrapped).addRegistrationListener(eq(instance)); }
@Test public void checkGetCanvasHandlerWhenUnsatisfied() { checkCanvasHandler(true, (c) -> { assertTrue(c instanceof SessionPreviewCanvasHandlerProxy); assertEquals(((SessionPreviewCanvasHandlerProxy) c).getWrapped(), defaultCanvasHandlerImplementation); }); }
@Test public void checkBuildGraphIndexExecutesCallback() { final Command loadCallback = mock(Command.class); proxy.buildGraphIndex(loadCallback); verify(loadCallback).execute(); }
@Test public void checkClearRegistrationListenersDelegatesToWrapped() { proxy.clearRegistrationListeners(); verify(wrapped).clearRegistrationListeners(); }
@Test public void checkDeregisterDelegatesToWrapped() { final Element candidate = mock(Element.class); proxy.deregister(candidate); verify(wrapped).deregister(eq(candidate)); final Shape shape = mock(Shape.class); final boolean fireEvents = true; proxy.deregister(shape, candidate, fireEvents); verify(wrapped).deregister(eq(shape), eq(candidate), eq(fireEvents)); proxy.deregister(candidate, fireEvents); verify(wrapped).deregister(eq(candidate), eq(fireEvents)); }
@Test public void checkClearCanvasDelegatesToWrapped() { proxy.clearCanvas(); verify(wrapped).clearCanvas(); }
@Test public void checkClearDelegatesToWrapped() { proxy.clear(); verify(wrapped).clear(); }
@Test public void checkApplyElementMutationDelegatesToWrapped() { final Shape shape = mock(Shape.class); final Element candidate = mock(Element.class); final boolean applyPosition = true; final boolean applyProperties = false; final MutationContext mutationContext = mock(MutationContext.class); proxy.applyElementMutation(shape, candidate, applyPosition, applyProperties, mutationContext); verify(wrapped).applyElementMutation(eq(shape), eq(candidate), eq(applyPosition), eq(applyProperties), eq(mutationContext)); proxy.applyElementMutation(candidate, mutationContext); verify(wrapped).applyElementMutation(eq(candidate), eq(mutationContext)); proxy.applyElementMutation(candidate, applyPosition, applyProperties, mutationContext); verify(wrapped).applyElementMutation(eq(candidate), eq(applyPosition), eq(applyProperties), eq(mutationContext)); }
@Test public void checkGetCanvasHandlerWhenSatisfied() { checkCanvasHandler(false, (c) -> { assertTrue(c instanceof SessionPreviewCanvasHandlerProxy); assertEquals(((SessionPreviewCanvasHandlerProxy) c).getWrapped(), customCanvasHandlerImplementation); }); }
private void destroyInstances() { canvases.destroy(canvas); canvases.destroyAll(); canvasPanels.destroyAll(); canvasHandlers.destroy(canvasHandler.getWrapped()); canvasHandlers.destroyAll(); zoomControls.destroy(zoomControl); zoomControls.destroyAll(); selectionControls.destroy(selectionControl); selectionControls.destroyAll(); canvasCommandFactories.destroy(commandFactory); canvasCommandFactories.destroyAll(); canvasCommandManagers.destroy(commandManager); canvasCommandManagers.destroyAll(); canvas = null; canvasPanel = null; canvasHandler = null; zoomControl = null; selectionControl = null; commandFactory = null; commandManager = null; diagramPreview = null; isCommandAllowed = null; }
@SuppressWarnings("unchecked") private void onOpen(final Diagram diagram) { final Annotation qualifier = definitionUtils.getQualifier(diagram.getMetadata().getDefinitionSetId()); final BaseCanvasHandler delegate = InstanceUtils.lookup(canvasHandlers, qualifier); canvas = InstanceUtils.lookup(canvases, qualifier); canvasPanel = InstanceUtils.lookup(canvasPanels, qualifier); canvasHandler = new SessionPreviewCanvasHandlerProxy(delegate, definitionUtils.getDefinitionManager(), graphUtils, shapeManager, textPropertyProviderFactory); zoomControl = InstanceUtils.lookup(zoomControls, qualifier); selectionControl = InstanceUtils.lookup(selectionControls, qualifier); commandFactory = InstanceUtils.lookup(canvasCommandFactories, qualifier); commandManager = InstanceUtils.lookup(canvasCommandManagers, qualifier); }
@Test public void checkAddChildDelegatesToWrapped() { final Element parent = mock(Element.class); final Element child = mock(Element.class); proxy.addChild(parent, child); verify(wrapped).addChild(eq(parent), eq(child)); }