public async Task InvokeAsync_ArgumentNullNext() { // arrange var middleware = new ServiceProviderActivityMiddleware(Mock.Of <IServiceProvider>()); // act ArgumentNullException ex = await Capture <ArgumentNullException>( () => middleware.InvokeAsync(CreateContext(null), null)); // assert ex.Should().NotBeNull(); }
public async Task InvokeAsync_NotWrapped_Continues() { // arrange var activity = new TestActivity(); var serviceProvider = new Mock <IServiceProvider>(); DispatchMiddlewareContext context = CreateContext(activity); var middleware = new ServiceProviderActivityMiddleware(serviceProvider.Object); // act await middleware.InvokeAsync(context, () => Task.CompletedTask); // assert TaskActivity actual = context.GetProperty <TaskActivity>(); actual.Should().NotBeNull(); actual.Should().Be(activity); serviceProvider.Verify(m => m.GetService(It.IsAny <Type>()), Times.Never); }
public async Task InvokeAsync_Wrapped_SetsActivity() { // arrange var serviceProvider = new Mock <IServiceProvider>(); serviceProvider.Setup(m => m.GetService(typeof(TestActivity))).Returns(new TestActivity()); var wrapper = new WrapperActivity(new TaskActivityDescriptor(typeof(TestActivity))); DispatchMiddlewareContext context = CreateContext(wrapper); var middleware = new ServiceProviderActivityMiddleware(serviceProvider.Object); // act await middleware.InvokeAsync(context, () => Task.CompletedTask); // assert TaskActivity activity = context.GetProperty <TaskActivity>(); activity.Should().NotBeNull(); activity.Should().Be(wrapper.InnerActivity); serviceProvider.Verify(m => m.GetService(typeof(TestActivity)), Times.Once); }