コード例 #1
0
        public void DeleteToDoTask_IfTaskExists_ReturnToDoTask_ElseReturnNotFoundResult(bool toDoTaskExists)
        {
            // Arrange
            var context = Substitute.For <IMyToDoListContext>();
            ToDoTasksController controller = new ToDoTasksController(context);
            var dbTask = new ToDoTask {
                ID = 1
            };
            var uiTask = new ToDoTask {
                ID = dbTask.ID
            };
            var dbSet = GetDbSet(new List <ToDoTask> {
                dbTask
            });

            context.ToDoTask.Returns(dbSet);
            if (toDoTaskExists)
            {
                context.ToDoTask.FindAsync(uiTask.ID).Returns(dbTask);
                //Act
                var result = controller.DeleteToDoTask(uiTask.ID).Result.Value;
                // Assert
                Assert.AreEqual(dbTask, result);
            }
            else
            {
                uiTask.ID = 2;
                // Act
                var result = (controller.DeleteToDoTask(uiTask.ID).Result.Result as StatusCodeResult)?.StatusCode;
                // Assert
                Assert.AreEqual(404, result);
            }
        }
コード例 #2
0
        public void DeleteToDoTask_Return_CopyOfToDoTaskDTOafterDeletion()
        {
            // ARRANGE
            mockToDoTaskService.Setup(s => s.Delete(1)).Returns(new ToDoTaskDTO
            {
                Id = 1
            });

            // ACT
            var result = toDoTasksController.DeleteToDoTask(1) as OkNegotiatedContentResult <ToDoTaskDTO>;

            // ASSERT
            Assert.IsNotNull(result);
            Assert.IsInstanceOfType(result, typeof(OkNegotiatedContentResult <ToDoTaskDTO>));
            Assert.AreEqual(1, result.Content.Id);
        }