def test_supplier_total_order_sum_with_one_order(self): round = OrderRoundFactory() supplier1 = SupplierFactory() paid_order = OrderFactory(paid=True, finalized=True, order_round=round) supplier1_orderproduct = OrderProductFactory(product__supplier=supplier1, order=paid_order) self.assertItemsEqual(round.suppliers(), [supplier1]) self.assertEqual(round.supplier_total_order_sum(supplier1), supplier1_orderproduct.product.base_price * supplier1_orderproduct.amount)
def test_supplier_total_order_sum_with_multiple_orders(self): round = OrderRoundFactory() supplier1 = SupplierFactory() supplier1_orderproduct1 = OrderProductFactory(product__supplier=supplier1, order__order_round=round, order__paid=True, order__finalized=True) supplier1_orderproduct2 = OrderProductFactory(product__supplier=supplier1, order__order_round=round, order__paid=True, order__finalized=True) self.assertEqual(round.supplier_total_order_sum(supplier1), (supplier1_orderproduct1.product.base_price * supplier1_orderproduct1.amount) + (supplier1_orderproduct2.product.base_price * supplier1_orderproduct2.amount))
def test_supplier_total_order_sum_with_one_order(self): order_round = OrderRoundFactory() supplier1 = SupplierFactory() paid_order = OrderFactory(paid=True, finalized=True, order_round=order_round) supplier1_orderproduct = OrderProductFactory( product__supplier=supplier1, order=paid_order) self.assertCountEqual(order_round.suppliers(), [supplier1]) self.assertEqual( order_round.supplier_total_order_sum(supplier1), supplier1_orderproduct.product.base_price * supplier1_orderproduct.amount)
def test_supplier_total_order_sum_with_multiple_orders(self): order_round = OrderRoundFactory() supplier1 = SupplierFactory() supplier1_orderproduct1 = OrderProductFactory( product__supplier=supplier1, order__order_round=order_round, order__paid=True, order__finalized=True) supplier1_orderproduct2 = OrderProductFactory( product__supplier=supplier1, order__order_round=order_round, order__paid=True, order__finalized=True) expected_sum = ((supplier1_orderproduct1.product.base_price * supplier1_orderproduct1.amount) + (supplier1_orderproduct2.product.base_price * supplier1_orderproduct2.amount)) self.assertEqual(order_round.supplier_total_order_sum(supplier1), expected_sum)