Search in sources :

Example 26 with DecisionNavigatorItem

use of org.kie.workbench.common.dmn.client.docks.navigator.DecisionNavigatorItem 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 27 with DecisionNavigatorItem

use of org.kie.workbench.common.dmn.client.docks.navigator.DecisionNavigatorItem 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 28 with DecisionNavigatorItem

use of org.kie.workbench.common.dmn.client.docks.navigator.DecisionNavigatorItem 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)

Example 29 with DecisionNavigatorItem

use of org.kie.workbench.common.dmn.client.docks.navigator.DecisionNavigatorItem in project kie-wb-common by kiegroup.

the class DecisionNavigatorBaseItemFactoryTest method testMakeNestedItemsWhenItemHasNestedItems.

@Test
public void testMakeNestedItemsWhenItemHasNestedItems() {
    final DecisionNavigatorItem item = mock(DecisionNavigatorItem.class);
    when(nestedItemFactory.hasNestedElement(node)).thenReturn(true);
    when(nestedItemFactory.makeItem(node)).thenReturn(item);
    final List<DecisionNavigatorItem> nestedItems = factory.makeNestedItems(node);
    assertEquals(singletonList(item), nestedItems);
}
Also used : DecisionNavigatorItem(org.kie.workbench.common.dmn.client.docks.navigator.DecisionNavigatorItem) Test(org.junit.Test)

Aggregations

DecisionNavigatorItem (org.kie.workbench.common.dmn.client.docks.navigator.DecisionNavigatorItem)29 Test (org.junit.Test)27 HTMLElement (org.jboss.errai.common.client.dom.HTMLElement)13 Command (org.uberfire.mvp.Command)5 Element (elemental2.dom.Element)4 HTMLDivElement (elemental2.dom.HTMLDivElement)4 HTMLInputElement (elemental2.dom.HTMLInputElement)4 HTMLUListElement (elemental2.dom.HTMLUListElement)4 DMNDiagram (org.kie.workbench.common.dmn.api.definition.model.DMNDiagram)4 DMNDiagramElement (org.kie.workbench.common.dmn.api.definition.model.DMNDiagramElement)4 Definition (org.kie.workbench.common.stunner.core.graph.content.definition.Definition)4 Name (org.kie.workbench.common.dmn.api.property.dmn.Name)3 Diagram (org.kie.workbench.common.stunner.core.diagram.Diagram)3 Graph (org.kie.workbench.common.stunner.core.graph.Graph)3 Node (org.kie.workbench.common.stunner.core.graph.Node)3 ClickEvent (com.google.gwt.event.dom.client.ClickEvent)2 Text (elemental2.dom.Text)2 ArrayList (java.util.ArrayList)2 TreeSet (java.util.TreeSet)2 Id (org.kie.workbench.common.dmn.api.property.dmn.Id)2