public void Verificar_se_retorna_erro_se_nao_receber_todos_os_times() { var semiFinal = new SemiFinal { Filmes = _filmes.ToList().GetRange(0, 2) }; Assert.Throws <ArgumentOutOfRangeException>(() => semiFinal.Iniciar()); }
public Final GerarCampeonato([FromBody] List <Filme> filmes) { Campeonato campeonato = Campeonato.RealizarCampeonato(filmes); GrupoOitavas oitavas = campeonato.grupoOitavas; GrupoQuartas quartas = campeonato.grupoQuartas; SemiFinal semifinal = campeonato.semiFinal; Final final = campeonato.final; return(final); }
public void Verificar_se_retorna_final_recebendo_quatro_filmes() { var semiFinal = new SemiFinal { Filmes = _filmes.ToList().GetRange(0, 4) }; var final = semiFinal.Iniciar(); Assert.NotNull(final); }
public List <Filme> ObterVencedor(List <Filme> filmes) { var vencedoresDaQuarta = new QuartaDeFinal(filmes).ObterVencedores(); var vencedoresDaSemi = new SemiFinal(vencedoresDaQuarta).ObterVencedores(); var vencedor = new Final(vencedoresDaSemi).ObterVencedor(); var vice = vencedoresDaSemi.First(filme => filme.Id != vencedor.Id); return(new List <Filme> { vencedor, vice }); }
public void DeveObterVencedoresDaSemiFinal() { var vencedoresEsperado = new List <Filme> { Filmes[0], Filmes[3] }; var semiFinal = new SemiFinal(Filmes); var vencedoresEncontrados = semiFinal.ObterVencedores(); CollectionAssert.AreEqual(vencedoresEsperado, vencedoresEncontrados); }
public Eliminatorias PreencherFinal() { if (SemiFinal == null || SemiFinal.Count() < 2) { throw new Exception("Não é possível avançar para a final antes da semifinal"); } var primeiroFilme = SemiFinal[0].ObterVencedor(); var segundoFilme = SemiFinal[1].ObterVencedor(); Final = new Partida(primeiroFilme, segundoFilme); return(this); }
public void DeveObterGruposDaSemiFinal() { var semiFinal = new SemiFinal(Filmes); var grupoEsperado = new Dictionary <string, List <Filme> > { { "12", new List <Filme> { Filmes[0], Filmes[1] } }, { "34", new List <Filme> { Filmes[2], Filmes[3] } } }; var grupoEncontrado = semiFinal.ObterGrupos(); CollectionAssert.AreEqual(grupoEsperado, grupoEncontrado); }
public void Verificar_se_retorna_filmes_corretos_na_final_recebendo_quatro_filmes() { var filmes = _filmes.ToList(); var semiFinal = new SemiFinal { Filmes = new List <Filme> { filmes.FirstOrDefault(x => x.Titulo == "Vingadores: Guerra Infinita"), filmes.FirstOrDefault(x => x.Titulo == "Thor: Ragnarok"), filmes.FirstOrDefault(x => x.Titulo == "Os Incríveis 2"), filmes.FirstOrDefault(x => x.Titulo == "Jurassic World: Reino Ameaçado") } }; var final = semiFinal.Iniciar(); var filme1 = final.Filmes[0].Titulo == "Vingadores: Guerra Infinita"; var filme2 = final.Filmes[1].Titulo == "Os Incríveis 2"; Assert.True(filme1 && filme2); }
public void DeveValidarAQuantidadeDeFilmeQuandoForIgualAOitoNaSemiFinal() { var semiFinal = new SemiFinal(Filmes); Assert.AreEqual(Filmes.Count(), semiFinal.Filmes.Count()); }
public void HaveTheRightNumberOfMatchesAfterRun() { var semiFinal = new SemiFinal(FakeMovieGenerator.GetListWithFourMovies()); Assert.Equal(2, semiFinal.Matches.Count); }
public void Verificar_se_retorna_erro_se_nao_receber_nenhum_filme() { var semiFinal = new SemiFinal(); Assert.Throws <NullReferenceException>(() => semiFinal.Iniciar()); }