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

            InvokeOperation invoke = provider.MethodRequiresAuthentication(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, "MethodRequiresAuthentication", "Access to operation 'MethodRequiresAuthentication' was denied."), dpe.Message);
                Assert.AreEqual(OperationErrorStatus.Unauthorized, dpe.Status);
                Assert.AreEqual(401, dpe.ErrorCode);
            });
            EnqueueTestComplete();
        }