Exemplo n.º 1
0
        public void Retorna_Colecao_Determinada_Get()
        {
            Aluno joao   = new Aluno(12, "João", new DateTime(2000, 01, 25), "", EnumeradorSexo.Feminino);
            Aluno luis   = new Aluno(13, "Luis", new DateTime(2008, 01, 14), "", EnumeradorSexo.Feminino);
            Aluno abraao = new Aluno(14, "Abrãao", new DateTime(1990, 01, 01), "", EnumeradorSexo.Masculino);
            Aluno luca   = new Aluno(15, "Luca Benetti", new DateTime(1990, 02, 01), "", EnumeradorSexo.Masculino);

            RepositorioAluno repositorio = new RepositorioAluno();

            repositorio.Add(joao);
            repositorio.Add(luis);
            repositorio.Add(abraao);
            repositorio.Add(luca);

            var colecaoDeAlunosFeminino = repositorio.Get(a => a.Sexo == EnumeradorSexo.Feminino);

            var colecaoDeAlunosMasculino = repositorio.Get(a => a.Sexo == EnumeradorSexo.Masculino);

            Assert.IsTrue(colecaoDeAlunosFeminino.Contains(joao));
            Assert.IsTrue(colecaoDeAlunosFeminino.Contains(luis));
            Assert.IsFalse(colecaoDeAlunosMasculino.Contains(joao));
            Assert.IsFalse(colecaoDeAlunosMasculino.Contains(luis));

            Assert.IsTrue(colecaoDeAlunosMasculino.Contains(abraao));
            Assert.IsTrue(colecaoDeAlunosMasculino.Contains(luca));
            Assert.IsFalse(colecaoDeAlunosFeminino.Contains(abraao));
            Assert.IsFalse(colecaoDeAlunosFeminino.Contains(luca));

            repositorio.Remove(repositorio.GetByMatricula(12));
            repositorio.Remove(repositorio.GetByMatricula(13));
            repositorio.Remove(repositorio.GetByMatricula(14));
            repositorio.Remove(repositorio.GetByMatricula(15));
        }
Exemplo n.º 2
0
        public void Adicionar_Aluno_Existente_No_Repositorio()
        {
            var aluno = new Aluno(12345698, "Nathan Lacerda", "",
                                  new DateTime(1999, 7, 5), EnumeradorDeSexo.Masculino);

            var repositorioAluno = new RepositorioAluno();

            repositorioAluno.Add(aluno);

            var excecao = Assert.Throws <Exception>(() => repositorioAluno.Add(aluno));

            Assert.Equal("Aluno ou CPF já registrado!", excecao.Message);
        }
Exemplo n.º 3
0
        public void Falha_Ao_Inserir_Mesmo_CPF()
        {
            RepositorioAluno repositorio = new RepositorioAluno();

            repositorio.Add(new Aluno(5, "A", new DateTime(25 / 01 / 2000), "412.637.180-00", EnumeradorSexo.Masculino));

            Aluno aluno = new Aluno(6, "B", new DateTime(20 / 01 / 2000), "412.637.180-00", EnumeradorSexo.Feminino);

            var ex = Assert.ThrowsException <InconsistenciaException>(() => repositorio.Add(aluno));

            Assert.AreEqual("Matrícula ou CPF já cadastrado!", ex.Message);

            repositorio.Remove(repositorio.GetByMatricula(5));
        }
Exemplo n.º 4
0
        private void AdicioneAluno()
        {
            var cpf = txtCPF.Text;

            if (!ValideCPF(cpf))
            {
                MostreErroNaTelaDoUsuario("CPF Inválido!", "Cadastro de aluno");
                return;
            }

            var aluno = CrieObjetoAluno(txtMatricula.Text, txtNome.Text, cpf, mtbNascimento.Text, cboSexo.SelectedItem);

            try
            {
                _repoAluno.Add(aluno);
            }
            catch (Exception excecao)
            {
                if (excecao.Message == "Aluno ou CPF já registrado!")
                {
                    MostreErroNaTelaDoUsuario("Aluno ou CPF já registrado!", "Cadastro de aluno");
                    return;
                }
            }

            AtualizeDataGridView();
            LimpeFormulario();

            MostreInformacaoNaTelaDoUsuario("Aluno adicionado com sucesso!", "Cadastro de aluno");
            txtMatricula.Focus();
        }
