1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/ihatemoney_ynh.git synced 2024-09-03 19:26:15 +02:00

Round the balance. Fix #1

This commit is contained in:
Alexis Metaireau 2011-10-08 16:43:46 +02:00
parent 75209aeed0
commit 7d9fde0460
2 changed files with 40 additions and 1 deletions

View file

@ -39,7 +39,7 @@ class Project(db.Model):
should_receive[bill.payer] += bill.pay_each() should_receive[bill.payer] += bill.pay_each()
for person in self.members: for person in self.members:
balances[person] = should_receive[person] - should_pay[person] balances[person] = round(should_receive[person] - should_pay[person], 2)
return balances return balances

View file

@ -327,6 +327,45 @@ class BudgetTestCase(TestCase):
balance = models.Project.query.get("raclette").get_balance() balance = models.Project.query.get("raclette").get_balance()
self.assertEqual(set(balance.values()), set([19.0, -19.0])) self.assertEqual(set(balance.values()), set([19.0, -19.0]))
def test_rounding(self):
self.post_project("raclette")
# add members
self.app.post("/raclette/members/add", data={'name': 'alexis' })
self.app.post("/raclette/members/add", data={'name': 'fred' })
self.app.post("/raclette/members/add", data={'name': 'tata' })
# create bills
req = self.app.post("/raclette/add", data={
'date': '2011-08-10',
'what': u'fromage à raclette',
'payer': 1,
'payed_for': [1, 2, 3],
'amount': '24.36',
})
req2 = self.app.post("/raclette/add", data={
'date': '2011-08-10',
'what': u'red wine',
'payer': 2,
'payed_for': [1],
'amount': '19.12',
})
req3 = self.app.post("/raclette/add", data={
'date': '2011-08-10',
'what': u'delicatessen',
'payer': 1,
'payed_for': [1, 2],
'amount': '22',
})
balance = models.Project.query.get("raclette").get_balance()
balance = dict([(user.name, bal) for user, bal in balance.items()])
self.assertDictEqual(balance, {u'tata': -8.12, u'alexis': 8.12,
u'fred': 0.0})
def test_edit_project(self): def test_edit_project(self):
# A project should be editable # A project should be editable