Esempio n. 1
0
        public async void SalvarSucesso()
        {
            //arrange
            var entidade = new GrupoArvore()
            {
                Arvores = new List <Arvore>()
            };

            var guid1 = Guid.NewGuid();
            var guid2 = Guid.NewGuid();

            entidade.Arvores.Add(new Arvore()
            {
                Codigo = guid1
            });
            entidade.Arvores.Add(new Arvore()
            {
                Codigo = guid2
            });

            var mocker = new AutoMocker();

            var grupoArvoreService = mocker.CreateInstance <GrupoArvoreService>();

            IList <Arvore> returned = new List <Arvore>();

            returned.Add(new Arvore()
            {
                Codigo = Guid.NewGuid()
            });
            returned.Add(new Arvore()
            {
                Codigo = Guid.NewGuid()
            });

            mocker.GetMock <IRepositorioBase <Arvore> >()
            .Setup(c => c.BuscarPorCondicao(c => c.GrupoArvoreCodigo == entidade.Codigo))
            .Returns(Task.FromResult(returned));

            mocker.GetMock <IRepositorioBase <Arvore> >()
            .Setup(c => c.BuscarPorCondicao(c => c.Codigo == guid1))
            .Returns(Task.FromResult(returned));

            mocker.GetMock <IRepositorioBase <Arvore> >()
            .Setup(c => c.BuscarPorCondicao(c => c.Codigo == guid2))
            .Returns(Task.FromResult(returned));

            //act
            grupoArvoreService.Salvar(entidade);

            //assert
            mocker.GetMock <IRepositorioBase <GrupoArvore> >().Verify(r => r.Salvar(entidade), Times.Once);
        }
Esempio n. 2
0
        public async void SalvarSucesso()
        {
            //arrange
            var entidade = new GrupoArvore();
            var mocker   = new AutoMocker();

            var grupoArvoreController = mocker.CreateInstance <GrupoArvoreController>();

            //act
            var resultado = await grupoArvoreController.Salvar(entidade);

            //assert
            Assert.IsType <OkResult>(resultado);
        }
        public void Salvar(GrupoArvore grupoArvore)
        {
            var codigosArvores = grupoArvore.Arvores.Select(c => c.Codigo).ToList();

            grupoArvore.Arvores = null;

            repositorioGrupoArvore.Salvar(grupoArvore);

            var arvoresExcluir = repositorioArvore.BuscarPorCondicao(c => c.GrupoArvoreCodigo == grupoArvore.Codigo).Result.ToList().Where(c => !codigosArvores.Contains(c.Codigo));

            foreach (var arvore in arvoresExcluir)
            {
                arvore.GrupoArvoreCodigo = null;
                repositorioArvore.Salvar(arvore);
            }
            foreach (var arvore in codigosArvores)
            {
                var entidadeArvoreBanco = repositorioArvore.BuscarPorCondicao(c => c.Codigo == arvore).Result.FirstOrDefault();
                entidadeArvoreBanco.GrupoArvoreCodigo = grupoArvore.Codigo;
                repositorioArvore.Salvar(entidadeArvoreBanco);
            }
        }