mirror of
https://github.com/frappe/erpnext.git
synced 2026-05-13 10:11:20 +00:00
test: add test for pending qty calculation in Pick List
This commit is contained in:
@@ -13,6 +13,7 @@ from frappe.utils import flt, today
|
|||||||
from erpnext.controllers.accounts_controller import InvalidQtyError
|
from erpnext.controllers.accounts_controller import InvalidQtyError
|
||||||
from erpnext.stock.doctype.item.test_item import create_item
|
from erpnext.stock.doctype.item.test_item import create_item
|
||||||
from erpnext.stock.doctype.material_request.material_request import (
|
from erpnext.stock.doctype.material_request.material_request import (
|
||||||
|
create_pick_list,
|
||||||
make_in_transit_stock_entry,
|
make_in_transit_stock_entry,
|
||||||
make_purchase_order,
|
make_purchase_order,
|
||||||
make_stock_entry,
|
make_stock_entry,
|
||||||
@@ -945,6 +946,36 @@ class TestMaterialRequest(IntegrationTestCase):
|
|||||||
|
|
||||||
self.assertRaises(OverAllowanceError, mr.submit)
|
self.assertRaises(OverAllowanceError, mr.submit)
|
||||||
|
|
||||||
|
def test_pending_qty_in_pick_list(self):
|
||||||
|
"""Test for pick list mapped doc qty from partially received Material Request Transfer"""
|
||||||
|
import json
|
||||||
|
|
||||||
|
from erpnext.stock.doctype.pick_list.pick_list import create_stock_entry
|
||||||
|
|
||||||
|
mr = make_material_request(material_request_type="Material Transfer")
|
||||||
|
pl = create_pick_list(mr.name)
|
||||||
|
pl.save()
|
||||||
|
pl.locations[0].qty = 5
|
||||||
|
pl.locations[0].stock_qty = 5
|
||||||
|
pl.submit()
|
||||||
|
|
||||||
|
to_warehouse = create_warehouse("Test To Warehouse")
|
||||||
|
|
||||||
|
se_data = create_stock_entry(json.dumps(pl.as_dict()))
|
||||||
|
se = frappe.get_doc(se_data)
|
||||||
|
se.items[0].t_warehouse = to_warehouse
|
||||||
|
se.save()
|
||||||
|
se.submit()
|
||||||
|
|
||||||
|
pl.load_from_db()
|
||||||
|
self.assertEqual(pl.locations[0].picked_qty, se.items[0].qty)
|
||||||
|
|
||||||
|
mr.load_from_db()
|
||||||
|
self.assertEqual(mr.status, "Partially Received")
|
||||||
|
|
||||||
|
pl_for_pending = create_pick_list(mr.name)
|
||||||
|
self.assertEqual(pl_for_pending.locations[0].qty, 5)
|
||||||
|
|
||||||
|
|
||||||
def get_in_transit_warehouse(company):
|
def get_in_transit_warehouse(company):
|
||||||
if not frappe.db.exists("Warehouse Type", "Transit"):
|
if not frappe.db.exists("Warehouse Type", "Transit"):
|
||||||
|
|||||||
Reference in New Issue
Block a user