public void Verificar_se_retorna_filmes_corretos_na_semi_final_recebendo_oito_filmes() { var filmes = _filmes.ToList(); var primeiraFase = new PrimeiraFase { Filmes = new List <Filme> { filmes.FirstOrDefault(x => x.Titulo == "Deadpool 2"), filmes.FirstOrDefault(x => x.Titulo == "Han Solo: Uma História Star Wars"), filmes.FirstOrDefault(x => x.Titulo == "Hereditário"), filmes.FirstOrDefault(x => x.Titulo == "Jurassic World: Reino Ameaçado"), filmes.FirstOrDefault(x => x.Titulo == "Oito Mulheres e um Segredo"), filmes.FirstOrDefault(x => x.Titulo == "Os Incríveis 2"), filmes.FirstOrDefault(x => x.Titulo == "Thor: Ragnarok"), filmes.FirstOrDefault(x => x.Titulo == "Vingadores: Guerra Infinita") } }; var semiFinal = primeiraFase.Iniciar(); var filme1 = semiFinal.Filmes[0].Titulo == "Vingadores: Guerra Infinita"; var filme2 = semiFinal.Filmes[1].Titulo == "Thor: Ragnarok"; var filme3 = semiFinal.Filmes[2].Titulo == "Os Incríveis 2"; var filme4 = semiFinal.Filmes[3].Titulo == "Jurassic World: Reino Ameaçado"; Assert.True(filme1 && filme2 && filme3 && filme4); }
public void DeveAnalisarListaDeFilmesEClassificarQuatroFilmes() { //arrange var listaEntrada = new List <Filme>(); listaEntrada.Add(new Filme { Id = "tt3606756", Titulo = "Os Incríveis 2", Ano = 2018, Nota = 8.5 }); //1 listaEntrada.Add(new Filme { Id = "tt7784604", Titulo = "Hereditário", Ano = 2018, Nota = 7.8 }); //2 listaEntrada.Add(new Filme { Id = "tt4881806", Titulo = "Jurassic World: Reino Ameaçado 2", Ano = 2018, Nota = 6.7 }); //3 listaEntrada.Add(new Filme { Id = "tt5164214", Titulo = "Oito Mulheres e um Segredo", Ano = 2018, Nota = 6.3 }); //4 listaEntrada.Add(new Filme { Id = "tt5463162", Titulo = "Deadpool 2", Ano = 2018, Nota = 8.1 }); //5 listaEntrada.Add(new Filme { Id = "tt2854926", Titulo = "Te Peguei!", Ano = 2018, Nota = 7.1 }); //6 listaEntrada.Add(new Filme { Id = "tt1365519", Titulo = "Tomb Raider: A Origem", Ano = 2018, Nota = 6.5 }); //7 listaEntrada.Add(new Filme { Id = "tt1825683", Titulo = "Pantera Negra", Ano = 2018, Nota = 7.5 }); //8 var listaSaida = new List <Filme>(); listaSaida.Add(new Filme { Id = "tt3606756", Titulo = "Os Incríveis 2", Ano = 2018, Nota = 8.5 }); listaSaida.Add(new Filme { Id = "tt7784604", Titulo = "Hereditário", Ano = 2018, Nota = 7.8 }); listaSaida.Add(new Filme { Id = "tt2854926", Titulo = "Te Peguei!", Ano = 2018, Nota = 7.1 }); listaSaida.Add(new Filme { Id = "tt5463162", Titulo = "Deadpool 2", Ano = 2018, Nota = 8.1 }); var comparaFilmes = new ComparaFilmes(); var primeiraFase = new PrimeiraFase(comparaFilmes); //act var resultado = primeiraFase.DefinirFilmesVencedores(listaEntrada); //assert Assert.Equal(4, resultado.Count); Assert.Equal(listaSaida[0].Id, resultado[0].Id); Assert.Equal(listaSaida[1].Id, resultado[1].Id); Assert.Equal(listaSaida[2].Id, resultado[2].Id); Assert.Equal(listaSaida[3].Id, resultado[3].Id); }
public void Verificar_se_retorna_erro_se_nao_receber_todos_os_times() { var primeiraFase = new PrimeiraFase { Filmes = _filmes.ToList().GetRange(0, 4) }; Assert.Throws <ArgumentOutOfRangeException>(() => primeiraFase.Iniciar()); }
public void Verificar_se_retorna_semi_final_recebendo_oito_filmes() { var primeiraFase = new PrimeiraFase { Filmes = _filmes.ToList().GetRange(0, 8) }; var semiFinal = primeiraFase.Iniciar(); Assert.NotNull(semiFinal); }
public Eliminatorias PreencherSemiFinal() { if (PrimeiraFase == null || PrimeiraFase.Count() < 4) { throw new Exception("Não é possível avançar para a semifinal antes da primeira fase"); } SemiFinal = new Partida[2]; for (int i = 0; i < SemiFinal.Length; i++) { var primeiroFilme = PrimeiraFase[i].ObterVencedor(); var segundoFilme = PrimeiraFase[PrimeiraFase.Length - i - 1].ObterVencedor(); SemiFinal[i] = new Partida(primeiroFilme, segundoFilme); } return(this); }
public void NaoDeveAnalisarListaDeFilmesSeQuantidadeDiferenteOito() { //arrange var lista = new List <Filme>(); lista.Add(new Filme { Id = "tt3606756", Titulo = "Os Incríveis 2", Ano = 2018, Nota = 8.5 }); lista.Add(new Filme { Id = "tt7784604", Titulo = "Hereditário", Ano = 2018, Nota = 7.8 }); var comparaFilmes = new ComparaFilmes(); var primeiraFase = new PrimeiraFase(comparaFilmes); //act / assert Assert.Throws <ArgumentException>(() => primeiraFase.DefinirFilmesVencedores(lista)); }
public void Verificar_se_retorna_semi_final_recebendo_oito_filmes() { var primeiraFase = new PrimeiraFase { FilmeUm = _filmes[0], FilmeDois = _filmes[1], FilmeTres = _filmes[2], FilmeQuatro = _filmes[3], FilmeCinco = _filmes[4], FilmeSeis = _filmes[5], FilmeSete = _filmes[6], FilmeOito = _filmes[7], }; var semiFinal = primeiraFase.Inciar(); Assert.IsNotNull(semiFinal); }
public Dominios.CopaDosFilmes GerarMeuCampeonato(List <Filme> filmes) { if (filmes.Count != 8) { throw new Exception("A quantidade de necessária de filmes para o campeonato é 8"); } var copa = new Dominios.CopaDosFilmes(); var filmesOrdenados = filmes.OrderBy(x => x.Titulo); var primeiraFase = new PrimeiraFase { Filmes = filmesOrdenados.ToList() }; var semiFinal = primeiraFase.Iniciar(); copa.Final = semiFinal.Iniciar(); copa.Campeao = copa.Final.Iniciar(); return(copa); }
public void Verificar_se_retorna_erro_se_nao_receber_nenhum_filme() { var primeiraFase = new PrimeiraFase(); Assert.Throws <NullReferenceException>(() => primeiraFase.Iniciar()); }