public async void Put_ShouldAddNewTask() { ClearTasksFromDatabase(); var controller = new ProjectTasksController(context); var task = new ProjectTask { title = "Zadanie testowe", RoomId = 1, status = TaskStatus.UNESTIMATED.name }; var result = await controller.CreateProjectTask(task); var typeResult = Assert.IsType <CreatedAtActionResult>(result); Assert.NotNull(typeResult.StatusCode); Assert.Equal(201, typeResult.StatusCode.Value); Assert.Contains(context.ProjectTask, p => p.title.Equals("Zadanie testowe") && p.id.Equals(task.id)); }
public void EstimatingATask(ProjectTask task) { var controller = new ProjectTasksController(_context); "Given a new task" .x(() => task = new ProjectTask() { id = 2, status = TaskStatus.UNESTIMATED.name, title = "New task in BDD", RoomId = 1999, estimate = 0 }); "And adding the task in database" .x(async() => { await controller.CreateProjectTask(task); _context.Entry(task).State = EntityState.Detached; }); "When I select task to estimate" .x(async() => { await controller.UpdateTaskStatus(task.id, TaskStatus.VOTING.name); }); "And assign estimate" .x(async() => { await controller.PatchProjectTaskEstimate(task.id, 5); }); "Then task status is 'Estimated'" .x(() => { task = _context.ProjectTask.First(pt => pt.id == task.id); Assert.Equal(5, task.estimate); }); "And esitmate is equal to assigned one" .x(() => { Assert.Equal(TaskStatus.ESTIMATED.name, task.status); }); }