Example #1
0
    def test_should_return_multiple_deliveries_along_with_their_corresponding_nodes(
            self):
        order = PurchaseOrderFactory()
        order_item_one = PurchaseOrderItemFactory(purchase_order=order)
        order_item_two = PurchaseOrderItemFactory(purchase_order=order)
        delivery_one = DeliveryFactory()
        delivery_two = DeliveryFactory()
        node_one = NodeFactory(item=order_item_one,
                               distribution_plan=delivery_one)
        node_two = NodeFactory(item=order_item_two,
                               distribution_plan=delivery_one)
        node_three = NodeFactory(item=order_item_one,
                                 distribution_plan=delivery_two)
        node_four = NodeFactory(item=order_item_two,
                                distribution_plan=delivery_two)

        deliveries = order.deliveries()

        self.assertEqual(len(deliveries), 2)
        self.assertIn(delivery_one, list(deliveries))
        self.assertIn(delivery_two, list(deliveries))

        first_delivery_nodes = delivery_one.distributionplannode_set.all()
        second_delivery_nodes = delivery_two.distributionplannode_set.all()
        self.assertIn(node_one, first_delivery_nodes)
        self.assertIn(node_two, first_delivery_nodes)
        self.assertIn(node_three, second_delivery_nodes)
        self.assertIn(node_four, second_delivery_nodes)
Example #2
0
    def test_should_return_multiple_deliveries_along_with_their_corresponding_nodes(self):
        order = PurchaseOrderFactory()
        order_item_one = PurchaseOrderItemFactory(purchase_order=order)
        order_item_two = PurchaseOrderItemFactory(purchase_order=order)
        delivery_one = DistributionPlanFactory()
        delivery_two = DistributionPlanFactory()
        node_one = NodeFactory(item=order_item_one, distribution_plan=delivery_one)
        node_two = NodeFactory(item=order_item_two, distribution_plan=delivery_one)
        node_three = NodeFactory(item=order_item_one, distribution_plan=delivery_two)
        node_four = NodeFactory(item=order_item_two, distribution_plan=delivery_two)

        deliveries = order.deliveries()

        self.assertEqual(len(deliveries), 2)
        self.assertListEqual(deliveries, [delivery_one, delivery_two])

        first_delivery_nodes = delivery_one.distributionplannode_set.all()
        second_delivery_nodes = delivery_two.distributionplannode_set.all()
        self.assertIn(node_one, first_delivery_nodes)
        self.assertIn(node_two, first_delivery_nodes)
        self.assertIn(node_three, second_delivery_nodes)
        self.assertIn(node_four, second_delivery_nodes)
Example #3
0
 def test_should_return_empty_list_when_no_deliveries_tied_to_any_purchase_order_items(self):
     order = PurchaseOrderFactory()
     PurchaseOrderItemFactory(purchase_order=order)
     PurchaseOrderItemFactory(purchase_order=order)
     self.assertListEqual(list(order.deliveries()), [])
Example #4
0
 def test_should_return_empty_list_when_no_deliveries_tied_to_any_purchase_order_items(
         self):
     order = PurchaseOrderFactory()
     PurchaseOrderItemFactory(purchase_order=order)
     PurchaseOrderItemFactory(purchase_order=order)
     self.assertListEqual(list(order.deliveries()), [])