Esempio n. 1
0
        public void should_vote_twice_in_candidate_Jose()
        {
            // Dado / Setup
            // OBJETO Election
            var election      = new Election();
            var candidateAna  = new Candidates("Ana", "154.585.256-58");
            var candidateJose = new Candidates("Jose", "145.845.848-47");

            var candidates = new List <Candidates>()
            {
                candidateAna, candidateJose
            };

            election.CreateCandidates(candidates, "Pa$$w0rd");

            var joseId = election.GetCandidateIdByCpf(candidateAna.Cpf);
            var anaId  = election.GetCandidateIdByCpf(candidateJose.Cpf);

            // Quando / Ação
            // Estamos acessando o MÉTODO ShowMenu do OBJETO Election
            election.Vote(joseId);
            election.Vote(joseId);

            // Deve / Asserções
            var candidateJosee = election.Candidates.First(x => x.Id == joseId);
            var candidateAnaa  = election.Candidates.First(x => x.Id == anaId);

            Assert.True(candidateAnaa.Votes == 0);
            Assert.True(candidateJosee.Votes == 2);
        }
Esempio n. 2
0
        public void should_return_both_candidates_when_occurs_draw()
        {
            // Dado / Setup
            // OBJETO Election
            var election      = new Election();
            var candidateAna  = new Candidates("Ana", "154.585.256-58");
            var candidateJose = new Candidates("Jose", "145.845.848-47");

            var candidates = new List <Candidates>()
            {
                candidateAna, candidateJose
            };

            election.CreateCandidates(candidates, "Pa$$w0rd");
            var joseId = election.GetCandidateIdByCpf(candidateJose.Cpf);
            var anaId  = election.GetCandidateIdByCpf(candidateAna.Cpf);

            // Quando / Ação
            election.Vote(anaId);
            election.Vote(joseId);
            var winners = election.GetWinners();

            // Deve / Asserções
            var candidateJosee = winners.Find(x => x.Cpf == candidateJose.Cpf);
            var candidateAnaa  = winners.Find(x => x.Cpf == candidateAna.Cpf);

            Assert.Equal(1, candidateJose.Votes);
            Assert.Equal(1, candidateAna.Votes);
        }
        public void should_return_both_candidates_when_occurs_draw()
        {
            // Dado / Setup
            // OBJETO election

            var election   = new Election();
            var fernando   = new Candidate("Fernando", "111.111.111-11");
            var ana        = new Candidate("Ana", "222.222.222-22");
            var candidates = new List <Candidate> {
                fernando, ana
            };

            election.CreateCandidates(candidates, "Pa$$w0rd");

            var fernandoId = election.GetCandidateIdByCpf(fernando.Cpf);
            var anaId      = election.GetCandidateIdByCpf(ana.Cpf);

            // Quando / Ação
            // Estamos acessando o MÉTODO ShowMenu do OBJETO election

            election.Vote(ana.Cpf);
            election.Vote(fernando.Cpf);
            var winners = election.GetWinners();

            // Deve / Asserções

            var candidateFernando = winners.Find(x => x.Id == fernandoId);
            var candidateAna      = winners.Find(x => x.Id == anaId);

            Assert.Equal(1, candidateFernando.Votes);
            Assert.Equal(1, candidateAna.Votes);
        }
Esempio n. 4
0
        public void should_return_Ana_as_winner_when_only_Ana_receives_votes()
        {
            // Dado / Setup
            // OBJETO Election
            var election      = new Election();
            var candidateAna  = new Candidates("Ana", "154.585.256-58");
            var candidateJose = new Candidates("Jose", "145.845.848-47");

            var candidates = new List <Candidates>()
            {
                candidateAna, candidateJose
            };

            election.CreateCandidates(candidates, "Pa$$w0rd");
            var anaId = election.GetCandidateIdByCpf(candidateAna.Cpf);

            // Quando / Ação
            // Estamos acessando o MÉTODO ShowMenu do OBJETO Election
            election.Vote(anaId);
            election.Vote(anaId);
            var winners = election.GetWinners();

            // Deve / Asserções
            Assert.True(winners.Count == 1);
            Assert.Equal(anaId, winners[0].Id);
            Assert.Equal(2, winners[0].Votes);
        }
        public void should_return_Ana_as_winner_when_only_Ana_receives_votes()
        {
            // Dado / Setup
            // OBJETO election
            var election   = new Election();
            var fernando   = new Candidate("Fernando", "111.111.111-11");
            var ana        = new Candidate("Ana", "222.222.222-22");
            var candidates = new List <Candidate> {
                fernando, ana
            };

            election.CreateCandidates(candidates, "Pa$$w0rd");
            var anaId = election.GetCandidateIdByCpf(ana.Cpf);

            // Quando / Ação
            // Estamos acessando o MÉTODO ShowMenu do OBJETO election

            election.Vote(ana.Cpf);
            election.Vote(ana.Cpf);

            var winners = election.GetWinners();

            // Deve / Asserções

            Assert.Equal(1, winners.Count);
            Assert.Equal(anaId, winners[0].Id);
            Assert.Equal(2, winners[0].Votes);
        }
