Пример #1
0
    def test_withdraw_in_dollars_no_funds(self):
        """Prueba que valída el método de retirar dinero en dólares de la cuenta de un usuario sin fondos suficientes.
        """
        mock_workflow = Mock(pk=12345)
        user = User.objects().first()
        money = 10
        withdraw = 1000

        bank = BankService(workflow=mock_workflow)
        bank.deposit_money(user_id=user.user_id, money=money)
        bank.withdraw_in_dollars(user_id=user.user_id, money=withdraw)
        bank.get_account_balance(user_id=user.user_id)

        execution = Execution.objects(workflow=str(mock_workflow.pk)).first()
        self.assertEqual(execution.result['balance'], money)
Пример #2
0
    def test_withdraw_in_dollars(self):
        """Prueba que valída el método de retirar dinero en dólares de la cuenta de un usuario exitosamente."""
        rate_params = {'vigenciadesde': datetime.date.today().isoformat()}
        rate = requests.get('https://www.datos.gov.co/resource/32sa-8pi3.json',
                            params=rate_params)
        usd_rate = float(rate.json()[0]['valor'])

        mock_workflow = Mock(pk=12345)
        user = User.objects().first()
        money = 100000
        withdraw = 3

        bank = BankService(workflow=mock_workflow)
        bank.deposit_money(user_id=user.user_id, money=money)
        bank.withdraw_in_dollars(user_id=user.user_id, money=withdraw)
        bank.get_account_balance(user_id=user.user_id)

        execution = Execution.objects(workflow=str(mock_workflow.pk)).first()
        self.assertEqual(execution.result['balance'],
                         money - (withdraw * usd_rate))