Exemplo n.º 1
0
        public async Task <IActionResult> Add([FromBody][Required] AddTodoTaskRequest request)
        {
            var input = new AddTodoInput(request.Name, request.Description, request.DueDate);
            await _useCase.Execute(input);

            return(_presenter.ViewModel);
        }
Exemplo n.º 2
0
        public async Task ValidData_ShouldReturnTask(string name, string description, string dueDateSource)
        {
            DateTime?dueDate = null;

            if (dueDateSource != null)
            {
                dueDate = DateTime.Parse(dueDateSource);
            }

            var input = new AddTodoInput(name, description, dueDate);

            AddTodoOutput          output           = null;
            Action <AddTodoOutput> onReceivedOutput = o => {
                output = o;
            };

            _outputMock.Setup(o => o.Default(It.IsAny <AddTodoOutput>())).Callback(onReceivedOutput);

            await _useCase.Execute(input);

            Assert.NotNull(output);
            Assert.NotEqual(Guid.Empty, output.TaskId);
            Assert.Equal(name, output.TaskName);
            Assert.Equal(description, output.TaskDescription);
            Assert.Equal(dueDate, output.TaskDueDate);

            Assert.Single(_context.TodoTasks);
            Assert.Equal(_context.TodoTasks.First().Id, output.TaskId);
            Assert.Equal(_context.TodoTasks.First().Name, output.TaskName);
            Assert.Equal(_context.TodoTasks.First().Description, output.TaskDescription);
            Assert.Equal(_context.TodoTasks.First().DueDate, output.TaskDueDate);
        }
Exemplo n.º 3
0
        public async Task Execute(AddTodoInput input)
        {
            if (input is null)
            {
                throw new Exception();
            }

            var task = _entityFactory.NewTodoTask(input.TaskName, input.TaskDescription, input.TaskDueDate);

            await _repository.Add(task);

            _output.Default(new AddTodoOutput(task));
        }