Exemplo n.º 5
0
        public void Pega_Aluno_Por_Parte_Nome_Do_Repositorio()
        {
            var aluno = new Aluno(201800774, "Nathan Lacerda Pereira da Silva Nunes", "48975163075",
                                  new DateTime(1999, 7, 5), EnumeradorDeSexo.Masculino);

            var repositorioAluno = new RepositorioAluno();

            repositorioAluno.Add(aluno);
            repositorioAluno.Add(new Aluno(201800773, "Nathan Lacerda Pereira da Silva Nunes", "640.102.150-03",
                                           new DateTime(1999, 7, 5), EnumeradorDeSexo.Masculino));
            repositorioAluno.Add(new Aluno(201800772, "Nathan Lacerda Pereira Nunes", "071.395.200-89",
                                           new DateTime(1999, 7, 5), EnumeradorDeSexo.Masculino));

            var alunos = repositorioAluno.Get(alunoDoRepositorio => alunoDoRepositorio.Nome.Contains("Silva"));

            Assert.True(alunos.ToArray().Length == 2);
        }
Exemplo n.º 6
0
        public void Retorna_ColecaoDeAlunos_Pelo_Nome()
        {
            RepositorioAluno repositorio = new RepositorioAluno();

            Aluno joao   = new Aluno(18, "João", new DateTime(2000, 01, 25), "", EnumeradorSexo.Masculino);
            Aluno abraao = new Aluno(19, "Abrãao", new DateTime(2000, 01, 25), "", EnumeradorSexo.Masculino);
            Aluno luca   = new Aluno(20, "Luca Benetti", new DateTime(2000, 01, 25), "", EnumeradorSexo.Masculino);

            repositorio.Add(joao);
            repositorio.Add(abraao);
            repositorio.Add(luca);

            //Benetti
            var colecaoDeAlunosContendo_Benetti = repositorio.GetByContendoNoNome("Benetti");

            Assert.IsFalse(colecaoDeAlunosContendo_Benetti.Contains(joao));
            Assert.IsFalse(colecaoDeAlunosContendo_Benetti.Contains(abraao));
            Assert.IsTrue(colecaoDeAlunosContendo_Benetti.Contains(luca));

            //Joao, João, joao, jOaO
            var colecaoDeAlunosContendo_Joao = repositorio.GetByContendoNoNome("Joao");
            var colecaoDeAlunosContendo_João = repositorio.GetByContendoNoNome("João");
            var colecaoDeAlunosContendo_joao = repositorio.GetByContendoNoNome("joao");
            var colecaoDeAlunosContendo_jOaO = repositorio.GetByContendoNoNome("jOaO");


            Assert.IsTrue(colecaoDeAlunosContendo_Joao.Contains(joao) &&
                          colecaoDeAlunosContendo_João.Contains(joao) &&
                          colecaoDeAlunosContendo_joao.Contains(joao) &&
                          colecaoDeAlunosContendo_jOaO.Contains(joao));

            Assert.IsFalse(colecaoDeAlunosContendo_Joao.Contains(abraao) &&
                           colecaoDeAlunosContendo_João.Contains(abraao) &&
                           colecaoDeAlunosContendo_joao.Contains(abraao) &&
                           colecaoDeAlunosContendo_jOaO.Contains(abraao));

            Assert.IsFalse(colecaoDeAlunosContendo_Joao.Contains(luca) &&
                           colecaoDeAlunosContendo_João.Contains(luca) &&
                           colecaoDeAlunosContendo_joao.Contains(luca) &&
                           colecaoDeAlunosContendo_jOaO.Contains(luca));

            repositorio.Remove(repositorio.GetByMatricula(18));
            repositorio.Remove(repositorio.GetByMatricula(19));
            repositorio.Remove(repositorio.GetByMatricula(20));
        }
