public void EdmOperationReferenceExpression()
        {
            var e = new EdmOperationReferenceExpression(new EdmAction("ns1", "qqq", EdmCoreModel.Instance.GetInt16(true)));

            Assert.AreEqual(EdmExpressionKind.OperationReference, e.ExpressionKind, "e.ExpressionKind");
            Assert.AreEqual("qqq", e.ReferencedOperation.Name, "e.ReferencedOperation");
            Assert.IsFalse(e.IsBad(), "e good");

            this.VerifyThrowsException(typeof(ArgumentNullException), () => new EdmOperationReferenceExpression(null));

            var ee = new MutableOperationReferenceExpression();

            Assert.IsNull(ee.ReferencedOperation, "e.ReferencedOperation");
            Assert.IsTrue(ee.IsBad(), "Expression is bad.");
            Assert.AreEqual(1, ee.Errors().Count(), "Expression has no errors");
        }
        public void EdmOperationReferenceExpression()
        {
            var e = new EdmOperationReferenceExpression(new EdmAction("ns1", "qqq", EdmCoreModel.Instance.GetInt16(true)));
            Assert.AreEqual(EdmExpressionKind.OperationReference, e.ExpressionKind, "e.ExpressionKind");
            Assert.AreEqual("qqq", e.ReferencedOperation.Name, "e.ReferencedOperation");
            Assert.IsFalse(e.IsBad(), "e good");

            this.VerifyThrowsException(typeof(ArgumentNullException), () => new EdmOperationReferenceExpression(null));

            var ee = new MutableOperationReferenceExpression();
            Assert.IsNull(ee.ReferencedOperation, "e.ReferencedOperation");
            Assert.IsTrue(ee.IsBad(), "Expression is bad.");
            Assert.AreEqual(1, ee.Errors().Count(), "Expression has no errors");
        }