private void RunCreditPolices(ClientContext context, Client client) { try { /** * Executa a lista de politicas atuais de maneira dinâmica. Para o processo quando recusada. */ foreach (EnumPolice enumPolice in Enum.GetValues(typeof(EnumPolice))) { client = FactoryCreditPolice.CreateCreditPolice(enumPolice).Process(client); if (client.Result == "refused") { break; } } if (client.Result != "refused") { client.Result = "approved"; client.Refused_policy = null; } client.IsComplete = true; context.Clients.Update(client); context.SaveChangesAsync(); } catch (Exception e) { throw e; } }
public void TestScore() { Client client = new Client(); client.Cpf = "32165498700"; var result = FactoryCreditPolice.CreateCreditPolice(EnumPolice.SCORE).Process(client); Assert.IsTrue(result.Score > 0 && result.Score < 1000); }
public void TestMaiorIdade() { Client client = new Client(); client.Birthdate = DateTime.Parse("1900-01-01"); var result = FactoryCreditPolice.CreateCreditPolice(EnumPolice.AGE).Process(client); Assert.AreNotEqual("age", result.Refused_policy); }
public void TestCommitmentApproved() { Client client = new Client(); client.Cpf = "09876543210"; client.Amount = 1500; client.Income = 1000; client.Terms = 6; client.Score = 700; var result = FactoryCreditPolice.CreateCreditPolice(EnumPolice.COMMITMENT).Process(client); Assert.IsNull(result.Refused_policy); }
public void TestScoreMenor600() { Client client = new Client(); client.Cpf = "12345678901"; var result = FactoryCreditPolice.CreateCreditPolice(EnumPolice.SCORE).Process(client); if (result.Score < 600) { Assert.AreEqual("score", result.Refused_policy); } else { Assert.AreNotEqual("score", result.Refused_policy); } }