Exemplo n.º 7
0
        public void Retorna_Aluno_Pela_Matricula()
        {
            RepositorioAluno repositorio = new RepositorioAluno();

            Aluno aluno = new Aluno(16, "A", new DateTime(2000, 01, 25), "", EnumeradorSexo.Masculino);

            repositorio.Add(aluno);
            repositorio.Add(new Aluno(17, "A", new DateTime(2000, 01, 25), "", EnumeradorSexo.Masculino));

            var alunoMatricula1 = repositorio.GetByMatricula(16);
            var alunoMatricula2 = repositorio.GetByMatricula(17);

            Assert.AreEqual(aluno, alunoMatricula1);
            Assert.AreNotEqual(aluno, alunoMatricula2);

            repositorio.Remove(repositorio.GetByMatricula(16));
            repositorio.Remove(repositorio.GetByMatricula(17));
        }
Exemplo n.º 8
0
        public void Retornar_Aluno_Do_Repositorio()
        {
            var aluno = new Aluno(201800774, "Nathan Lacerda", "48975163075",
                                  new DateTime(1999, 7, 5), EnumeradorDeSexo.Masculino);

            var alunoAux = new Aluno(201800773, "Raimunda Maria", "640.102.150-03",
                                     new DateTime(1938, 7, 5), EnumeradorDeSexo.Masculino);

            var repositorioAluno = new RepositorioAluno();

            repositorioAluno.Add(aluno);
            repositorioAluno.Add(alunoAux);

            var alunos = repositorioAluno.Get(alunoDoRepositorio =>
                                              alunoDoRepositorio.Matricula == 201800774 || alunoDoRepositorio.Nome.Contains("Maria"));

            Assert.True(alunos.Contains(aluno) && alunos.Contains(alunoAux));
        }
Exemplo n.º 9
0
        private void btnAdicionar_Click(object sender, EventArgs e)
        {
            int            matricula;
            string         nome       = txtNome.Text;
            DateTime       nascimento = ConverteParaData(txtNascimento.Text);
            EnumeradorSexo sexo       = (EnumeradorSexo)cboSexo.SelectedItem;
            string         CPF        = ConverteParaCPF(txtCPF.Text);

            if (StringVazia(txtMatricula.Text))
            {
                MessageBox.Show("Matrícula não inserida");
                txtMatricula.Focus();
                return;
            }
            matricula = Convert.ToInt32(txtMatricula.Text);

            if (StringVazia(nome))
            {
                MessageBox.Show("Nome não inserido");
                txtNome.Focus();
                return;
            }

            if (!ValidaData(nascimento))
            {
                MessageBox.Show("Data inserida incorretamente ou data futura");
                txtNascimento.Focus();
                return;
            }

            if (!(ValidaCPF(CPF)))
            {
                MessageBox.Show("CPF não é válido");
                txtCPF.Focus();
                return;
            }

            if (MatriculaJaCadastrada(matricula))
            {
                MessageBox.Show("Matrícula já cadastrada, altere para inserir novo aluno");
                txtMatricula.Focus();
                return;
            }


            if (CPFJaCadastrado(CPF))
            {
                MessageBox.Show("CPF já cadastrado");
                txtMatricula.Focus();
                return;
            }

            repositorio.Add(new Aluno(matricula, nome, nascimento, CPF, sexo));

            bsListaAlunos.DataSource = repositorio.GetAll().OrderBy(a => a.Matricula);
            AtualizaDGV();
        }
Exemplo n.º 10
0
        public void Adicionar_Aluno_No_Repositorio()
        {
            var aluno = new Aluno(201800774, "Nathan Lacerda", "48975163075",
                                  new DateTime(1999, 7, 5), EnumeradorDeSexo.Masculino);
            var repositorioAluno = new RepositorioAluno();

            repositorioAluno.Add(aluno);

            Assert.True(repositorioAluno.GetByMatricula(201800774).Equals(aluno));
        }
