diff options
| author | Alexis Metaireau <alexis@notmyidea.org> | 2011-10-08 16:43:46 +0200 |
|---|---|---|
| committer | Alexis Metaireau <alexis@notmyidea.org> | 2011-10-08 16:43:46 +0200 |
| commit | 7d9fde0460b66850ef1d7bce22c09156216539cd (patch) | |
| tree | 7d5160aed48686483bc82e34b6bb9281ca6b5f8c /budget/tests.py | |
| parent | 75209aeed0140c804047b4f3466d329b9eb246b9 (diff) | |
| download | ihatemoney-mirror-7d9fde0460b66850ef1d7bce22c09156216539cd.zip ihatemoney-mirror-7d9fde0460b66850ef1d7bce22c09156216539cd.tar.gz ihatemoney-mirror-7d9fde0460b66850ef1d7bce22c09156216539cd.tar.bz2 | |
Round the balance. Fix #1
Diffstat (limited to 'budget/tests.py')
| -rw-r--r-- | budget/tests.py | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/budget/tests.py b/budget/tests.py index a3fbd89..0caf186 100644 --- a/budget/tests.py +++ b/budget/tests.py @@ -327,6 +327,45 @@ class BudgetTestCase(TestCase): balance = models.Project.query.get("raclette").get_balance() 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): # A project should be editable |
