Search in sources :

Example 31 with DMNDiagram

use of org.kie.workbench.common.dmn.api.definition.model.DMNDiagram in project kie-wb-common by kiegroup.

the class DecisionNavigatorItemFactoryTest method testMakeRootWhenDMNDiagramElementIsNotDRG.

@Test
public void testMakeRootWhenDMNDiagramElementIsNotDRG() {
    final Diagram stunnerDiagram = mock(Diagram.class);
    final Graph graph = mock(Graph.class);
    final Node node = mock(Node.class);
    final Definition definition = mock(Definition.class);
    final String drdName = "DRD 1";
    final String dmnDiagramId = "0000";
    final DMNDiagramElement dmnDiagramElement = new DMNDiagramElement(new Id(dmnDiagramId), new Name(drdName));
    final DMNDiagramTuple diagramTuple = new DMNDiagramTuple(stunnerDiagram, dmnDiagramElement);
    when(stunnerDiagram.getGraph()).thenReturn(graph);
    when(graph.nodes()).thenReturn(singletonList(node));
    when(node.getContent()).thenReturn(definition);
    when(definition.getDefinition()).thenReturn(new DMNDiagram());
    when(baseItemFactory.getLabel(node)).thenReturn("diagram-name");
    final DecisionNavigatorItem decisionNavigatorItem = factory.makeRoot(diagramTuple);
    assertEquals(drdName, decisionNavigatorItem.getLabel());
    assertEquals(dmnDiagramId, decisionNavigatorItem.getUUID());
    assertEquals(ROOT, decisionNavigatorItem.getType());
    assertNull(decisionNavigatorItem.getParentUUID());
}
Also used : DMNDiagram(org.kie.workbench.common.dmn.api.definition.model.DMNDiagram) Graph(org.kie.workbench.common.stunner.core.graph.Graph) DecisionNavigatorItem(org.kie.workbench.common.dmn.client.docks.navigator.DecisionNavigatorItem) DMNDiagramTuple(org.kie.workbench.common.dmn.client.docks.navigator.drds.DMNDiagramTuple) Node(org.kie.workbench.common.stunner.core.graph.Node) Definition(org.kie.workbench.common.stunner.core.graph.content.definition.Definition) Id(org.kie.workbench.common.dmn.api.property.dmn.Id) DMNDiagramElement(org.kie.workbench.common.dmn.api.definition.model.DMNDiagramElement) Diagram(org.kie.workbench.common.stunner.core.diagram.Diagram) DMNDiagram(org.kie.workbench.common.dmn.api.definition.model.DMNDiagram) Name(org.kie.workbench.common.dmn.api.property.dmn.Name) Test(org.junit.Test)

Example 32 with DMNDiagram

use of org.kie.workbench.common.dmn.api.definition.model.DMNDiagram in project kie-wb-common by kiegroup.

the class DecisionNavigatorItemFactoryTest method testGetOnRemove.

@Test
public void testGetOnRemove() {
    final DMNDiagramElement drgDiagramElement = new DMNDiagramElement();
    final DMNDiagramElement drd1DiagramElement = new DMNDiagramElement();
    final DMNDiagramElement drd2DiagramElement = new DMNDiagramElement();
    final DMNDiagramElement drgElement = mock(DMNDiagramElement.class);
    final Graph drgGraph = mock(Graph.class);
    final Diagram drgDiagram = mock(Diagram.class);
    final DecisionNavigatorItem item = mock(DecisionNavigatorItem.class);
    final Node node = mock(Node.class);
    final Definition definition = mock(Definition.class);
    final DMNDiagram dmnDiagram = mock(DMNDiagram.class);
    final Definitions dmnDefinitions = mock(Definitions.class);
    final List<DMNDiagramElement> diagramElements = new ArrayList<>(asList(drgDiagramElement, drd1DiagramElement, drd2DiagramElement));
    final Iterable nodes = singletonList(node);
    when(dmnDiagramsSession.getDRGDiagramElement()).thenReturn(drgElement);
    when(dmnDiagramsSession.getDRGDiagram()).thenReturn(drgDiagram);
    when(drgDiagram.getGraph()).thenReturn(drgGraph);
    when(drgGraph.nodes()).thenReturn(nodes);
    when(node.getContent()).thenReturn(definition);
    when(definition.getDefinition()).thenReturn(dmnDiagram);
    when(dmnDiagram.getDefinitions()).thenReturn(dmnDefinitions);
    when(dmnDefinitions.getDiagramElements()).thenReturn(diagramElements);
    factory.getOnRemove(drd1DiagramElement).accept(item);
    verify(dmnDiagramsSession).remove(drd1DiagramElement);
    verify(selectedEvent).fire(diagramSelectedArgumentCaptor.capture());
    assertEquals(drgElement, diagramSelectedArgumentCaptor.getValue().getDiagramElement());
    assertEquals(2, diagramElements.size());
    assertTrue(diagramElements.contains(drgDiagramElement));
    assertFalse(diagramElements.contains(drd1DiagramElement));
    assertTrue(diagramElements.contains(drd2DiagramElement));
}
Also used : DMNDiagram(org.kie.workbench.common.dmn.api.definition.model.DMNDiagram) Graph(org.kie.workbench.common.stunner.core.graph.Graph) DecisionNavigatorItem(org.kie.workbench.common.dmn.client.docks.navigator.DecisionNavigatorItem) Node(org.kie.workbench.common.stunner.core.graph.Node) Definitions(org.kie.workbench.common.dmn.api.definition.model.Definitions) Definition(org.kie.workbench.common.stunner.core.graph.content.definition.Definition) ArrayList(java.util.ArrayList) DMNDiagramElement(org.kie.workbench.common.dmn.api.definition.model.DMNDiagramElement) Diagram(org.kie.workbench.common.stunner.core.diagram.Diagram) DMNDiagram(org.kie.workbench.common.dmn.api.definition.model.DMNDiagram) Test(org.junit.Test)

