コード例 #1
0
        public async Task CancelTaskAsync_ReturnsEmptyObject()
        {
            // Arrange
            var tesTask = new TesTask()
            {
                Id = "testTaskId", State = TesState.QUEUEDEnum
            };
            var repositoryItem = new RepositoryItem <TesTask> {
                ETag = Guid.NewGuid().ToString(), Value = tesTask
            };

            var mockRepo = new Mock <IRepository <TesTask> >();

            mockRepo.Setup(repo => repo.GetItemAsync(tesTask.Id)).ReturnsAsync(repositoryItem);
            var controller = new TaskServiceApiController(mockRepo.Object, new NullLogger <TaskServiceApiController>());

            // Act
            var result = await controller.CancelTask(tesTask.Id) as ObjectResult;

            // Assert
            Assert.IsNotNull(result);
            Assert.AreEqual(200, result.StatusCode);
            Assert.AreEqual(TesState.CANCELEDEnum, repositoryItem.Value.State);
            mockRepo.Verify(x => x.UpdateItemAsync(tesTask.Id, repositoryItem));
        }
コード例 #2
0
        public async Task CancelTaskAsync_ReturnsBadRequest_ForInvalidId()
        {
            // Arrange
            var mockRepo  = new Mock <IRepository <TesTask> >();
            var tesTaskId = "IdDoesNotExist";

            mockRepo.Setup(repo => repo.GetItemAsync(tesTaskId)).ReturnsAsync((RepositoryItem <TesTask>)null);
            var controller = new TaskServiceApiController(mockRepo.Object, new NullLogger <TaskServiceApiController>());

            // Act
            var result = await controller.CancelTask(tesTaskId) as BadRequestObjectResult;

            // Assert
            Assert.IsNotNull(result);
            Assert.AreEqual(400, result.StatusCode);
        }