public async Task Should_continue_pipeline_when_id_is_not_present() { Guid existingId = Guid.NewGuid(); Mock <IItemService> itemService = new Mock <IItemService>(); itemService .Setup(x => x.GetItemAsync(It.IsAny <Guid>())) .ReturnsAsync(() => null); ItemExistsAttribute.ItemExistsFilterImpl filter = new ItemExistsAttribute.ItemExistsFilterImpl(itemService.Object); ActionExecutingContext actionExecutedContext = new ActionExecutingContext( new ActionContext(new DefaultHttpContext(), new RouteData(), new ActionDescriptor()), new List <IFilterMetadata>(), new Dictionary <string, object> { { "id", existingId } }, new object()); Mock <ActionExecutionDelegate> nextCallback = new Mock <ActionExecutionDelegate>(); await Task.Run(() => filter.OnActionExecutionAsync(actionExecutedContext, nextCallback.Object).ShouldThrow <NotFoundException>()); //nextCallback.Verify(executionDelegate => executionDelegate(), Times.Once); }
public async Task should_continue_pipeline_when_id_is_present() { var id = Guid.NewGuid(); var itemService = new Mock <IItemService>(); itemService .Setup(_ => _.GetItemAsync(It.IsAny <GetItemRequest>())) .ReturnsAsync(new ItemResponse { Id = id }); var filter = new ItemExistsAttribute.ItemExistsFilterImpl(itemService.Object); var actionExecutedContext = new ActionExecutingContext( new ActionContext(new DefaultHttpContext(), new RouteData(), new ActionDescriptor()), new List <IFilterMetadata>(), new Dictionary <string, object> { { "id", id } }, new object()); var nextCallback = new Mock <ActionExecutionDelegate>(); await filter.OnActionExecutionAsync(actionExecutedContext, nextCallback.Object); nextCallback.Verify(executionDelegate => executionDelegate(), Times.Once); }
public async Task should_continue_pipeline_when_id_is_not_present() { var existingId = Guid.NewGuid(); var mediator = new Mock <IMediator>(); mediator .Setup(command => command.Send(It.IsAny <GetItemCommand>(), It.IsAny <CancellationToken>())) .ReturnsAsync(() => null); var filter = new ItemExistsAttribute.ItemExistsFilterImpl(mediator.Object); var actionExecutedContext = new ActionExecutingContext( new ActionContext(new DefaultHttpContext(), new RouteData(), new ActionDescriptor()), new List <IFilterMetadata>(), new Dictionary <string, object> { { "id", existingId } }, new object()); var nextCallback = new Mock <ActionExecutionDelegate>(); await filter.OnActionExecutionAsync(actionExecutedContext, nextCallback.Object); nextCallback.Verify(executionDelegate => executionDelegate(), Times.Never); }