def prepare(discount=False): tva1 = MagicMock(name="tva1", value=1960, default=0, compte_cg="TVA0001", code='CTVA0001') tva2 = MagicMock(name="tva2", value=700, default=0, compte_cg="TVA0002", code='CTVA0002') p1 = MagicMock(name="product 1", compte_cg="P0001", tva=tva1) p2 = MagicMock(name="product 2", compte_cg="P0002", tva=tva2) line1 = DummyLine(cost=10000, quantity=1, tva=tva1.value, product=p1, tva_object=tva1) line2 = DummyLine(cost=10000, quantity=1, tva=tva1.value, product=p1, tva_object=tva1) line3 = DummyLine(cost=10000, quantity=1, tva=tva2.value, product=p2, tva_object=tva2) company = Dummy(name="company", code_compta='COMP_CG', contribution=None) customer = Dummy(name="customer", compte_tiers="CUSTOMER", compte_cg='CG_CUSTOMER') invoice = TaskCompute() invoice.default_tva = 1960 invoice.expenses_tva = 1960 invoice.taskDate = datetime.date(2013, 02, 02) invoice.customer = customer invoice.company = company invoice.official_number = "INV_001" invoice.lines = [line1, line2, line3] if discount: discount1 = DummyLine(cost=10000, quantity=1, tva=tva1.value, tva_object=tva1) discount2 = DummyLine(cost=10000, quantity=1, tva=tva2.value, tva_object=tva2) invoice.discounts = [discount1, discount2] invoice.expenses_ht = 10000 invoice.expenses = 10000 return ((tva1, tva2), (p1, p2), invoice)
def test_get_tvas(self): task = TaskCompute() task.lines = [DummyLine(cost=35000, quantity=1, tva=1960), DummyLine(cost=40000, quantity=1, tva=550)] task.discounts = [DummyLine(amount=1200, tva=550), DummyLine(amount=15000, tva=1960)] tvas = task.get_tvas() self.assertEqual(tvas.keys(), [1960, 550]) self.assertEqual(tvas[1960], 3920) self.assertEqual(tvas[550], 2134)
def test_get_tvas(self): task = TaskCompute() task.lines = [DummyLine(cost=35000, quantity=1, tva=1960), DummyLine(cost=40000, quantity=1, tva=550)] task.discounts = [DummyLine(amount=1200, tva=550), DummyLine(amount=15000, tva=1960)] tvas = task.get_tvas() assert tvas.keys() == [1960, 550] assert tvas[1960] == 3920 assert tvas[550] == 2134
def test_get_tvas_multiple(self): task = TaskCompute() task.line_groups = [ DummyGroup(lines=[ DummyLine(cost=35000000, quantity=1, tva=1960), DummyLine(cost=40000000, quantity=1, tva=550) ]) ] task.discounts = [ DummyDiscountLine(amount=1200000, tva=550), DummyDiscountLine(amount=15000000, tva=1960) ] tvas = task.get_tvas() assert tvas.keys() == [1960, 550] assert tvas[1960] == 3920000 assert tvas[550] == 2134000
def prepare(discount=False): tva1 = MagicMock(name="tva1", value=1960, default=0, compte_cg="TVA0001", code='CTVA0001') tva2 = MagicMock( name="tva2", value=700, default=0, compte_cg="TVA0002", code='CTVA0002' ) p1 = MagicMock(name="product 1", compte_cg="P0001", tva=tva1) p2 = MagicMock(name="product 2", compte_cg="P0002", tva=tva2) line1 = DummyLine(cost=10000, quantity=1, tva=tva1.value, product=p1, tva_object=tva1) line2 = DummyLine(cost=10000, quantity=1, tva=tva1.value, product=p1, tva_object=tva1) line3 = DummyLine(cost=10000, quantity=1, tva=tva2.value, product=p2, tva_object=tva2) company = Dummy(name="company", code_compta='COMP_CG', contribution=None) customer = Dummy(name="customer", compte_tiers="CUSTOMER", compte_cg='CG_CUSTOMER') invoice = TaskCompute() invoice.default_tva = 1960 invoice.expenses_tva = 1960 invoice.taskDate = datetime.date(2013, 02, 02) invoice.customer = customer invoice.company = company invoice.official_number = "INV_001" invoice.lines = [line1, line2, line3] if discount: discount1 = DummyLine(cost=10000, quantity=1, tva=tva1.value, tva_object=tva1) discount2 = DummyLine(cost=10000, quantity=1, tva=tva2.value, tva_object=tva2) invoice.discounts = [discount1, discount2] invoice.expenses_ht = 10000 invoice.expenses = 10000 return ((tva1, tva2), (p1, p2), invoice)