mirror of
https://github.com/frappe/erpnext.git
synced 2026-08-12 22:21:50 +00:00
test: job card start and completion blocked until material transfer
(cherry picked from commit c95705dc64)
This commit is contained in:
@@ -361,6 +361,31 @@ class TestJobCard(ERPNextTestSuite):
|
||||
# JC is Completed with excess transfer
|
||||
self.assertEqual(job_card.status, "Completed")
|
||||
|
||||
def test_job_card_actions_blocked_until_material_transfer(self):
|
||||
"Start and Complete must wait for the transfer when RMs move against Job Card."
|
||||
self.transfer_material_against = "Job Card"
|
||||
self.source_warehouse = "Stores - _TC"
|
||||
|
||||
self.generate_required_stock(self.work_order)
|
||||
job_card = frappe.get_last_doc("Job Card", {"work_order": self.work_order.name})
|
||||
|
||||
self.assertRaises(frappe.ValidationError, job_card.start_timer, start_time=now())
|
||||
self.assertRaises(frappe.ValidationError, job_card.complete_job_card, qty=2, for_quantity=2)
|
||||
|
||||
transfer_entry = make_stock_entry_from_jc(job_card.name)
|
||||
transfer_entry.insert()
|
||||
transfer_entry.submit()
|
||||
|
||||
job_card.reload()
|
||||
job_card.append("time_logs", {"from_time": "2024-03-01 08:00:00"})
|
||||
job_card.save()
|
||||
job_card.complete_job_card(
|
||||
qty=2, for_quantity=2, pending_qty=0, process_loss_qty=0, end_time="2024-03-01 09:00:00"
|
||||
)
|
||||
|
||||
job_card.reload()
|
||||
self.assertEqual(flt(job_card.total_completed_qty), 2)
|
||||
|
||||
@ERPNextTestSuite.change_settings("Manufacturing Settings", {"job_card_excess_transfer": 0})
|
||||
def test_job_card_excess_material_transfer_block(self):
|
||||
self.transfer_material_against = "Job Card"
|
||||
|
||||
Reference in New Issue
Block a user