Exemplo n.º 11
0
        public void Pega_Aluno_Inexistente_Por_Parte_Nome_Do_Repositorio()
        {
            var aluno = new Aluno(201800774, "Nathan Lacerda Pereira da Silva Nunes", "48975163075",
                                  new DateTime(1999, 7, 5), EnumeradorDeSexo.Masculino);

            var repositorioAluno = new RepositorioAluno();

            repositorioAluno.Add(aluno);
            repositorioAluno.Add(new Aluno(201800773, "Nathan Lacerda Pereira da Silva Nunes", "640.102.150-03",
                                           new DateTime(1999, 7, 5), EnumeradorDeSexo.Masculino));
            repositorioAluno.Add(new Aluno(201800772, "Nathan Lacerda Pereira Nunes", "071.395.200-89",
                                           new DateTime(1999, 7, 5), EnumeradorDeSexo.Masculino));

            var alunos = repositorioAluno.Get(alunoDoRepositorio => alunoDoRepositorio.Nome.Contains("Silva"));

            var excecao = Assert.Throws <Exception>(() => repositorioAluno.GetByContendoNoNome("José"));

            Assert.Equal("Não existe nenhum aluno com esse nome!", excecao.Message);
        }
Exemplo n.º 12
0
        public void Retornar_Todos_Os_Alunos_Do_Repositorio()
        {
            var aluno = new Aluno(201800774, "Nathan Lacerda", "48975163075",
                                  new DateTime(1999, 7, 5), EnumeradorDeSexo.Masculino);

            var alunoAux = new Aluno(201800773, "Raimunda Maria", "640.102.150-03",
                                     new DateTime(1938, 7, 5), EnumeradorDeSexo.Masculino);

            var repositorioAluno = new RepositorioAluno();

            repositorioAluno.Add(aluno);
            repositorioAluno.Add(alunoAux);

            var colecaoDeAlunos = new List <Aluno> {
                aluno, alunoAux
            };

            Assert.Equal(colecaoDeAlunos.OrderBy(aln => aln.Matricula).ToList(), repositorioAluno.GetAll().ToList());
        }
Exemplo n.º 13
0
        public void Atualizar_Aluno_Com_Cpf_Existente_No_Repositorio()
        {
            var aluno = new Aluno(201800774, "Nathan Lacerda", "48975163075",
                                  new DateTime(1999, 7, 5), EnumeradorDeSexo.Masculino);

            var alunoAux = new Aluno(201800773, "Raimunda Maria", "640.102.150-03",
                                     new DateTime(1938, 7, 5), EnumeradorDeSexo.Masculino);

            var repositorioAluno = new RepositorioAluno();

            repositorioAluno.Add(aluno);

            repositorioAluno.Add(alunoAux);
            alunoAux.CPF = "48975163075";

            var excecao = Assert.Throws <Exception>(() => repositorioAluno.Update(alunoAux));

            Assert.Equal("CPF já registrado!", excecao.Message);
        }
Exemplo n.º 14
0
 private void PersisteDados()
 {
     if (buttonAdicionarOuModificar.Text.Equals("Adicionar"))
     {
         _repositorio.Add(_aluno);
     }
     else if (buttonAdicionarOuModificar.Text.Equals("Modificar"))
     {
         _repositorio.Update(_aluno);
     }
 }
Exemplo n.º 15
0
        public void Pega_Aluno_Por_Matricula_Do_Repositorio()
        {
            var aluno = new Aluno(201800774, "Nathan Lacerda", "48975163075",
                                  new DateTime(1999, 7, 5), EnumeradorDeSexo.Masculino);

            var repositorioAluno = new RepositorioAluno();

            repositorioAluno.Add(aluno);

            Assert.Equal(repositorioAluno.GetByMatricula(201800774), aluno);
        }
