Exemplo n.º 1
0
        public async Task Buscar_ComFiltro_OK()
        {
            //Retorna somente os filtrados
            var options = OptionsContext();

            var ids = new[] {
                Guid.NewGuid(),
                Guid.NewGuid(),
                Guid.NewGuid(),
            };

            using (var contexto = new ContextoBdAplicacao(options))
            {
                //Preparar
                var servicoEmTeste = new ServicoPersistenciaRestaurante(contexto, BuscaMapper());

                var entidadesExistentes = new[] {
                    new Restaurante {
                        Id            = ids[0],
                        DataAlteracao = DateTimeOffset.Now,
                        DataCriacao   = DateTimeOffset.Now,
                        Excluido      = false,
                        Nome          = "Restaurante Azul"
                    },
                    new Restaurante {
                        Id            = ids[1],
                        DataAlteracao = DateTimeOffset.Now,
                        DataCriacao   = DateTimeOffset.Now,
                        Excluido      = false,
                        Nome          = "Restaurante Azul e Amarelo"
                    },
                    new Restaurante {
                        Id            = ids[2],
                        DataAlteracao = DateTimeOffset.Now,
                        DataCriacao   = DateTimeOffset.Now,
                        Excluido      = false,
                        Nome          = "Restaurante Azul e Vermelho"
                    },
                };
                await contexto.AddRangeAsync(entidadesExistentes);

                await contexto.SaveChangesAsync();

                //Executar
                var resultado = await servicoEmTeste.Buscar("azul amarelo");

                //Verifica
                resultado.Should().BeEquivalentTo(new[] {
                    new RestaurantePersistenciaModel
                    {
                        Id   = ids[1],
                        Nome = "Restaurante Azul e Amarelo"
                    },
                });
            }
        }
Exemplo n.º 2
0
        public async Task Buscar_OrdenadosCorretamente_OK()
        {
            var options = OptionsContext();

            var ids = new[] {
                Guid.NewGuid(),
                Guid.NewGuid(),
                Guid.NewGuid(),
            };

            using (var contexto = new ContextoBdAplicacao(options))
            {
                //Preparar
                var servicoEmTeste = new ServicoPersistenciaRestaurante(contexto, BuscaMapper());

                var entidadesExistentes = new[] {
                    new Restaurante {
                        Id            = ids[0],
                        DataAlteracao = DateTimeOffset.Now,
                        DataCriacao   = DateTimeOffset.Now,
                        Excluido      = false,
                        Nome          = "restaurante azul"
                    },
                    new Restaurante {
                        Id            = ids[2],
                        DataAlteracao = DateTimeOffset.Now,
                        DataCriacao   = DateTimeOffset.Now,
                        Excluido      = false,
                        Nome          = "restaurante azul e vermelho"
                    },
                    new Restaurante {
                        Id            = ids[1],
                        DataAlteracao = DateTimeOffset.Now,
                        DataCriacao   = DateTimeOffset.Now,
                        Excluido      = false,
                        Nome          = "restaurante azul e amarelo"
                    },
                };
                await contexto.AddRangeAsync(entidadesExistentes);

                await contexto.SaveChangesAsync();

                //Executar
                var resultado = await servicoEmTeste.Buscar();

                //Verifica
                resultado.Should().BeEquivalentTo(new[] {
                    new RestaurantePersistenciaModel
                    {
                        Id   = ids[0],
                        Nome = "restaurante azul"
                    },
                    new RestaurantePersistenciaModel
                    {
                        Id   = ids[1],
                        Nome = "restaurante azul e amarelo"
                    },
                    new RestaurantePersistenciaModel
                    {
                        Id   = ids[2],
                        Nome = "restaurante azul e vermelho"
                    },
                }, opt => opt.WithStrictOrdering());
            }
        }