fix(test): test_stock_reservation_against_sales_order
This commit is contained in:
parent
4eb2717c3b
commit
4044c2ed40
@ -1890,11 +1890,11 @@ class TestSalesOrder(FrappeTestCase):
|
||||
)
|
||||
from erpnext.stock.doctype.stock_reservation_entry.test_stock_reservation_entry import (
|
||||
create_items,
|
||||
create_material_receipts,
|
||||
create_material_receipt,
|
||||
)
|
||||
|
||||
items_details, warehouse = create_items(), "_Test Warehouse - _TC"
|
||||
create_material_receipts(items_details, warehouse, qty=10)
|
||||
se = create_material_receipt(items_details, warehouse, qty=10)
|
||||
|
||||
item_list = []
|
||||
for item_code, properties in items_details.items():
|
||||
@ -1932,8 +1932,10 @@ class TestSalesOrder(FrappeTestCase):
|
||||
self.assertEqual(item.stock_reserved_qty, sre_details[0].reserved_qty)
|
||||
self.assertEqual(sre_details[0].status, "Partially Reserved")
|
||||
|
||||
se.cancel()
|
||||
|
||||
# Test - 3: Stock should be fully Reserved if the Available Qty to Reserve is greater than the Un-reserved Qty.
|
||||
create_material_receipts(items_details, warehouse, qty=100)
|
||||
create_material_receipt(items_details, warehouse, qty=110)
|
||||
so.create_stock_reservation_entries()
|
||||
so.load_from_db()
|
||||
|
||||
|
@ -5,6 +5,7 @@ import frappe
|
||||
from frappe.tests.utils import FrappeTestCase, change_settings
|
||||
|
||||
from erpnext.selling.doctype.sales_order.test_sales_order import make_sales_order
|
||||
from erpnext.stock.doctype.stock_entry.stock_entry import StockEntry
|
||||
from erpnext.stock.doctype.stock_entry.test_stock_entry import make_stock_entry
|
||||
from erpnext.stock.utils import get_stock_balance
|
||||
|
||||
@ -12,7 +13,7 @@ from erpnext.stock.utils import get_stock_balance
|
||||
class TestStockReservationEntry(FrappeTestCase):
|
||||
def setUp(self) -> None:
|
||||
self.items = create_items()
|
||||
create_material_receipts(self.items)
|
||||
create_material_receipt(self.items)
|
||||
|
||||
def tearDown(self) -> None:
|
||||
return super().tearDown()
|
||||
@ -269,18 +270,35 @@ def create_items() -> dict:
|
||||
return items
|
||||
|
||||
|
||||
def create_material_receipts(
|
||||
def create_material_receipt(
|
||||
items: dict, warehouse: str = "_Test Warehouse - _TC", qty: float = 100
|
||||
) -> None:
|
||||
) -> StockEntry:
|
||||
se = frappe.new_doc("Stock Entry")
|
||||
se.purpose = "Material Receipt"
|
||||
se.company = "_Test Company"
|
||||
cost_center = frappe.get_value("Company", se.company, "cost_center")
|
||||
expense_account = frappe.get_value("Company", se.company, "stock_adjustment_account")
|
||||
|
||||
for item in items.values():
|
||||
if item.is_stock_item:
|
||||
make_stock_entry(
|
||||
item_code=item.item_code,
|
||||
qty=qty,
|
||||
to_warehouse=warehouse,
|
||||
rate=item.valuation_rate,
|
||||
purpose="Material Receipt",
|
||||
)
|
||||
se.append(
|
||||
"items",
|
||||
{
|
||||
"item_code": item.item_code,
|
||||
"t_warehouse": warehouse,
|
||||
"qty": qty,
|
||||
"basic_rate": item.valuation_rate or 100,
|
||||
"conversion_factor": 1.0,
|
||||
"transfer_qty": qty,
|
||||
"cost_center": cost_center,
|
||||
"expense_account": expense_account,
|
||||
},
|
||||
)
|
||||
|
||||
se.set_stock_entry_type()
|
||||
se.insert()
|
||||
se.submit()
|
||||
|
||||
return se
|
||||
|
||||
|
||||
def cancel_all_stock_reservation_entries() -> None:
|
||||
|
Loading…
x
Reference in New Issue
Block a user