Exemplo n.º 16
0
        public void Adiciona_Mais_De_Um_CPF_Vazio_A_Colecao_De_Alunos()
        {
            RepositorioAluno repositorio = new RepositorioAluno();

            Aluno aluno = new Aluno(2, "A", new DateTime(2000, 01, 25), "", EnumeradorSexo.Masculino);

            repositorio.Add(aluno);

            Assert.IsTrue(repositorio.GetAll().Contains(aluno));

            aluno = new Aluno(3, "B", new DateTime(2000, 01, 20), "", EnumeradorSexo.Feminino);

            repositorio.Add(aluno);

            var segundoAlunoComCPFVazioAdicionado = repositorio.GetAll().Contains(aluno);

            Assert.IsTrue(segundoAlunoComCPFVazioAdicionado);

            repositorio.Remove(repositorio.GetByMatricula(2));
            repositorio.Remove(repositorio.GetByMatricula(3));
        }
Exemplo n.º 17
0
        public void Retorna_ColecaoDeAlunos_De_Alunos()
        {
            RepositorioAluno repositorio = new RepositorioAluno();

            Aluno joao   = new Aluno(9, "João", new DateTime(25 / 01 / 2000), "", EnumeradorSexo.Masculino);
            Aluno abraao = new Aluno(10, "Abrãao", new DateTime(25 / 01 / 2000), "", EnumeradorSexo.Masculino);
            Aluno luca   = new Aluno(11, "Luca Benetti", new DateTime(25 / 01 / 2000), "", EnumeradorSexo.Masculino);

            repositorio.Add(joao);
            repositorio.Add(abraao);
            repositorio.Add(luca);

            var colecaoDeAlunos = repositorio.GetAll();

            Assert.IsTrue(colecaoDeAlunos.Contains(joao));
            Assert.IsTrue(colecaoDeAlunos.Contains(abraao));
            Assert.IsTrue(colecaoDeAlunos.Contains(luca));

            repositorio.Remove(repositorio.GetByMatricula(9));
            repositorio.Remove(repositorio.GetByMatricula(10));
            repositorio.Remove(repositorio.GetByMatricula(11));
        }
Exemplo n.º 18
0
        public void Pega_Aluno_Por_Matricula_Inexistente_Do_Repositorio_Vazio()
        {
            var aluno = new Aluno(201800774, "Nathan Lacerda", "48975163075",
                                  new DateTime(1999, 7, 5), EnumeradorDeSexo.Masculino);

            var repositorioAluno = new RepositorioAluno();

            repositorioAluno.Add(aluno);

            var excecao = Assert.Throws <Exception>(() => repositorioAluno.GetByMatricula(5551));

            Assert.Equal("Não existe nenhum aluno com essa matrícula!", excecao.Message);
        }
Exemplo n.º 19
0
        public void DadoQueAdicioneiUmAlunoDeMatriculaNomeCpfSexoNascimentoNoRepositorio(int matricula, string nome, string cpf, string sexo, string data)
        {
            Aluno alunoTeste = new Aluno()
            {
                Matricula  = matricula,
                Nome       = nome,
                Cpf        = cpf,
                Sexo       = (sexo.Equals("Masculino") || sexo.Equals("masculino")) ? EnumeradorSexo.Masculino : EnumeradorSexo.Feminino,
                Nascimento = Convert.ToDateTime(data)
            };

            _aluno = alunoTeste;
            _repositorioAluno.Add(_aluno);
        }
Exemplo n.º 20
0
        public void Adiciona_Aluno_A_ColecaoDeAlunos()
        {
            RepositorioAluno repositorio = new RepositorioAluno();

            Aluno aluno = new Aluno(1, "A", new DateTime(25 / 01 / 2000), "", EnumeradorSexo.Masculino);

            repositorio.Add(aluno);

            var colecaoContemAluno = repositorio.GetAll().Contains(aluno);

            Assert.IsTrue(colecaoContemAluno);

            repositorio.Remove(repositorio.GetByMatricula(1));
        }
