public async Task DeveCriarUmAnuncio()
        {
            //Arrange
            var persistenciaDoAnuncioMock = new Mock <IAnuncioRepository>();

            persistenciaDoAnuncioMock.Setup(x => x.Criar(ModelsMock.AnuncioMock()));
            var criarAnuncio = new CriarAnuncio(persistenciaDoAnuncioMock.Object);

            //Action
            await criarAnuncio.Executar(ModelsMock.AnuncioMock());

            //Assert
            Assert.Empty(criarAnuncio.Erros);
        }
        public async Task <IActionResult> Criar(AnuncioViewModel anuncioViewModel)
        {
            if (!ModelState.IsValid)
            {
                await PreencherViewBags();

                return(View(anuncioViewModel));
            }

            var anuncio = AnuncioFactory.MapearAnuncio(anuncioViewModel);

            await _criarAnuncio.Executar(anuncio);

            return(RedirectToAction("Index"));
        }