示例#1
0
        public void Bug706146_ValidationErrorsInitialization()
        {
            TestProvider_Scenarios ctxt = new TestProvider_Scenarios(TestURIs.TestProvider_Scenarios);

            InvokeOperation invoke = ctxt.ThrowOnlineException(TestHelperMethods.DefaultOperationAction, null);

            // verify that all operation properties can be accessed before completion
            Assert.AreEqual(0, invoke.ValidationErrors.Count());
            Assert.IsNull(invoke.Value);

            EnqueueConditional(() => invoke.IsComplete);
            EnqueueCallback(delegate
            {
                Assert.IsNull(invoke.Value);
                Assert.IsNotNull(invoke.Error);
            });
            EnqueueTestComplete();
        }
示例#2
0
        public void InvokeOperation_Exceptions()
        {
            TestProvider_Scenarios provider = new TestProvider_Scenarios(TestURIs.TestProvider_Scenarios);

            InvokeOperation invoke = provider.ThrowOnlineException(TestHelperMethods.DefaultOperationAction, null);

            EnqueueConditional(() => invoke.IsComplete);
            EnqueueCallback(delegate
            {
                Assert.IsNull(invoke.Value);
                Assert.IsNotNull(invoke.Error);
                Assert.IsInstanceOfType(invoke.Error, typeof(DomainOperationException));
                DomainOperationException dpe = invoke.Error as DomainOperationException;
                Assert.AreEqual(string.Format(Resource.DomainContext_InvokeOperationFailed, "ThrowOnlineException", "Invalid operation."), dpe.Message);
                Assert.AreEqual(OperationErrorStatus.NotSupported, dpe.Status);
                Assert.AreEqual(400, dpe.ErrorCode);
            });
            EnqueueTestComplete();
        }