Exemplo n.º 21
0
        public void Atualizar_Aluno_Inexistente_No_Repositorio()
        {
            var aluno = new Aluno(201800775, "Nathan Lacerda", "48975163075",
                                  new DateTime(1999, 7, 5), EnumeradorDeSexo.Masculino);

            var alunoAux = new Aluno(201800773, "Raimunda Maria", "48975163075",
                                     new DateTime(1938, 7, 5), EnumeradorDeSexo.Masculino);

            var repositorioAluno = new RepositorioAluno();

            repositorioAluno.Add(aluno);

            var excecao = Assert.Throws <Exception>(() => repositorioAluno.Update(alunoAux));

            Assert.Equal("Aluno não encontrado!", excecao.Message);
        }
Exemplo n.º 22
0
        public void Remover_Aluno_Do_Repositorio()
        {
            var aluno = new Aluno(999999999, "Nathan Lacerda", "",
                                  new DateTime(1999, 7, 5), EnumeradorDeSexo.Masculino);

            var repositorioAluno = new RepositorioAluno();

            repositorioAluno.Add(aluno);

            Assert.NotNull(repositorioAluno.GetByMatricula(aluno.Matricula));

            repositorioAluno.Remove(aluno);
            var excecao = Assert.Throws <Exception>(() => repositorioAluno.GetByMatricula(aluno.Matricula));

            Assert.Equal("Não existe nenhum aluno com essa matrícula!", excecao.Message);
        }
Exemplo n.º 23
0
        public void Remove_Aluno_Da_ColecaoDeAlunos()
        {
            RepositorioAluno repositorio = new RepositorioAluno();

            Aluno aluno = new Aluno(7, "A", new DateTime(25 / 01 / 2000), "", EnumeradorSexo.Masculino);

            repositorio.Add(aluno);
            var colecaoContemAluno = repositorio.GetAll().Contains(aluno);

            Assert.IsTrue(colecaoContemAluno);

            repositorio.Remove(aluno);
            colecaoContemAluno = repositorio.GetAll().Contains(aluno);

            Assert.IsFalse(colecaoContemAluno);
        }
Exemplo n.º 24
0
        public void Atualiza_Aluno_Na_ColecaoDeAlunos()
        {
            RepositorioAluno repositorio = new RepositorioAluno();

            Aluno aluno = new Aluno(8, "A", new DateTime(25 / 01 / 2000), "", EnumeradorSexo.Masculino);

            repositorio.Add(aluno);

            aluno = new Aluno(8, "B", new DateTime(20 / 01 / 2000), "412.637.180-00", EnumeradorSexo.Feminino);

            repositorio.Update(aluno);

            Aluno alunoAtualizado = repositorio.GetByMatricula(8);

            Assert.AreEqual(alunoAtualizado.Nome, aluno.Nome);
            Assert.AreEqual(alunoAtualizado.Sexo, aluno.Sexo);
            Assert.AreEqual(alunoAtualizado.Nascimento, aluno.Nascimento);
            Assert.AreEqual(alunoAtualizado.CPF, "412.637.180-00");

            repositorio.Remove(repositorio.GetByMatricula(8));
        }
Exemplo n.º 25
0
        public void Atualizar_Aluno_No_Repositorio()
        {
            var aluno = new Aluno(201800774, "Nathan Lacerda", "48975163075",
                                  new DateTime(1999, 7, 5), EnumeradorDeSexo.Masculino);

            var alunoAux = new Aluno(201800774, "Raimunda Maria", "640.102.150-03",
                                     new DateTime(1938, 7, 5), EnumeradorDeSexo.Feminino);

            var repositorioAluno = new RepositorioAluno();

            repositorioAluno.Add(aluno);

            repositorioAluno.Update(alunoAux);

            var alunoAtualizado = repositorioAluno.GetByContendoNoNome("Raimunda").First();

            Assert.True(alunoAtualizado.Equals(alunoAux) &&
                        alunoAtualizado.Nome == alunoAux.Nome &&
                        alunoAtualizado.CPF == alunoAux.CPF &&
                        alunoAtualizado.Sexo == alunoAux.Sexo &&
                        alunoAtualizado.Nascimento == alunoAux.Nascimento);
        }
