public void Clone_Returns_OneInTwoOutExpression()
        {
            // Arrange.
            const string ExpressionName = "Test Expression";
            const string FunctionName = "Test Function";
            const double Left = 100.0;
            const double Top = 200.0;
            const double Width = 300.0;
            const double Height = 400.0;

            var expression = new OneInTwoOutExpression(ExpressionNodeType.SetChecklistData)
                                 {
                                     ExpressionName = ExpressionName,
                                     FunctionName = FunctionName,
                                     Left = Left,
                                     Top = Top,
                                     Width = Width,
                                     Height = Height
                                 };

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

            // Assert.
            Assert.IsNotNull(clone);
            Assert.AreEqual(ExpressionNodeType.SetChecklistData, clone.Type);
            Assert.AreEqual(ExpressionName, clone.ExpressionName);
            Assert.AreEqual(FunctionName, clone.FunctionName);
            Assert.AreEqual(Left, clone.Left);
            Assert.AreEqual(Top, clone.Top);
            Assert.AreEqual(Width, clone.Width);
            Assert.AreEqual(Height, clone.Height);
        }