public void ChangingTooltipChangesUITooltip() { GraphView graphView = new GraphView(null, null, ""); var nodeModel = new SingleOutputNodeModel(); nodeModel.DefineNode(); var node = new CollapsibleInOutNode(); node.SetupBuildAndUpdate(nodeModel, null, graphView); var portModel = nodeModel.Ports.First(); Assert.IsNotNull(portModel as PortModel); var port = portModel.GetUI <Port>(graphView); Assert.IsNotNull(port); Assert.AreEqual("", port.tooltip); const string newTooltip = "New Tooltip"; (portModel as PortModel).SetTooltip(newTooltip); node.UpdateFromModel(); Assert.AreEqual(newTooltip, port.tooltip); }
public void ChangingPortNameChangesPortLabel() { GraphView graphView = new GraphView(null, null, ""); var nodeModel = new SingleOutputNodeModel(); nodeModel.DefineNode(); var node = new CollapsibleInOutNode(); node.SetupBuildAndUpdate(nodeModel, null, graphView); var portModel = nodeModel.Ports.First(); var port = portModel.GetUI <Port>(graphView); Assert.IsNotNull(port); var label = port.SafeQ <Label>(); Assert.AreEqual("", label.text); Assert.IsNotNull(portModel as IHasTitle); const string newTitle = "New Title"; (portModel as IHasTitle).Title = newTitle; node.UpdateFromModel(); Assert.AreEqual(newTitle, label.text); }
public IEnumerator PortConnectorAndCapHavePortColor() { var nodeModel = new SingleOutputNodeModel(); nodeModel.DefineNode(); var node = new CollapsibleInOutNode(); node.SetupBuildAndUpdate(nodeModel, m_CommandDispatcher, m_GraphView); m_GraphView.AddElement(node); yield return(null); var portModel = nodeModel.Ports.First(); var port = portModel.GetUI <Port>(m_GraphView); Assert.IsNotNull(port); var connector = port.SafeQ(PortConnectorPart.connectorUssName); var connectorCap = port.SafeQ(PortConnectorPart.connectorCapUssName); CustomStyleProperty <Color> portColorProperty = new CustomStyleProperty <Color>("--port-color"); Color portColor; Assert.IsTrue(port.customStyle.TryGetValue(portColorProperty, out portColor)); Assert.AreEqual(portColor, connector.resolvedStyle.borderBottomColor); Assert.AreEqual(portColor, connectorCap.resolvedStyle.backgroundColor); }
public void ConnectingPortUpdateClasses() { GraphView graphView = new GraphView(null, null, ""); var nodeModel = new FakeIONodeModel { InputCount = 1, OuputCount = 1 }; nodeModel.DefineNode(); var node = new CollapsibleInOutNode(); node.SetupBuildAndUpdate(nodeModel, null, graphView); var portModel = nodeModel.Ports.First() as FakePortModel; Assert.IsNotNull(portModel); var port = portModel.GetUI <Port>(graphView); Assert.IsNotNull(port); Assert.IsTrue(port.ClassListContains(Port.notConnectedModifierUssClassName)); Assert.IsFalse(port.ClassListContains(Port.connectedModifierUssClassName)); portModel.FakeIsConnected = true; port.UpdateFromModel(); Assert.IsFalse(port.ClassListContains(Port.notConnectedModifierUssClassName)); Assert.IsTrue(port.ClassListContains(Port.connectedModifierUssClassName)); }
public void CollapsibleNodeHasExpectedParts(Func <BasicModel.NodeModel> nodeCreator) { GraphView graphView = new GraphView(null, null, ""); var nodeModel = nodeCreator.Invoke(); nodeModel.DefineNode(); var node = new CollapsibleInOutNode(); node.SetupBuildAndUpdate(nodeModel, null, graphView); Assert.IsNotNull(node.SafeQ <VisualElement>(CollapsibleInOutNode.titleIconContainerPartName), "Title part was expected but not found"); Assert.IsNotNull(node.SafeQ <VisualElement>(Node.portContainerPartName), "Port Container part was expected but not found"); Assert.IsNotNull(node.SafeQ <VisualElement>(CollapsibleInOutNode.collapseButtonPartName), "Collapsible Button part was expected but not found"); if (nodeModel.GetType() == typeof(NodeModel)) { Assert.IsNull(node.SafeQ <Port>(), "No Port were expected but at least one was found"); } else if (nodeModel.GetType() == typeof(IONodeModel)) { var inputs = node.SafeQ <VisualElement>(InOutPortContainerPart.inputPortsUssName); var outputs = node.SafeQ <VisualElement>(InOutPortContainerPart.outputPortsUssName); Assert.IsNotNull(inputs, "Input Port Container part was expected but not found"); Assert.IsNotNull(outputs, "Output Port Container part was expected but not found"); Assert.IsNotNull(inputs.SafeQ <Port>(), "At least one Input Port was expected but none were found"); Assert.IsNotNull(outputs.SafeQ <Port>(), "At least one Output Port was expected but none were found"); } else { Assert.IsNotNull(node.SafeQ <Port>(), "At least one Port was expected but none were found"); } }