public async Task Create_Ok() { // Arrange var model = new { Name = "Name" }; _mediator.Setup(x => x.Send( It.Is <CreateRequest <object, object> >(y => y.Model == model), It.IsAny <CancellationToken>())) .ReturnsAsync((model, new object[] { new {} })); var cache = new Mock <IMemoryCache>(); cache.Setup(x => x.CreateEntry(It.IsAny <object[]>())).Returns(Mock.Of <ICacheEntry>()); var controller = new FakeClassController(_mediator.Object, cache.Object, Mock.Of <IOptions <CacheOptions> >()); // Act var create = await controller.Create(model); // Assert var result = Assert.IsType <OkObjectResult>(create); _mediator.Verify(x => x.Publish( It.IsAny <CreateNotification <object> >(), It.IsAny <CancellationToken>()), Times.Exactly(2)); Assert.Equal(model, result.Value); }
public async Task Create_Bad_Request_Object() { // Arrange var model = new { Name = "Name" }; _mediator.Setup(x => x.Send( It.Is <CreateRequest <object, object> >(y => y.Model == model), It.IsAny <CancellationToken>())) .ThrowsAsync(new Exception()); var controller = new FakeClassController(_mediator.Object, Mock.Of <IMemoryCache>(), Mock.Of <IOptions <CacheOptions> >()); // Act var create = await controller.Create(model); // Assert var result = Assert.IsType <BadRequestObjectResult>(create); _mediator.Verify(x => x.Publish( It.IsAny <CreateNotification <object> >(), It.IsAny <CancellationToken>()), Times.Exactly(2)); Assert.Equal(model, result.Value); }