From 8ce2d50706cf8884effb6987d9fde555a619fdeb Mon Sep 17 00:00:00 2001 From: Rohit Waghchaure Date: Thu, 14 Mar 2019 16:32:08 +0530 Subject: [PATCH] Added test cases --- .../patches/v12_0/stock_entry_enhancements.py | 1 + .../doctype/stock_entry/test_records.json | 10 ++++-- .../doctype/stock_entry/test_stock_entry.py | 31 ++++++++++++++++++- 3 files changed, 38 insertions(+), 4 deletions(-) diff --git a/erpnext/patches/v12_0/stock_entry_enhancements.py b/erpnext/patches/v12_0/stock_entry_enhancements.py index ef847d523b..b7f9a8b64b 100644 --- a/erpnext/patches/v12_0/stock_entry_enhancements.py +++ b/erpnext/patches/v12_0/stock_entry_enhancements.py @@ -16,6 +16,7 @@ def execute(): def create_stock_entry_types(): frappe.reload_doc('stock', 'doctype', 'stock_entry_type') + frappe.reload_doc('stock', 'doctype', 'stock_entry') for purpose in ["Material Issue", "Material Receipt", "Material Transfer", "Material Transfer for Manufacture", "Material Consumption for Manufacture", "Manufacture", diff --git a/erpnext/stock/doctype/stock_entry/test_records.json b/erpnext/stock/doctype/stock_entry/test_records.json index b1daf12ea3..c434bcc549 100644 --- a/erpnext/stock/doctype/stock_entry/test_records.json +++ b/erpnext/stock/doctype/stock_entry/test_records.json @@ -18,6 +18,7 @@ "uom": "_Test UOM" } ], + "stock_entry_type": "Material Receipt", "purpose": "Material Receipt" }, @@ -42,7 +43,8 @@ } ], "posting_date": "2013-01-25", - "purpose": "Material Issue" + "purpose": "Material Issue", + "stock_entry_type": "Material Issue" }, @@ -67,7 +69,8 @@ } ], "posting_date": "2013-01-25", - "purpose": "Material Transfer" + "purpose": "Material Transfer", + "stock_entry_type": "Material Transfer" }, @@ -104,6 +107,7 @@ "uom": "_Test UOM" } ], - "purpose": "Repack" + "purpose": "Repack", + "stock_entry_type": "Repack" } ] diff --git a/erpnext/stock/doctype/stock_entry/test_stock_entry.py b/erpnext/stock/doctype/stock_entry/test_stock_entry.py index c04962e34a..abfdf24281 100644 --- a/erpnext/stock/doctype/stock_entry/test_stock_entry.py +++ b/erpnext/stock/doctype/stock_entry/test_stock_entry.py @@ -15,7 +15,7 @@ from erpnext.stock.doctype.stock_reconciliation.test_stock_reconciliation import from erpnext.stock.doctype.item.test_item import set_item_variant_settings, make_item_variant, create_item from erpnext.stock.doctype.stock_entry.stock_entry_utils import make_stock_entry from erpnext.accounts.doctype.account.test_account import get_inventory_account -from erpnext.stock.doctype.stock_entry.stock_entry import move_sample_to_retention_warehouse +from erpnext.stock.doctype.stock_entry.stock_entry import move_sample_to_retention_warehouse, make_stock_in_entry from six import iteritems @@ -660,6 +660,7 @@ class TestStockEntry(unittest.TestCase): "cost_center": "_Test Cost Center - _TC", "sample_quantity": 4 }) + receipt_entry.set_stock_entry_type() receipt_entry.insert() receipt_entry.submit() @@ -676,6 +677,7 @@ class TestStockEntry(unittest.TestCase): "cost_center": "_Test Cost Center - _TC", "batch_no": receipt_entry.get("items")[0].batch_no }) + retention_entry.set_stock_entry_type() retention_entry.insert() retention_entry.submit() @@ -742,6 +744,33 @@ class TestStockEntry(unittest.TestCase): self.assertEqual(se.get("items")[0].allow_zero_valuation_rate, 1) self.assertEqual(se.get("items")[0].amount, 0) + def test_goods_in_transit(self): + from erpnext.stock.doctype.warehouse.test_warehouse import create_warehouse + warehouse = "_Test Warehouse FG 1 - _TC" + + if not frappe.db.exists('Warehouse', warehouse): + create_warehouse("_Test Warehouse FG 1") + + outward_entry = make_stock_entry(item_code="_Test Item", + purpose="Stock Out", + source="_Test Warehouse - _TC", + target="_Test Warehouse 1 - _TC", qty=50, basic_rate=100) + + inward_entry1 = make_stock_in_entry(outward_entry.name) + inward_entry1.items[0].t_warehouse = warehouse + inward_entry1.items[0].qty = 25 + inward_entry1.submit() + + doc = frappe.get_doc('Stock Entry', outward_entry.name) + self.assertEqual(doc.per_transferred, 50) + + inward_entry2 = make_stock_in_entry(outward_entry.name) + inward_entry2.items[0].t_warehouse = warehouse + inward_entry2.items[0].qty = 25 + inward_entry2.submit() + + doc = frappe.get_doc('Stock Entry', outward_entry.name) + self.assertEqual(doc.per_transferred, 100) def make_serialized_item(item_code=None, serial_no=None, target_warehouse=None): se = frappe.copy_doc(test_records[0])