public void Setup()
 {
     //Inicializa o banco, apagando e recriando-o
     Database.SetInitializer(new DropCreateDatabaseAlways<FuncionarioContext>());
     //Seta um registro padrão pra ser usado nos testes
     _contextForTest = new FuncionarioContext();
     _contextForTest.Dependentes.AddRange(ObjectMother.GetDependentes());
     _contextForTest.SaveChanges();
 }
        public void DeleteFuncionarioRepositoryTest()
        {
            //Arrange
            IFuncionarioRepository repository = new FuncionarioRepository();

            //Action
            var deletedFuncionario = repository.Delete(1);

            //Assert
            var contextForTest = new FuncionarioContext();
            var persistedFuncionario = contextForTest.Funcionarios.Find(1);
            Assert.IsNull(persistedFuncionario);

            //Assert - utilizando o Framework FluentAssertions
            //Apenas um exemplo didático (NÃO CAI NA PROVA)
              //  persistedFuncionario.Should().BeNull();
        }
        public void Setup()
        {
            //Inicializa o banco, apagando e recriando-o
            Database.SetInitializer(new DropCreateDatabaseAlways<FuncionarioContext>());
            //Seta um registro padrão pra ser usado nos testes
            _contextForTest = new FuncionarioContext();

            var funcionario = ObjectMother.GetFuncionario();

            var funcionarioPedro = ObjectMother.GetFuncionario();
            funcionarioPedro.Nome = "Pedro";

            var funcionarioHelder = ObjectMother.GetFuncionario();
            funcionarioHelder.Nome = "Helder";

            var funcionarioRafaela = ObjectMother.GetFuncionario();
            funcionarioRafaela.Nome = "Rafaela";

            var funcionarioHeuler = ObjectMother.GetFuncionario();
            funcionarioHeuler.Nome = "Heuler";

            _contextForTest.Funcionarios.Add(funcionario);

            _contextForTest.Funcionarios.Add(funcionarioPedro);

            _contextForTest.Funcionarios.Add(funcionarioHelder);

            _contextForTest.Funcionarios.Add(funcionarioRafaela);

            _contextForTest.Funcionarios.Add(funcionarioHeuler);

            _contextForTest.SaveChanges();
        }