Ejemplo n.º 1
0
    def test_bill_creation(self):
        # create users
        u1 = User(username='******', email='*****@*****.**')
        u2 = User(username='******', email='*****@*****.**')
        u3 = User(username='******', email='*****@*****.**')
        u4 = User(username='******', email='*****@*****.**')
        db.session.add_all([u1, u2, u3, u4])
        db.session.commit()

        # create a bill to split
        b = Bill(title='New Bill', desc='some description',
            amount=250, payer=u3)
        db.session.add(b)
        db.session.commit()

        self.assertTrue(len(b.bill_details) == 1)
        self.assertTrue(b.bill_details[0].user == u3)

        participants = [u1, u2, u3, u4]
        shares = [50, 100, 75, 25]
        for participant, share in zip(participants, shares):
            b.add_participant(participant, share)

        db.session.commit()
        self.assertTrue(len(b.bill_details) == 4)