def get_balance(self): sum = Transaction.objects.filter(account=self, money_amount_currency=self.currency).sum_values() return round_down(Money(sum, self.currency))
def update_money_amount_with_percent(self, percent=0.0): self.money_amount_without_percent = self.money_amount self.money_amount += round_down(percent % self.money_amount) self.save()
def save(self, *args, **kwargs): self.money_amount = round_down(self.money_amount) super(Transaction, self).save(*args, **kwargs)
def test_two_places_round_down(self): result = round_down(self.money) eq_(Money('10.00', moneyed.RUB), result)
def test_float(self): money = Money(random.uniform(1, 100), moneyed.RUB) self.account.add(money) self.assertEquals(round_down(money), self.account.get_balance())
def test_save_transaction_value_with_two_places_round_down(self): eq_(round_down(self.money), self.transaction.money_amount)