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); }
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); }