Exemplo n.º 1
0
        public async void DeveConseguirAbrirContaCasoSejaUmNovoCliente()
        {
            AbrirContaUseCase useCase = new AbrirContaUseCase(clienteRepository, contaRepository);

            string nome          = "Gustavo Martins Oliveira";
            string cpf           = "123456789";
            string numeroAgencia = "123";

            var result = await useCase.Execute(nome, cpf, numeroAgencia);

            Assert.Equal(nome, result.Cliente.Nome);
            Assert.Equal(cpf, result.Cliente.Cpf);
            Assert.Equal(numeroAgencia, result.Conta.NumeroAgencia);
            Assert.NotEmpty(result.Conta.NumeroConta.ToString());
            Assert.NotEmpty(result.Conta.DigitoConta.ToString());
        }
Exemplo n.º 2
0
        public async void NaoDeveAbrirContaCasoClienteJaPossuaUmaConta()
        {
            AbrirContaUseCase useCase = new AbrirContaUseCase(clienteRepository, contaRepository);

            clienteRepository.ObterPorCpf("123456789").Returns(Cliente.Carregar(Guid.NewGuid(), "Gustavo Martins Oliveira", "123456789", "minh@senh@"));

            string nome          = "Gustavo Martins Oliveira";
            string cpf           = "123456789";
            string numeroAgencia = "222";

            var ex = await Assert.ThrowsAsync <ClienteJaPossuiContaException>(() =>
            {
                return(useCase.Execute(nome, cpf, numeroAgencia));
            });

            Assert.Equal("Cliente 'Gustavo Martins Oliveira' já possuí conta.", ex.Message);
        }