Esempio n. 6
0
        public void should_return_same_candidates()
        {
            //Given
            var election      = new Election();
            var candidateAna  = new Candidates("Ana", "154.585.256-58");
            var candidateJose = new Candidates("Jose", "145.845.848-47");

            var candidates = new List <Candidates>()
            {
                candidateAna, candidateJose
            };

            election.CreateCandidates(candidates, "Pa$$w0rd");

            //When
            var candidateJosee = election.GetCandidateIdByCpf(candidateJose.Cpf);
            var candidateAnaa  = election.GetCandidateIdByCpf(candidateAna.Cpf);

            Assert.NotEqual(candidateAna, candidateJose);
        }
Esempio n. 7
0
        public void Should_Return_Second_Turn_Between_Marcos_And_Shuri()
        {
            //Given
            var openElections         = new Election();
            var candidatesForElection = PreCandidatesFactory();
            var subscribedForElection = openElections.CreateCandidates(candidatesForElection, "Pa$$w0rd");
            var shuriId  = openElections.GetCandidateIdByCpf("112.342.543-88");
            var marcosId = openElections.GetCandidateIdByCpf("000.123.452-00");

            //When
            openElections.VoteCandidate(shuriId);
            openElections.VoteCandidate(shuriId);

            openElections.VoteCandidate(marcosId);
            openElections.VoteCandidate(marcosId);

            var resultOfElection = openElections.ShowWinners();

            //Then
            Assert.Equal(2, resultOfElection.Count);
        }
Esempio n. 8
0
        public void Should_Return_Second_Shuri_ID_Search_By_Her_CPF()
        {
            //Given
            var openElections         = new Election();
            var candidatesForElection = PreCandidatesFactory();
            var candidateShuriSecond  = new Candidate("Shuri", "145.098.756-98");

            candidatesForElection.Add(candidateShuriSecond);
            var subscribedForElection = openElections.CreateCandidates(candidatesForElection, "Pa$$w0rd");

            //When
            var shuriSegundaId = openElections.GetCandidateIdByCpf("145.098.756-98");

            //Then
            Assert.Equal(candidateShuriSecond.Id, shuriSegundaId);
        }
Esempio n. 9
0
        public void Should_Shuri_To_Have_Two_Votes()
        {
            //Given
            var openElections         = new Election();
            var candidatesForElection = PreCandidatesFactory();
            var subscribedForElection = openElections.CreateCandidates(candidatesForElection, "Pa$$w0rd");
            var shuriId = openElections.GetCandidateIdByCpf("112.342.543-88");


            //When
            openElections.VoteCandidate(shuriId);
            openElections.VoteCandidate(shuriId);

            // //Then
            var shuriVotes = openElections.GetVotes(shuriId);

            Assert.Equal(2, shuriVotes);
        }
Esempio n. 10
0
        public void Should_Return_Two_Votes_To_Shuri_Second()
        {
            //Given
            var openElections         = new Election();
            var candidatesForElection = PreCandidatesFactory();
            var candidateShuriSecond  = new Candidate("Shuri", "145.098.756-98");

            candidatesForElection.Add(candidateShuriSecond);
            var subscribedForElection = openElections.CreateCandidates(candidatesForElection, "Pa$$w0rd");
            var shuriSecondId         = openElections.GetCandidateIdByCpf("145.098.756-98");

            //When
            openElections.VoteCandidate(shuriSecondId);
            openElections.VoteCandidate(shuriSecondId);
            var shuriSecondVotes = candidatesForElection.Find(candidate => candidate.Id == shuriSecondId).Votes;

            //Then
            Assert.Equal(2, shuriSecondVotes);
        }
Esempio n. 11
0
        public void Should_Return_Shuri_Won()
        {
            //Given
            var openElections         = new Election();
            var candidatesForElection = PreCandidatesFactory();
            var subscribedForElection = openElections.CreateCandidates(candidatesForElection, "Pa$$w0rd");
            var shuriId = openElections.GetCandidateIdByCpf("112.342.543-88");

            //When
            openElections.VoteCandidate(shuriId);
            openElections.VoteCandidate(shuriId);
            var resultOfElection = openElections.ShowWinners();

            var shuriWon = candidatesForElection.Find(candidate => candidate.Name == "Shuri");

            //Then
            Assert.Single(resultOfElection);
            Assert.Equal(shuriWon, resultOfElection[0]);
        }