public void ValidaRankingAutomatico_RoboFinalizacaoSimulado_GabaritaramMenos10Porcento() { var idSimulado = 1; var rankingMock = Substitute.For <IRankingSimuladoData>(); var especialidadeMock = Substitute.For <IEspecialidadeData>(); var storesMock = Substitute.For <IFilialData>(); var simulado = new SimuladoDTO { ID = 1, QuantidadeQuestoes = 100, PesoProvaObjetiva = 100, Ano = 2019, TipoId = (int)Constants.TipoSimulado.Extensivo }; rankingMock.GetRankingSimulado(idSimulado).Returns(RankingSimuladoEntityTestData.ListRankingSimulado_10PorcentoGabaritou()); rankingMock.GetSimulado(idSimulado).Returns(simulado); var business = new RankingSimuladoBusiness(rankingMock, especialidadeMock, storesMock); var ranking = business.ValidaRankingSimulado(idSimulado); Assert.AreEqual(ranking, ""); }
public void GeraRankingSimuladoNacional_R4GO_ValidarValoresRanking() { var idSimulado = 1; var rankingMock = Substitute.For <IRankingSimuladoData>(); var especialidadeMock = Substitute.For <IEspecialidadeData>(); var storesMock = Substitute.For <IFilialData>(); var simulado = new SimuladoDTO { ID = 1, QuantidadeQuestoes = 10, PesoProvaObjetiva = 100, Ano = 2019, TipoId = (int)Constants.TipoSimulado.R4_GO }; rankingMock.GetSimulado(idSimulado).Returns(simulado); rankingMock.GetOrdemVendaTodosClientes(2019).Returns(RankingSimuladoEntityTestData.ListOrdemVendaTodosClientes(Constants.TipoSimulado.R4_GO)); rankingMock.GetLogSimuladoAlunoTurma(idSimulado).Returns(RankingSimuladoEntityTestData.ListLogSimuladoAlunoTurma(Constants.TipoSimulado.R4_GO)); especialidadeMock.GetAll().Returns(RankingSimuladoEntityTestData.ListEspecialidade()); storesMock.GetFilial((int)Constants.Stores.R3_MEDERI).Returns(new Filial() { ID = (int)Constants.Stores.R3_MEDERI, Nome = "R3 MEDERI" }); var resultado = RankingSimuladoEntityTestData.ListResultado(); rankingMock.ListResultado(idSimulado).Returns(resultado); var business = new RankingSimuladoBusiness(rankingMock, especialidadeMock, storesMock); var ranking = business.GeraRankingSimuladoNacional(idSimulado); rankingMock.Received().RemoverSimuladoRankingFase01(idSimulado); rankingMock.Received().InserirSimuladoRankingFase01(Arg.Any <List <SimuladoRankingFase01DTO> >()); Assert.AreEqual(resultado.Count(), ranking.Count); Assert.IsFalse(ranking.Any(x => x.dblNotaFinal < 0)); Assert.IsFalse(ranking.Any(x => x.dblNotaFinal > simulado.PesoProvaObjetiva)); int contador = 1; int posicao = 1; double?notaAnterior = -1; foreach (var item in ranking) { var res = resultado.Where(x => x.intClientID == item.intClientID).FirstOrDefault(); double nota = Math.Round(Convert.ToDouble(res.intAcertos) / simulado.QuantidadeQuestoes.Value * simulado.PesoProvaObjetiva.Value, 2); if (item.dblNotaFinal != notaAnterior) { posicao = contador; } Assert.AreEqual(nota, item.dblNotaFinal); Assert.AreEqual(posicao.ToString() + "º", item.txtPosicao); Assert.AreEqual("R3 MEDERI", item.txtUnidade); Assert.AreEqual("2019 R4 GO", item.txtLocal); Assert.AreEqual("GINECOLOGIA E OBSTETRÍCIA (ANO OPCIONAL)", item.txtEspecialidade); Assert.AreEqual(-1, item.intStateID); notaAnterior = item.dblNotaFinal; contador++; } }