public void CreateInstance_ValidArguments_ReturnFaultTreeIllustrationPointBaseProperties()
        {
            // Setup
            var illustrationPoint     = new TestSubMechanismIllustrationPoint();
            var illustrationPointNode = new IllustrationPointNode(illustrationPoint);
            var context = new IllustrationPointContext <SubMechanismIllustrationPoint>(illustrationPoint, illustrationPointNode,
                                                                                       "Wind direction", "Closing situation");

            // Call
            IObjectProperties objectProperties = info.CreateInstance(context);

            // Assert
            Assert.IsInstanceOf <SubMechanismIllustrationPointProperties>(objectProperties);
            Assert.AreSame(illustrationPoint, objectProperties.Data);
        }
Exemplo n.º 2
0
        public void Constructor_ValidParameters_ExpectedProperties()
        {
            // Setup
            var          node = new IllustrationPointNode(new TestFaultTreeIllustrationPoint());
            const string windDirectionName = "wdn";
            const string closingSituation  = "cs";

            // Call
            var context = new IllustrationPointContext <IllustrationPointBase>((FaultTreeIllustrationPoint)node.Data, node,
                                                                               windDirectionName, closingSituation);

            // Assert
            Assert.AreSame(node.Data, context.IllustrationPoint);
            Assert.AreSame(node, context.IllustrationPointNode);
            Assert.AreEqual(windDirectionName, context.WindDirectionName);
            Assert.AreEqual(closingSituation, context.ClosingSituation);
        }
        private void IllustrationPointsFaultTreeControlOnSelectionChanged(object sender, EventArgs eventArgs)
        {
            var selection = illustrationPointsFaultTreeControl.Selection as IllustrationPointNode;
            TopLevelFaultTreeIllustrationPoint topLevelFaultTreeIllustrationPoint = illustrationPointsFaultTreeControl.Data;
            GeneralResult <TopLevelFaultTreeIllustrationPoint> generalResult      = GetGeneralResultFunc();

            if (selection == null || topLevelFaultTreeIllustrationPoint == null || generalResult == null)
            {
                return;
            }

            string closingSituation = generalResult.TopLevelIllustrationPoints.HasMultipleUniqueValues(p => p.ClosingSituation)
                                          ? topLevelFaultTreeIllustrationPoint.ClosingSituation
                                          : string.Empty;

            switch (selection.Data)
            {
            case FaultTreeIllustrationPoint faultTreeIllustrationPoint:
                Selection = new IllustrationPointContext <FaultTreeIllustrationPoint>(
                    faultTreeIllustrationPoint,
                    selection,
                    topLevelFaultTreeIllustrationPoint.WindDirection.Name,
                    closingSituation);
                break;

            case SubMechanismIllustrationPoint subMechanismIllustrationPoint:
                Selection = new IllustrationPointContext <SubMechanismIllustrationPoint>(
                    subMechanismIllustrationPoint,
                    selection,
                    topLevelFaultTreeIllustrationPoint.WindDirection.Name,
                    closingSituation);
                break;
            }

            OnSelectionChanged();
        }