public void Equals()
        {
            NegationExpression expr1 = new NegationExpression(new ConstantExpression(1));
            NegationExpression expr2 = new NegationExpression(new ConstantExpression(2));
            NegationExpression expr3 = new NegationExpression(new ConstantExpression(1));

            Assert.IsTrue(expr1.Equals(expr3));
            Assert.IsTrue(expr3.Equals(expr1));
            Assert.AreEqual(expr1.GetHashCode(), expr3.GetHashCode());

            Assert.IsFalse(expr1.Equals(null));
            Assert.IsFalse(expr1.Equals("foo"));
            Assert.IsFalse(expr1.Equals(expr2));
            Assert.IsFalse(expr2.Equals(expr1));
        }