use of org.kie.workbench.common.stunner.core.client.canvas.command.SetConnectionTargetNodeCommand in project kie-wb-common by kiegroup.
the class CreateNodeActionTest method testAction.
@Test
@SuppressWarnings("unchecked")
public void testAction() {
when(canvasLayoutUtils.getNext(eq(canvasHandler), eq(element), eq(targetNode))).thenReturn(new Point2D(100d, 500d));
final MouseClickEvent event = mock(MouseClickEvent.class);
when(event.getX()).thenReturn(100d);
when(event.getY()).thenReturn(500d);
ToolboxAction<AbstractCanvasHandler> cascade = tested.onMouseClick(canvasHandler, NODE_UUID, event);
assertEquals(tested, cascade);
ArgumentCaptor<Command> commandArgumentCaptor = ArgumentCaptor.forClass(Command.class);
verify(sessionCommandManager, times(1)).execute(eq(canvasHandler), commandArgumentCaptor.capture());
DeferredCompositeCommand command = (DeferredCompositeCommand) commandArgumentCaptor.getValue();
DeferredCommand c0 = (DeferredCommand) command.getCommands().get(0);
DeferredCommand c1 = (DeferredCommand) command.getCommands().get(1);
DeferredCommand c2 = (DeferredCommand) command.getCommands().get(2);
DeferredCommand c3 = (DeferredCommand) command.getCommands().get(3);
AddNodeCommand addNodeCommand = (AddNodeCommand) c0.getCommand();
UpdateElementPositionCommand updateElementPositionCommand = (UpdateElementPositionCommand) c1.getCommand();
AddConnectorCommand addConnectorCommand = (AddConnectorCommand) c2.getCommand();
SetConnectionTargetNodeCommand setTargetNodeCommand = (SetConnectionTargetNodeCommand) c3.getCommand();
assertEquals(targetNode, addNodeCommand.getCandidate());
assertEquals("ss1", addNodeCommand.getShapeSetId());
assertEquals(edge, addConnectorCommand.getCandidate());
assertEquals(element, addConnectorCommand.getSource());
assertEquals("ss1", addConnectorCommand.getShapeSetId());
assertEquals(edge, setTargetNodeCommand.getEdge());
assertEquals(targetNode, setTargetNodeCommand.getNode());
assertEquals(targetNode, updateElementPositionCommand.getElement());
assertEquals(new Point2D(100d, 500d), updateElementPositionCommand.getLocation());
final ArgumentCaptor<CanvasSelectionEvent> eventArgumentCaptor = ArgumentCaptor.forClass(CanvasSelectionEvent.class);
verify(canvasElementSelectedEvent, times(1)).fire(eventArgumentCaptor.capture());
final CanvasSelectionEvent eCaptured = eventArgumentCaptor.getValue();
assertEquals(TARGET_NODE_UUID, eCaptured.getIdentifiers().iterator().next());
}
use of org.kie.workbench.common.stunner.core.client.canvas.command.SetConnectionTargetNodeCommand in project kie-wb-common by kiegroup.
the class ConnectionAcceptorControlImplTest method setup.
@Before
@SuppressWarnings("unchecked")
public void setup() {
when(canvasHandler.getDiagram()).thenReturn(diagram);
when(canvasHandler.getCanvas()).thenReturn(canvas);
when(canvasHandler.getAbstractCanvas()).thenReturn(canvas);
when(canvas.getView()).thenReturn(canvasView);
when(edge.getContent()).thenReturn(edgeContent);
when(edgeContent.getSourceConnection()).thenReturn(Optional.empty());
when(edgeContent.getTargetConnection()).thenReturn(Optional.empty());
doAnswer(invocationOnMock -> {
final Node node = (Node) invocationOnMock.getArguments()[0];
final Edge edge = (Edge) invocationOnMock.getArguments()[1];
final Connection connection = (Connection) invocationOnMock.getArguments()[2];
setConnectionSourceNodeCommand = new SetConnectionSourceNodeCommand(node, edge, connection);
return setConnectionSourceNodeCommand;
}).when(canvasCommandFactory).setSourceNode(any(Node.class), any(Edge.class), any(Connection.class));
doAnswer(invocationOnMock -> {
final Node node = (Node) invocationOnMock.getArguments()[0];
final Edge edge = (Edge) invocationOnMock.getArguments()[1];
final Connection connection = (Connection) invocationOnMock.getArguments()[2];
setConnectionTargetNodeCommand = new SetConnectionTargetNodeCommand(node, edge, connection);
return setConnectionTargetNodeCommand;
}).when(canvasCommandFactory).setTargetNode(any(Node.class), any(Edge.class), any(Connection.class));
when(commandManager.allow(eq(canvasHandler), eq(setConnectionSourceNodeCommand))).thenReturn(result);
when(commandManager.execute(eq(canvasHandler), eq(setConnectionSourceNodeCommand))).thenReturn(result);
when(commandManager.allow(eq(canvasHandler), eq(setConnectionTargetNodeCommand))).thenReturn(result);
when(commandManager.execute(eq(canvasHandler), eq(setConnectionTargetNodeCommand))).thenReturn(result);
this.tested = new ConnectionAcceptorControlImpl(canvasCommandFactory, cancelCanvasActionEvent);
this.tested.setCommandManagerProvider(() -> commandManager);
}
Aggregations