예제 #1
0
    def test_new_transaction(self):
        t = WalletTransaction.add(account=self.wallet_account,
                                  bankcard=self.bankcard,
                                  transaction_id=uuid.uuid4().hex,
                                  amount=Decimal('1024.12'),
                                  type_=WalletTransaction.Type.purchase)

        assert t.owner == self.account
        assert t.wallet_account == self.wallet_account
        assert t.type_ is WalletTransaction.Type.purchase
        assert t.status is WalletTransaction.Status.raw
        assert t.bankcard == self.bankcard

        WalletAccount.get.assert_called_once_with('1010')
        self.bankcard_class.get.assert_called_once_with(42)

        WalletTransaction.sum_amount(WalletTransaction.Type.purchase) == \
            Decimal('0')
예제 #2
0
def home():
    user_count = get_user_count()
    investment_sum_amount = get_savings_amount() + \
        WalletTransaction.sum_amount(WalletTransaction.Type.purchase)

    if g.user:
        return redirect('/mine/')

    return render_template('index/index.html', user_count=user_count,
                           investment_sum_amount=investment_sum_amount)
예제 #3
0
    def test_transfer_status(self):
        t = WalletTransaction.add(account=self.wallet_account,
                                  bankcard=self.bankcard,
                                  transaction_id=uuid.uuid4().hex,
                                  amount=Decimal('1024.12'),
                                  type_=WalletTransaction.Type.purchase)
        assert t.status is WalletTransaction.Status.raw
        t = WalletTransaction.get(t.id_)
        assert t.status is WalletTransaction.Status.raw

        WalletTransaction.sum_amount(WalletTransaction.Type.purchase) == \
            Decimal('0')

        t.transfer_status(WalletTransaction.Status.success)
        assert t.status is WalletTransaction.Status.success
        t = WalletTransaction.get(t.id_)
        assert t.status is WalletTransaction.Status.success

        WalletTransaction.sum_amount(WalletTransaction.Type.purchase) == \
            Decimal('1024.12')

        t.transfer_status(WalletTransaction.Status.failure)
        assert t.status is WalletTransaction.Status.failure
        t = WalletTransaction.get(t.id_)
        assert t.status is WalletTransaction.Status.failure

        WalletTransaction.sum_amount(WalletTransaction.Type.purchase) == \
            Decimal('0')