public void RealizarInvestimento_Test()
        {
            try
            {
                // Investimentos
                Arrojado    investimentoArrojado    = new Arrojado();
                Moderado    investimentoModerado    = new Moderado();
                Conservador investimentoConservador = new Conservador();

                // Conta Bancária
                ContaBancaria conta = new ContaBancaria("Thiago Bottacin", 100.0);

                // Realizador de Investimentos
                RealizadorDeInvestimentos realizadorInvestimentos = new RealizadorDeInvestimentos();

                // Realiza Investimentos
                realizadorInvestimentos.RealizarInvestimento(conta, investimentoConservador);
                realizadorInvestimentos.RealizarInvestimento(conta, investimentoModerado);
                realizadorInvestimentos.RealizarInvestimento(conta, investimentoArrojado);

                Assert.IsTrue(true);
            }
            catch (Exception ex)
            {
                Assert.Fail(ex.Message);
            }
        }
示例#2
0
        public static void StrategyCalcInvestimentos()
        {
            IInvestimento conservador = new Conservador();
            IInvestimento moderado    = new Moderado();
            IInvestimento arrojado    = new Arrojado();

            Conta conta  = new Conta("Sebastiao", 2000d);
            Conta conta2 = new Conta("Daniela", 1000d);

            CalculadorDeInvestimentos calculador = new CalculadorDeInvestimentos();

            //investimentos avulsos utilizando cada tipo de investimento
            conta.Deposita(calculador.Investir(conta, conservador).ValorGerado);
            conta.Deposita(calculador.Investir(conta, arrojado).ValorGerado);
            conta.Deposita(calculador.Investir(conta, moderado).ValorGerado);


            Console.WriteLine("First turn " + conta.Saldo.ToString("#####.00"));

            //teste de uma segunda roda de de investimentos
            conta2.Deposita(calculador.Investir(conta2, conservador).Investir(conta2, moderado).Investir(conta2, arrojado).ValorGerado);

            Console.WriteLine("Second turn " + conta2.Saldo.ToString("#####.00"));

            Console.ReadKey();
        }
示例#3
0
        public void RetornaValorInvestidoDadoUmaContaBancariaComUmachanceDeAltoRetorno()
        {
            // Arrange
            var conta      = new Conta(1000.0);
            var estrategia = new Moderado(conta);

            // Act
            var rendimento = estrategia.CalcularRendimento(60);

            // Assert
            rendimento.Should().Be(25.0);
        }
        static void Main(string[] args)
        {
            ITipoInvestimento arrojado    = new Arrojado();
            ITipoInvestimento moderado    = new Moderado();
            ITipoInvestimento conservador = new Conservador();
            var conta = new Conta();

            conta.Deposita(500.0);
            Console.WriteLine("Valor investimento: " + conta.Saldo);
            RealizadorDeInvestimentos.Realiza(conta, arrojado);
            RealizadorDeInvestimentos.Realiza(conta, moderado);
            RealizadorDeInvestimentos.Realiza(conta, conservador);
            Console.ReadKey();
        }
示例#5
0
        /// <summary>
        /// Conceito de Design Patterns estudado: Strategy
        /// </summary>
        public static void ExecutaCalculadorInvestimentos()
        {
            TipoInvestimento arrojado    = new Arrojado();
            TipoInvestimento conservador = new Conservador();
            TipoInvestimento moderado    = new Moderado();

            ContaBancaria conta = new ContaBancaria("Olivia", DateTime.Now);

            conta.Deposita(500);

            RealizadorDeInvestimentos investir = new RealizadorDeInvestimentos();

            investir.RealizaInvestimento(conta, arrojado);
        }
        static void Main(string[] args)
        {
            IInvestimento conservador = new Conservador();
            IInvestimento moderado    = new Moderado();
            IInvestimento arrojado    = new Arrojado();

            ContaBancaria conta = new ContaBancaria(1000);

            RealizadorDeInvestimentos realizadorDeInvestimentos = new RealizadorDeInvestimentos();

            realizadorDeInvestimentos.InvesteSaldo(conta, conservador);
            realizadorDeInvestimentos.InvesteSaldo(conta, moderado);
            realizadorDeInvestimentos.InvesteSaldo(conta, arrojado);

            Console.ReadKey();
        }