Example 33 with DMNDiagram

use of org.kie.workbench.common.dmn.api.definition.model.DMNDiagram in project kie-wb-common by kiegroup.

the class DecisionNavigatorItemFactoryTest method testMakeRootWhenDMNDiagramElementIsDRG.

@Test
public void testMakeRootWhenDMNDiagramElementIsDRG() {
    final Diagram stunnerDiagram = mock(Diagram.class);
    final Graph graph = mock(Graph.class);
    final Node node = mock(Node.class);
    final Definition definition = mock(Definition.class);
    final String dmnDiagramId = "0000";
    final String dmnModelName = "diagram-name";
    final DMNDiagramElement dmnDiagramElement = new DMNDiagramElement(new Id(dmnDiagramId), new Name("DRG"));
    final DMNDiagramTuple diagramTuple = new DMNDiagramTuple(stunnerDiagram, dmnDiagramElement);
    when(stunnerDiagram.getGraph()).thenReturn(graph);
    when(graph.nodes()).thenReturn(singletonList(node));
    when(node.getContent()).thenReturn(definition);
    when(definition.getDefinition()).thenReturn(new DMNDiagram());
    when(baseItemFactory.getLabel(node)).thenReturn(dmnModelName);
    final DecisionNavigatorItem decisionNavigatorItem = factory.makeRoot(diagramTuple);
    assertEquals(dmnModelName, decisionNavigatorItem.getLabel());
    assertEquals(dmnDiagramId, decisionNavigatorItem.getUUID());
    assertEquals(ROOT, decisionNavigatorItem.getType());
    assertNull(decisionNavigatorItem.getParentUUID());
}
Also used : DMNDiagram(org.kie.workbench.common.dmn.api.definition.model.DMNDiagram) Graph(org.kie.workbench.common.stunner.core.graph.Graph) DecisionNavigatorItem(org.kie.workbench.common.dmn.client.docks.navigator.DecisionNavigatorItem) DMNDiagramTuple(org.kie.workbench.common.dmn.client.docks.navigator.drds.DMNDiagramTuple) Node(org.kie.workbench.common.stunner.core.graph.Node) Definition(org.kie.workbench.common.stunner.core.graph.content.definition.Definition) Id(org.kie.workbench.common.dmn.api.property.dmn.Id) DMNDiagramElement(org.kie.workbench.common.dmn.api.definition.model.DMNDiagramElement) Diagram(org.kie.workbench.common.stunner.core.diagram.Diagram) DMNDiagram(org.kie.workbench.common.dmn.api.definition.model.DMNDiagram) Name(org.kie.workbench.common.dmn.api.property.dmn.Name) Test(org.junit.Test)

Aggregations

DMNDiagram (org.kie.workbench.common.dmn.api.definition.model.DMNDiagram)33 Node (org.kie.workbench.common.stunner.core.graph.Node)25 Definitions (org.kie.workbench.common.dmn.api.definition.model.Definitions)19 Diagram (org.kie.workbench.common.stunner.core.diagram.Diagram)17 Test (org.junit.Test)16 View (org.kie.workbench.common.stunner.core.graph.content.view.View)16 Edge (org.kie.workbench.common.stunner.core.graph.Edge)13 Graph (org.kie.workbench.common.stunner.core.graph.Graph)12 DMNModelInstrumentedBase (org.kie.workbench.common.dmn.api.definition.model.DMNModelInstrumentedBase)10 Decision (org.kie.workbench.common.dmn.api.definition.model.Decision)10 ArrayList (java.util.ArrayList)9 Definition (org.kie.workbench.common.stunner.core.graph.content.definition.Definition)8 HashMap (java.util.HashMap)7 Optional (java.util.Optional)7 DMNDefinitionSet (org.kie.workbench.common.dmn.api.DMNDefinitionSet)7 DMNDiagramElement (org.kie.workbench.common.dmn.api.definition.model.DMNDiagramElement)7 Name (org.kie.workbench.common.dmn.api.property.dmn.Name)7 Child (org.kie.workbench.common.stunner.core.graph.content.relationship.Child)7 ViewConnector (org.kie.workbench.common.stunner.core.graph.content.view.ViewConnector)7 EdgeImpl (org.kie.workbench.common.stunner.core.graph.impl.EdgeImpl)7