Exemplo n.º 26
0
        public void Add_AlunoShouldBeInsertInToDB()
        {
            RepositorioAluno repositorio = new RepositorioAluno("TESTECADASTROALUNOS");

            foreach (Aluno aluno in _alunos)
            {
                repositorio.Add(aluno);
            }

            List <Aluno> alunosRetornados = new List <Aluno>();

            foreach (Aluno aluno in _alunos)
            {
                alunosRetornados.Add(repositorio.GetByMatricula(aluno.Matricula));
            }

            foreach (var al in _alunos.Zip(alunosRetornados, (alu, aluRet) => new { aluno = alu, alunoRetornado = aluRet }))
            {
                Assert.NotNull(al.alunoRetornado);
                Assert.Equal(al.aluno.Matricula, al.alunoRetornado.Matricula);
            }
        }
Exemplo n.º 27
0
 public void GivenQueEuTenhoUmaListaDeAlunos()
 {
     repositorio.Add(aluno1);
     repositorio.Add(aluno2);
     repositorio.Add(aluno3);
 }
Exemplo n.º 28
0
 public void WhenEuInscreverOsAlunosNoRepositorio()
 {
     _repositorioAluno.Add(_aluno);
 }
Exemplo n.º 29
0
        private void _adicionar_Click(object sender, EventArgs e)
        {
            if (string.IsNullOrEmpty(txtMatricula.Text))
            {
                MessageBox.Show("Matricula vazia!");
                txtMatricula.Focus();
                return;
            }
            if (!DateTime.TryParse(mtxtNascimento.Text, out DateTime data))
            {
                MessageBox.Show("Nascimento inválido");
                return;
            }

            if (_adicionar.Text == "Adicionar")
            {
                if (validaCpf(txtCpf.Text) || txtCpf.Text.Length == 0)
                {
                    try
                    {
                        EnumeradorSexo sexo  = cbSexo.Text.Equals("Masculino") ? EnumeradorSexo.Masculino : EnumeradorSexo.Feminino;
                        Aluno          aluno = new Aluno(Convert.ToInt32(txtMatricula.Text), txtNome.Text, txtCpf.Text, Convert.ToDateTime(mtxtNascimento.Text), sexo);
                        repositorio.Add(aluno);
                        bs.DataSource  = repositorio.GetAll();
                        dgv.DataSource = bs;
                        btnLimpa_Click(sender, e);
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message);
                    }
                }
                else
                {
                    MessageBox.Show("Cpf invalido!", "Tente novamente", MessageBoxButtons.OK, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2);
                }
            }
            else
            {
                if (validaCpf(txtCpf.Text) || txtCpf.Text.Length == 0)
                {
                    try
                    {
                        EnumeradorSexo sexo  = cbSexo.Text.Equals("Masculino") ? EnumeradorSexo.Masculino : EnumeradorSexo.Feminino;
                        Aluno          aluno = new Aluno(Convert.ToInt32(txtMatricula.Text), txtNome.Text, txtCpf.Text, Convert.ToDateTime(mtxtNascimento.Text), sexo);
                        repositorio.Update(aluno);
                        bs.DataSource  = repositorio.GetAll();
                        dgv.DataSource = bs;
                        btnLimpa_Click(sender, e);
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message);
                    }
                }
                else
                {
                    MessageBox.Show("Cpf invalido!", "Tente novamente", MessageBoxButtons.OK, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2);
                }
            }
        }
 public void GivenQueEuTenhaEntradoComUmaParteDoNome()
 {
     aluno = new Aluno(730, "yasmim", "54248958082", Convert.ToDateTime("24/11/1995"), EnumeradorSexo.Feminino);
     repositorio.Add(aluno);
     alunos.Add(aluno);
 }