test: auto create purchase receipt

(cherry picked from commit 59887bbc13)
This commit is contained in:
Ninad1306
2024-10-22 17:00:11 +05:30
committed by Mergify
parent 58a3ef7aa6
commit 40927c7413

View File

@@ -1075,18 +1075,42 @@ class TestSubcontractingReceipt(FrappeTestCase):
@change_settings("Buying Settings", {"auto_create_purchase_receipt": 1})
def test_auto_create_purchase_receipt(self):
from erpnext.buying.doctype.purchase_order.test_purchase_order import create_purchase_order
fg_item = "Subcontracted Item SA1"
service_items = [
{
"warehouse": "_Test Warehouse - _TC",
"item_code": "Subcontracted Service Item 1",
"qty": 5,
"qty": 10,
"rate": 100,
"fg_item": fg_item,
"fg_item_qty": 5,
},
]
sco = get_subcontracting_order(service_items=service_items)
po = create_purchase_order(
rm_items=service_items,
is_subcontracted=1,
supplier_warehouse="_Test Warehouse 1 - _TC",
do_not_submit=True,
)
po.append(
"taxes",
{
"account_head": "_Test Account Excise Duty - _TC",
"charge_type": "On Net Total",
"cost_center": "_Test Cost Center - _TC",
"description": "Excise Duty",
"doctype": "Purchase Taxes and Charges",
"rate": 10,
},
)
po.save()
po.submit()
sco = get_subcontracting_order(po_name=po.name)
rm_items = get_rm_items(sco.supplied_items)
itemwise_details = make_stock_in_entry(rm_items=rm_items)
make_stock_transfer_entry(
@@ -1094,11 +1118,24 @@ class TestSubcontractingReceipt(FrappeTestCase):
rm_items=rm_items,
itemwise_details=copy.deepcopy(itemwise_details),
)
scr = make_subcontracting_receipt(sco.name)
scr.items[0].qty = 3
scr.save()
scr.submit()
self.assertTrue(frappe.db.get_value("Purchase Receipt", {"subcontracting_receipt": scr.name}))
pr_details = frappe.get_all(
"Purchase Receipt",
filters={"subcontracting_receipt": scr.name},
fields=["name", "total_taxes_and_charges"],
)
self.assertTrue(pr_details)
pr_qty = frappe.db.get_value("Purchase Receipt Item", {"parent": pr_details[0]["name"]}, "qty")
self.assertEqual(pr_qty, 6)
self.assertEqual(pr_details[0]["total_taxes_and_charges"], 60)
def test_use_serial_batch_fields_for_subcontracting_receipt(self):
fg_item = make_item(