예제 #1
0
        public void DevePerguntarTítuloDeTarefaECriar()
        {
            using var entradaDoConsole = new StringReader("Título da minha tarefa");
            using var saídaDoConsole   = new StringWriter();
            Console.SetIn(entradaDoConsole);
            Console.SetOut(saídaDoConsole);

            _serviçoTarefa
            .CriaTarefa("Título da minha tarefa")
            .Returns(new Tarefa(34, "Título da minha tarefa"));

            _console.CriarTarefa();

            saídaDoConsole.ToString().Should().Be("Qual o título da tarefa: " + "Tarefa criada com Id: 34" + Environment.NewLine);
        }
예제 #2
0
        public void CriarTarefa_DeveLançarExceção_QuandoTítuloForInválido()
        {
            var fonteDeDados = Substitute.For <IFonteDadosTarefas>();
            var serviço      = new ServiçoTarefa(fonteDeDados);

            Assert.Throws <TítuloInválidoExceção>(() => serviço.CriaTarefa(""));
        }
예제 #3
0
        public void CriarTarefa_DeveCriarTarefaNaFonteDeDados()
        {
            var fonteDeDados = Substitute.For <IFonteDadosTarefas>();
            var serviço      = new ServiçoTarefa(fonteDeDados);

            serviço.CriaTarefa("título");

            fonteDeDados.Received().CriarTarefa(Arg.Is <Tarefa>(tarefa => tarefa.Título.Equals("título") && !tarefa.EstáConcluída()));
        }
예제 #4
0
        public void CriarTarefa_DeveRetornarTarefaCriada()
        {
            var fonteDeDados = Substitute.For <IFonteDadosTarefas>();
            var serviço      = new ServiçoTarefa(fonteDeDados);

            fonteDeDados
            .CriarTarefa(Arg.Is <Tarefa>(tarefa => tarefa.Título.Equals("título")))
            .Returns(new Tarefa(1, "título"));

            var tarefa = serviço.CriaTarefa("título");

            tarefa.Should().BeEquivalentTo(new Tarefa(1, "título"));
        }
예제 #5
0
        public void CriarTarefa()
        {
            Write("Qual o título da tarefa: ");
            var título = ReadLine();

            try
            {
                var tarefa = _serviçoTarefa.CriaTarefa(título);
                WriteLine($"Tarefa criada com Id: {tarefa.Id}");
            }
            catch (TítuloInválidoExceção e)
            {
                WriteLine("Título inválido para tarefa");
            }
        }
예제 #6
0
 public ActionResult <Object> CriarTarefa(TarefaDTO tarefaParaCriar)
 {
     try
     {
         var tarefa = _serviçoTarefa.CriaTarefa(tarefaParaCriar.titulo);
         return(new ActionResult <Object>(new
         {
             id = tarefa.Id,
             titulo = tarefa.Título,
             concluida = tarefa.EstáConcluída()
         }));
     }
     catch (TítuloInválidoExceção e)
     {
         return(UnprocessableEntity(tarefaParaCriar));
     }
 }