示例#1
0
        /// <summary>
        /// Clones this instance.
        /// </summary>
        /// <returns>
        /// The clone.
        /// </returns>
        public override ExpressionObjectBase Clone()
        {
            var clone = new SkipItemsExpression();
            CopyMembers(clone);

            return clone;
        }
        public void Clone_Returns_SkipItemsExpression()
        {
            // Arrange.
            var expression = new SkipItemsExpression();

            // Act.
            var clone = expression.Clone() as SkipItemsExpression;

            // Assert.
            Assert.IsNotNull(clone);
            Assert.AreEqual(ExpressionNodeType.SkipItems, clone.Type);
        }
        public void WhenFirstInputConnectorIsConnected_OutputConnectorElementTypeIsUpdated()
        {
            // Arrange.
            var expression = new SkipItemsExpression();
            var source = new ConstantExpression { ConnectorOut = { ElementType = NodeDataType.String } };

            // Act.
            expression.Connector1In.ConnectedTo = source.ConnectorOut;

            // Assert.
            Assert.AreEqual(NodeDataType.String, expression.ConnectorOut.ElementType);

            // Act.
            expression.Connector1In.ConnectedTo = null;

            // Assert.
            Assert.AreEqual(NodeDataType.Object, expression.ConnectorOut.ElementType);
        }