public async Task OnChangeSetItemProcessingWithWrongReturnType()
        {
            testTraceListener.Clear();
            var api               = new WrongReturnTypeApi(serviceProvider);
            var testClass         = new ConventionBasedChangeSetItemFilter(typeof(WrongReturnTypeApi));
            var context           = new SubmitContext(api, new ChangeSet());
            var cancellationToken = CancellationToken.None;
            await testClass.OnChangeSetItemProcessingAsync(context, dataModificationItem, cancellationToken);

            testTraceListener.Messages.Should().Contain("does not return");
            api.InvocationCount.Should().Be(0);
        }
        public async Task AuthorizeAsyncWithWrongApiType()
        {
            testTraceListener.Clear();
            var api               = new WrongReturnTypeApi(serviceProvider);
            var testClass         = new ConventionBasedChangeSetItemAuthorizer(typeof(NoPermissionApi));
            var context           = new SubmitContext(api, new ChangeSet());
            var cancellationToken = CancellationToken.None;
            var result            = await testClass.AuthorizeAsync(context, dataModificationItem, cancellationToken);

            result.Should().BeTrue("AuthorizeAsync should return true, because the api type is incorrect.");
            testTraceListener.Messages.Should().Contain("is of the incorrect type");
            api.InvocationCount.Should().Be(0);
        }
        public async Task AuthorizeAsyncWithWrongReturnType()
        {
            testTraceListener.Clear();
            var api               = new WrongReturnTypeApi(serviceProvider);
            var testClass         = new ConventionBasedChangeSetItemAuthorizer(typeof(WrongReturnTypeApi));
            var context           = new SubmitContext(api, new ChangeSet());
            var cancellationToken = CancellationToken.None;
            var result            = await testClass.AuthorizeAsync(context, dataModificationItem, cancellationToken);

            result.Should().BeTrue("AuthorizeAsync should return true, because CanInsertObject returns an int.");
            testTraceListener.Messages.Should().Contain("does not return a boolean value");
            api.InvocationCount.Should().Be(0);
        }
Example #4
0
        public async Task OnOperationExecutingWithWrongReturnType()
        {
            var api       = new WrongReturnTypeApi(serviceProvider);
            var testClass = new ConventionBasedOperationFilter(typeof(WrongReturnTypeApi));
            var context   = new OperationContext(
                api,
                s => new object(),
                "Test",
                true,
                null);
            var cancellationToken = CancellationToken.None;
            await testClass.OnOperationExecutingAsync(context, cancellationToken);

            testTraceListener.Messages.Should().Contain("does not return");
            api.InvocationCount.Should().Be(0);
        }