public void ProcessarCampeonato_DeveExecutarComSucesso() { //Arrange var filmesMock = new List <Filme>() { FilmesMock.OsIncriveis2, FilmesMock.JurassicWorld, FilmesMock.OitoMulheresEUmSegredo, FilmesMock.Hereditario, FilmesMock.Vingadores, FilmesMock.Deadpool2, FilmesMock.HanSolo, FilmesMock.ThorRagnarok }; //Act var campeonato = _filmeService.ProcessarCampeonato(filmesMock); //Assert _filmeServiceFixture.Mocker.GetMock <INotificationContext <Notification> >() .Verify(x => x.AddNotification(It.IsAny <string>()), Times.Never); var resultadoEsperado = CampeonatoFactory.Create ( campeao: FilmesMock.Vingadores, viceCampeao: FilmesMock.OsIncriveis2 ); Assert.Equal(resultadoEsperado, campeonato); }
public Campeonato ProcessarCampeonato(List <Filme> filmes) { ValidarCampeonato(filmes); if (_notification.HasNotifications()) { return(new Campeonato()); } var primeiraRodada = OrganizarPrimeiraRodada(filmes); var podio = ProcessarPodio(primeiraRodada).ToList(); var campeao = DefinirVencedorDaPartida(podio[0], podio[1]); var viceCampeao = podio.Where(filme => !filme.Equals(campeao)).FirstOrDefault(); return(CampeonatoFactory.Create(campeao, viceCampeao)); }