public async void GivenABoardTaskWhenOkThenSaveChangedCalled() { // Arrange SetupCommandHandler(new List<BoardEntity> { new BoardEntity { Slug = "board-name", Columns = new List<BoardColumnEntity> { new BoardColumnEntity {Slug = "board-column-name"} } } }); var command = new CreateBoardTaskCommand { BoardSlug = "board-name", BoardTask = new BoardTask { BoardColumnSlug = "board-column-name", Name = "test task" } }; mockMappingService.Setup(x => x.Map<BoardTaskEntity>(It.IsAny<BoardTask>())) .Returns(new BoardTaskEntity()); // Act await handler.HandleAsync(command); // Assert mockDataContext.Verify(x => x.SaveChangesAsync(), Times.Once); }
public async void GivenABoardTaskWhenBoardColumnDoesNotExistThenThrowBoardColumnNotFoundException() { // Arrange SetupCommandHandler(new List <BoardEntity> { new BoardEntity { Slug = "board-name" } }); var command = new CreateBoardTaskCommand { BoardSlug = "board-name", BoardTask = new BoardTask { Name = "test task" } }; mockMappingService.Setup(x => x.Map <BoardColumnEntity>(It.IsAny <BoardColumn>())) .Returns(new BoardColumnEntity { Name = "test", Slug = "test" }); mockSlugService.Setup(x => x.Slugify(It.IsAny <string>())).Returns("test"); // Act & Assert await Assert.ThrowsAsync <BoardColumnNotFoundException>(() => handler.HandleAsync(command)); }
public async void GivenABoardTaskWhenOkThenBoardColumnAddedToBoardTask() { // Arrange var boardColumnEntity = new BoardColumnEntity { Slug = "board-column-name" }; SetupCommandHandler(new List <BoardEntity> { new BoardEntity { Slug = "board-name", Columns = new List <BoardColumnEntity> { boardColumnEntity } } }); var command = new CreateBoardTaskCommand { BoardSlug = "board-name", BoardTask = new BoardTask { BoardColumnSlug = "board-column-name", Name = "test task" } }; mockMappingService.Setup(x => x.Map <BoardTaskEntity>(It.IsAny <BoardTask>())) .Returns(new BoardTaskEntity()); // Act await handler.HandleAsync(command); // Assert Assert.Equal(boardColumnEntity, mockDataContext.Object.Set <BoardTaskEntity>().Local.First().BoardColumnEntity); }
public async void GivenABoardTaskWhenOkThenSaveChangedCalled() { // Arrange SetupCommandHandler(new List <BoardEntity> { new BoardEntity { Slug = "board-name", Columns = new List <BoardColumnEntity> { new BoardColumnEntity { Slug = "board-column-name" } } } }); var command = new CreateBoardTaskCommand { BoardSlug = "board-name", BoardTask = new BoardTask { BoardColumnSlug = "board-column-name", Name = "test task" } }; mockMappingService.Setup(x => x.Map <BoardTaskEntity>(It.IsAny <BoardTask>())) .Returns(new BoardTaskEntity()); // Act await handler.HandleAsync(command); // Assert mockDataContext.Verify(x => x.SaveChangesAsync(), Times.Once); }
public async void GivenABoardTaskWhenOkThenMappingBackToDto() { // Arrange SetupCommandHandler(new List <BoardEntity> { new BoardEntity { Slug = "board-name", Columns = new List <BoardColumnEntity> { new BoardColumnEntity { Slug = "board-column-name" } } } }); var command = new CreateBoardTaskCommand { BoardSlug = "board-name", BoardTask = new BoardTask { BoardColumnSlug = "board-column-name", Name = "test task" } }; mockMappingService.Setup(x => x.Map <BoardTaskEntity>(It.IsAny <BoardTask>())) .Returns(new BoardTaskEntity()); // Act await handler.Handle(command, CancellationToken.None); // Assert mockMappingService.Verify(x => x.Map <BoardTask>(It.IsAny <BoardTaskEntity>()), Times.Once); }
public async void GivenABoardTaskWhenOkThenBoardColumnAddedToBoardTask() { // Arrange var boardColumnEntity = new BoardColumnEntity {Slug = "board-column-name"}; SetupCommandHandler(new List<BoardEntity> { new BoardEntity { Slug = "board-name", Columns = new List<BoardColumnEntity> { boardColumnEntity } } }); var command = new CreateBoardTaskCommand { BoardSlug = "board-name", BoardTask = new BoardTask { BoardColumnSlug = "board-column-name", Name = "test task" } }; mockMappingService.Setup(x => x.Map<BoardTaskEntity>(It.IsAny<BoardTask>())) .Returns(new BoardTaskEntity()); // Act await handler.HandleAsync(command); // Assert Assert.Equal(boardColumnEntity, mockDataContext.Object.Set<BoardTaskEntity>().Local.First().BoardColumnEntity); }
public async void GivenABoardTaskWhenBoardColumnDoesNotExistThenThrowBoardColumnNotFoundException() { // Arrange SetupCommandHandler(new List<BoardEntity> { new BoardEntity { Slug = "board-name" } }); var command = new CreateBoardTaskCommand { BoardSlug = "board-name", BoardTask = new BoardTask { Name = "test task" } }; mockMappingService.Setup(x => x.Map<BoardColumnEntity>(It.IsAny<BoardColumn>())) .Returns(new BoardColumnEntity { Name = "test", Slug = "test" }); mockSlugService.Setup(x => x.Slugify(It.IsAny<string>())).Returns("test"); // Act & Assert await Assert.ThrowsAsync<BoardColumnNotFoundException>(() => handler.HandleAsync(command)); }