Example #1
0
        public void SetStatus(TestNodeState value, bool updateChildren, bool updateParent)
        {
            if (_state != value)
            {
                _state = value;

                if (updateChildren && Children != null)
                {
                    if (!(value == TestNodeState.Inactive || value == TestNodeState.Running))
                    {
                        throw new InvalidOperationException("Tried to set invalid state: " + value);
                    }

                    foreach (var child in Children.Cast <TestTreeNode>())
                    {
                        child.SetStatus(value, updateChildren: true, updateParent: false);
                    }
                }

                if (updateParent && Parent != null)
                {
                    if (!(value == TestNodeState.Success || value == TestNodeState.Failure ||
                          value == TestNodeState.Inconclusive))
                    {
                        throw new InvalidOperationException("Tried to set invalid state: " + value);
                    }

                    ((TestTreeNode)Parent).UpdateStateBasedOnChildren();
                }
                RaisePropertyChanged(() => State);
            }
        }
Example #2
0
        public void ConstructorTest()
        {
            NodeState _nodeState = new TestNodeState();

            Assert.IsNotNull(_nodeState.BrowseName);
            Assert.AreEqual <string>("browseName", _nodeState.BrowseName.Name);
            Assert.IsFalse(_nodeState.BrowseName.NamespaceIndexSpecified);
            Assert.AreEqual <NodeStateChangeMasks>(NodeStateChangeMasks.None, _nodeState.ChangeMasks);
        }