From e7885e3ee0ff354eafd30a36c867c4b6a74cd94c Mon Sep 17 00:00:00 2001 From: Nabin Hait Date: Fri, 4 Apr 2014 13:26:50 +0530 Subject: [PATCH] frappe/frappe#478 replaced doclist in testcases --- .../journal_voucher/journal_voucher.py | 20 +- .../journal_voucher/test_journal_voucher.py | 46 ++--- .../test_period_closing_voucher.py | 6 +- .../purchase_invoice/test_purchase_invoice.py | 8 +- .../sales_invoice/test_sales_invoice.py | 46 ++--- .../shipping_rule/test_shipping_rule.py | 12 +- .../purchase_order/test_purchase_order.py | 4 +- .../production_order/test_production_order.py | 2 +- .../time_log_batch/test_time_log_batch.py | 2 +- .../doctype/sales_order/test_sales_order.py | 64 +++---- erpnext/setup/install.py | 3 +- .../delivery_note/test_delivery_note.py | 36 ++-- .../material_request/test_material_request.py | 3 +- .../purchase_receipt/test_purchase_receipt.py | 16 +- .../doctype/stock_entry/test_stock_entry.py | 174 +++++++++--------- .../test_stock_reconciliation.py | 32 ++-- 16 files changed, 236 insertions(+), 238 deletions(-) diff --git a/erpnext/accounts/doctype/journal_voucher/journal_voucher.py b/erpnext/accounts/doctype/journal_voucher/journal_voucher.py index 9829a17954..ff50dcde60 100644 --- a/erpnext/accounts/doctype/journal_voucher/journal_voucher.py +++ b/erpnext/accounts/doctype/journal_voucher/journal_voucher.py @@ -353,13 +353,13 @@ def get_payment_entry_from_sales_invoice(sales_invoice): jv.remark = 'Payment received against Sales Invoice {0}. {1}'.format(si.name, si.remarks) # credit customer - jv.doclist[1].account = si.debit_to - jv.doclist[1].balance = get_balance_on(si.debit_to) - jv.doclist[1].credit = si.outstanding_amount - jv.doclist[1].against_invoice = si.name + jv["entries"][0].account = si.debit_to + jv["entries"][0].balance = get_balance_on(si.debit_to) + jv["entries"][0].credit = si.outstanding_amount + jv["entries"][0].against_invoice = si.name # debit bank - jv.doclist[2].debit = si.outstanding_amount + jv["entries"][1].debit = si.outstanding_amount return jv.as_dict() @@ -371,13 +371,13 @@ def get_payment_entry_from_purchase_invoice(purchase_invoice): jv.remark = 'Payment against Purchase Invoice {0}. {1}'.format(pi.name, pi.remarks) # credit supplier - jv.doclist[1].account = pi.credit_to - jv.doclist[1].balance = get_balance_on(pi.credit_to) - jv.doclist[1].debit = pi.outstanding_amount - jv.doclist[1].against_voucher = pi.name + jv["entries"][0].account = pi.credit_to + jv["entries"][0].balance = get_balance_on(pi.credit_to) + jv["entries"][0].debit = pi.outstanding_amount + jv["entries"][0].against_voucher = pi.name # credit bank - jv.doclist[2].credit = pi.outstanding_amount + jv["entries"][1].credit = pi.outstanding_amount return jv.as_dict() diff --git a/erpnext/accounts/doctype/journal_voucher/test_journal_voucher.py b/erpnext/accounts/doctype/journal_voucher/test_journal_voucher.py index c3a3d85ae9..19c3cefec1 100644 --- a/erpnext/accounts/doctype/journal_voucher/test_journal_voucher.py +++ b/erpnext/accounts/doctype/journal_voucher/test_journal_voucher.py @@ -9,7 +9,7 @@ import frappe class TestJournalVoucher(unittest.TestCase): def test_journal_voucher_with_against_jv(self): self.clear_account_balance() - jv_invoice = frappe.copy_doc(test_records[2]) + jv_invoice = frappe.copy_doc(test_records[1]) jv_invoice.insert() jv_invoice.submit() @@ -17,7 +17,7 @@ class TestJournalVoucher(unittest.TestCase): where against_jv=%s""", jv_invoice.name)) jv_payment = frappe.copy_doc(test_records[0]) - jv_payment.doclist[1].against_jv = jv_invoice.name + jv_payment["entries"][0].against_jv = jv_invoice.name jv_payment.insert() jv_payment.submit() @@ -38,7 +38,7 @@ class TestJournalVoucher(unittest.TestCase): set_perpetual_inventory() jv = frappe.copy_doc(test_records[0]) - jv.doclist[1].account = "_Test Warehouse - _TC" + jv["entries"][0].account = "_Test Warehouse - _TC" jv.insert() from erpnext.accounts.general_ledger import StockAccountInvalidTransaction @@ -51,10 +51,10 @@ class TestJournalVoucher(unittest.TestCase): self.clear_account_balance() jv = frappe.copy_doc(test_records[0]) - jv.doclist[2].account = "_Test Account Cost for Goods Sold - _TC" - jv.doclist[2].cost_center = "_Test Cost Center - _TC" - jv.doclist[2].debit = 20000.0 - jv.doclist[1].credit = 20000.0 + jv["entries"][1].account = "_Test Account Cost for Goods Sold - _TC" + jv["entries"][1].cost_center = "_Test Cost Center - _TC" + jv["entries"][1].debit = 20000.0 + jv["entries"][0].credit = 20000.0 jv.insert() jv.submit() self.assertTrue(frappe.db.get_value("GL Entry", @@ -66,10 +66,10 @@ class TestJournalVoucher(unittest.TestCase): self.clear_account_balance() jv = frappe.copy_doc(test_records[0]) - jv.doclist[2].account = "_Test Account Cost for Goods Sold - _TC" - jv.doclist[2].cost_center = "_Test Cost Center - _TC" - jv.doclist[2].debit = 20000.0 - jv.doclist[1].credit = 20000.0 + jv["entries"][1].account = "_Test Account Cost for Goods Sold - _TC" + jv["entries"][1].cost_center = "_Test Cost Center - _TC" + jv["entries"][1].debit = 20000.0 + jv["entries"][0].credit = 20000.0 jv.insert() self.assertRaises(BudgetError, jv.submit) @@ -85,10 +85,10 @@ class TestJournalVoucher(unittest.TestCase): jv = frappe.copy_doc(test_records[0]) jv.posting_date = "2013-08-12" - jv.doclist[2].account = "_Test Account Cost for Goods Sold - _TC" - jv.doclist[2].cost_center = "_Test Cost Center - _TC" - jv.doclist[2].debit = 150000.0 - jv.doclist[1].credit = 150000.0 + jv["entries"][1].account = "_Test Account Cost for Goods Sold - _TC" + jv["entries"][1].cost_center = "_Test Cost Center - _TC" + jv["entries"][1].debit = 150000.0 + jv["entries"][0].credit = 150000.0 jv.insert() self.assertRaises(BudgetError, jv.submit) @@ -101,20 +101,20 @@ class TestJournalVoucher(unittest.TestCase): self.clear_account_balance() jv = frappe.copy_doc(test_records[0]) - jv.doclist[1].account = "_Test Account Cost for Goods Sold - _TC" - jv.doclist[1].cost_center = "_Test Cost Center - _TC" - jv.doclist[1].credit = 30000.0 - jv.doclist[2].debit = 30000.0 + jv["entries"][0].account = "_Test Account Cost for Goods Sold - _TC" + jv["entries"][0].cost_center = "_Test Cost Center - _TC" + jv["entries"][0].credit = 30000.0 + jv["entries"][1].debit = 30000.0 jv.submit() self.assertTrue(frappe.db.get_value("GL Entry", {"voucher_type": "Journal Voucher", "voucher_no": jv.name})) jv1 = frappe.copy_doc(test_records[0]) - jv1.doclist[2].account = "_Test Account Cost for Goods Sold - _TC" - jv1.doclist[2].cost_center = "_Test Cost Center - _TC" - jv1.doclist[2].debit = 40000.0 - jv1.doclist[1].credit = 40000.0 + jv1["entries"][1].account = "_Test Account Cost for Goods Sold - _TC" + jv1["entries"][1].cost_center = "_Test Cost Center - _TC" + jv1["entries"][1].debit = 40000.0 + jv1["entries"][0].credit = 40000.0 jv1.submit() self.assertTrue(frappe.db.get_value("GL Entry", diff --git a/erpnext/accounts/doctype/period_closing_voucher/test_period_closing_voucher.py b/erpnext/accounts/doctype/period_closing_voucher/test_period_closing_voucher.py index 12facd8aa3..1a31989f03 100644 --- a/erpnext/accounts/doctype/period_closing_voucher/test_period_closing_voucher.py +++ b/erpnext/accounts/doctype/period_closing_voucher/test_period_closing_voucher.py @@ -17,9 +17,9 @@ class TestPeriodClosingVoucher(unittest.TestCase): jv.submit() jv1 = frappe.copy_doc(jv_records[0]) - jv1.doclist[2].account = "_Test Account Cost for Goods Sold - _TC" - jv1.doclist[2].debit = 600.0 - jv1.doclist[1].credit = 600.0 + jv1["entries"][1].account = "_Test Account Cost for Goods Sold - _TC" + jv1["entries"][1].debit = 600.0 + jv1["entries"][0].credit = 600.0 jv1.insert() jv1.submit() diff --git a/erpnext/accounts/doctype/purchase_invoice/test_purchase_invoice.py b/erpnext/accounts/doctype/purchase_invoice/test_purchase_invoice.py index cb5cd31c5d..30425fe23f 100644 --- a/erpnext/accounts/doctype/purchase_invoice/test_purchase_invoice.py +++ b/erpnext/accounts/doctype/purchase_invoice/test_purchase_invoice.py @@ -74,8 +74,8 @@ class TestPurchaseInvoice(unittest.TestCase): self.assertEqual(cint(frappe.defaults.get_global_default("auto_accounting_for_stock")), 1) pi = frappe.copy_doc(test_records[1]) - pi.doclist[1].item_code = "_Test Non Stock Item" - pi.doclist[1].expense_account = "_Test Account Cost for Goods Sold - _TC" + pi["entries"][0].item_code = "_Test Non Stock Item" + pi["entries"][0].expense_account = "_Test Account Cost for Goods Sold - _TC" pi.doclist.pop(2) pi.doclist.pop(3) pi.insert() @@ -133,7 +133,7 @@ class TestPurchaseInvoice(unittest.TestCase): def test_purchase_invoice_with_subcontracted_item(self): wrapper = frappe.copy_doc(test_records[0]) - wrapper.doclist[1].item_code = "_Test FG Item" + wrapper["entries"][0].item_code = "_Test FG Item" wrapper.insert() wrapper.load_from_db() @@ -176,7 +176,7 @@ class TestPurchaseInvoice(unittest.TestCase): pi = frappe.copy_doc(test_records[0]) pi.append("advance_allocation_details", { "journal_voucher": jv.name, - "jv_detail_no": jv.doclist[1].name, + "jv_detail_no": jv["entries"][0].name, "advance_amount": 400, "allocated_amount": 300, "remarks": jv.remark diff --git a/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py b/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py index 75a9ab53e6..fdeb075e6d 100644 --- a/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py +++ b/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py @@ -89,10 +89,10 @@ class TestSalesInvoice(unittest.TestCase): si = frappe.copy_doc(test_records[2]) si.currency = "USD" si.conversion_rate = 50 - si.doclist[1].rate = 1 - si.doclist[1].price_list_rate = 1 - si.doclist[2].rate = 3 - si.doclist[2].price_list_rate = 3 + si["entries"][0].rate = 1 + si["entries"][0].price_list_rate = 1 + si["entries"][1].rate = 3 + si["entries"][1].price_list_rate = 3 si.insert() expected_values = { @@ -243,8 +243,8 @@ class TestSalesInvoice(unittest.TestCase): for i, tax in enumerate(si.get("other_charges")): tax.idx = i+1 - si.doclist[1].price_list_rate = 62.5 - si.doclist[1].price_list_rate = 191 + si["entries"][0].price_list_rate = 62.5 + si["entries"][0].price_list_rate = 191 for i in [3, 5, 6, 7, 8, 9]: si.doclist[i].included_in_print_rate = 1 @@ -305,10 +305,10 @@ class TestSalesInvoice(unittest.TestCase): si = frappe.copy_doc(test_records[3]) si.currency = "USD" si.conversion_rate = 50 - si.doclist[1].price_list_rate = 55.56 - si.doclist[1].discount_percentage = 10 - si.doclist[2].price_list_rate = 187.5 - si.doclist[2].discount_percentage = 20 + si["entries"][0].price_list_rate = 55.56 + si["entries"][0].discount_percentage = 10 + si["entries"][1].price_list_rate = 187.5 + si["entries"][1].discount_percentage = 20 si.doclist[9].rate = 5000 si.insert() @@ -365,7 +365,7 @@ class TestSalesInvoice(unittest.TestCase): import test_records as jv_test_records jv = frappe.get_doc(frappe.copy_doc(jv_test_records[0])) - jv.doclist[1].against_invoice = w.name + jv["entries"][0].against_invoice = w.name jv.insert() jv.submit() @@ -381,7 +381,7 @@ class TestSalesInvoice(unittest.TestCase): tlb.submit() si = frappe.get_doc(frappe.copy_doc(test_records[0])) - si.doclist[1].time_log_batch = "_T-Time Log Batch-00001" + si["entries"][0].time_log_batch = "_T-Time Log Batch-00001" si.insert() si.submit() @@ -501,7 +501,7 @@ class TestSalesInvoice(unittest.TestCase): as pr_test_records pr = frappe.copy_doc(pr_test_records[0]) pr.naming_series = "_T-Purchase Receipt-" - pr.doclist[1].warehouse = "_Test Warehouse No Account - _TC" + pr["entries"][0].warehouse = "_Test Warehouse No Account - _TC" pr.insert() pr.submit() @@ -638,7 +638,7 @@ class TestSalesInvoice(unittest.TestCase): si.append("advance_adjustment_details", { "doctype": "Sales Invoice Advance", "journal_voucher": jv.name, - "jv_detail_no": jv.doclist[1].name, + "jv_detail_no": jv["entries"][0].name, "advance_amount": 400, "allocated_amount": 300, "remarks": jv.remark @@ -808,13 +808,13 @@ class TestSalesInvoice(unittest.TestCase): from erpnext.stock.doctype.serial_no.serial_no import get_serial_nos se = make_serialized_item() - serial_nos = get_serial_nos(se.doclist[1].serial_no) + serial_nos = get_serial_nos(se["entries"][0].serial_no) si = frappe.copy_doc(test_records[0]) si.update_stock = 1 - si.doclist[1].item_code = "_Test Serialized Item With Series" - si.doclist[1].qty = 1 - si.doclist[1].serial_no = serial_nos[0] + si["entries"][0].item_code = "_Test Serialized Item With Series" + si["entries"][0].qty = 1 + si["entries"][0].serial_no = serial_nos[0] si.insert() si.submit() @@ -830,7 +830,7 @@ class TestSalesInvoice(unittest.TestCase): si = self.test_serialized() si.cancel() - serial_nos = get_serial_nos(si.doclist[1].serial_no) + serial_nos = get_serial_nos(si["entries"][0].serial_no) self.assertEquals(frappe.db.get_value("Serial No", serial_nos[0], "status"), "Available") self.assertEquals(frappe.db.get_value("Serial No", serial_nos[0], "warehouse"), "_Test Warehouse - _TC") @@ -842,7 +842,7 @@ class TestSalesInvoice(unittest.TestCase): from erpnext.stock.doctype.stock_entry.test_stock_entry import make_serialized_item se = make_serialized_item() - serial_nos = get_serial_nos(se.doclist[1].serial_no) + serial_nos = get_serial_nos(se["entries"][0].serial_no) sr = frappe.get_doc("Serial No", serial_nos[0]) sr.status = "Not Available" @@ -850,9 +850,9 @@ class TestSalesInvoice(unittest.TestCase): si = frappe.copy_doc(test_records[0]) si.update_stock = 1 - si.doclist[1].item_code = "_Test Serialized Item With Series" - si.doclist[1].qty = 1 - si.doclist[1].serial_no = serial_nos[0] + si["entries"][0].item_code = "_Test Serialized Item With Series" + si["entries"][0].qty = 1 + si["entries"][0].serial_no = serial_nos[0] si.insert() self.assertRaises(SerialNoStatusError, si.submit) diff --git a/erpnext/accounts/doctype/shipping_rule/test_shipping_rule.py b/erpnext/accounts/doctype/shipping_rule/test_shipping_rule.py index 9fee555213..ce07f146b1 100644 --- a/erpnext/accounts/doctype/shipping_rule/test_shipping_rule.py +++ b/erpnext/accounts/doctype/shipping_rule/test_shipping_rule.py @@ -10,12 +10,12 @@ test_records = frappe.get_test_records('Shipping Rule') class TestShippingRule(unittest.TestCase): def test_from_greater_than_to(self): shipping_rule = frappe.copy_doc(test_records[0]) - shipping_rule.doclist[1].from_value = 101 + shipping_rule["shipping_rule_conditions"][0].from_value = 101 self.assertRaises(FromGreaterThanToError, shipping_rule.insert) def test_many_zero_to_values(self): shipping_rule = frappe.copy_doc(test_records[0]) - shipping_rule.doclist[1].to_value = 0 + shipping_rule["shipping_rule_conditions"][0].to_value = 0 self.assertRaises(ManyBlankToValuesError, shipping_rule.insert) def test_overlapping_conditions(self): @@ -27,8 +27,8 @@ class TestShippingRule(unittest.TestCase): ((50, 150), (50, 150)), ]: shipping_rule = frappe.copy_doc(test_records[0]) - shipping_rule.doclist[1].from_value = range_a[0] - shipping_rule.doclist[1].to_value = range_a[1] - shipping_rule.doclist[2].from_value = range_b[0] - shipping_rule.doclist[2].to_value = range_b[1] + shipping_rule["shipping_rule_conditions"][0].from_value = range_a[0] + shipping_rule["shipping_rule_conditions"][0].to_value = range_a[1] + shipping_rule["shipping_rule_conditions"][1].from_value = range_b[0] + shipping_rule["shipping_rule_conditions"][1].to_value = range_b[1] self.assertRaises(OverlappingConditionError, shipping_rule.insert) \ No newline at end of file diff --git a/erpnext/buying/doctype/purchase_order/test_purchase_order.py b/erpnext/buying/doctype/purchase_order/test_purchase_order.py index 358023383d..104baf9e4b 100644 --- a/erpnext/buying/doctype/purchase_order/test_purchase_order.py +++ b/erpnext/buying/doctype/purchase_order/test_purchase_order.py @@ -41,7 +41,7 @@ class TestPurchaseOrder(unittest.TestCase): po = frappe.get_doc("Purchase Order", po.name) po.is_subcontracted = "No" - po.doclist[1].item_code = "_Test Item" + po["po_details"][0].item_code = "_Test Item" po.submit() self.assertEquals(frappe.db.get_value("Bin", {"item_code": "_Test Item", @@ -107,7 +107,7 @@ class TestPurchaseOrder(unittest.TestCase): def test_uom_integer_validation(self): from erpnext.utilities.transaction_base import UOMMustBeIntegerError po = frappe.copy_doc(test_records[0]) - po.doclist[1].qty = 3.4 + po["po_details"][0].qty = 3.4 self.assertRaises(UOMMustBeIntegerError, po.insert) diff --git a/erpnext/manufacturing/doctype/production_order/test_production_order.py b/erpnext/manufacturing/doctype/production_order/test_production_order.py index d7d41988bb..31889b51f8 100644 --- a/erpnext/manufacturing/doctype/production_order/test_production_order.py +++ b/erpnext/manufacturing/doctype/production_order/test_production_order.py @@ -27,7 +27,7 @@ class TestProductionOrder(unittest.TestCase): mr1.submit() mr2 = frappe.copy_doc(se_test_records[0]) - mr2.doclist[1].item_code = "_Test Item Home Desktop 100" + mr2["mtn_details"][0].item_code = "_Test Item Home Desktop 100" mr2.insert() mr2.submit() diff --git a/erpnext/projects/doctype/time_log_batch/test_time_log_batch.py b/erpnext/projects/doctype/time_log_batch/test_time_log_batch.py index eaf498c2d6..004c3643ac 100644 --- a/erpnext/projects/doctype/time_log_batch/test_time_log_batch.py +++ b/erpnext/projects/doctype/time_log_batch/test_time_log_batch.py @@ -17,7 +17,7 @@ class TimeLogBatchTest(unittest.TestCase): self.assertEquals(frappe.db.get_value("Time Log", time_log.name, "status"), "Submitted") tlb = frappe.copy_doc(test_records[0]) - tlb.doclist[1].time_log = time_log.name + tlb["time_log_batch_details"][0].time_log = time_log.name tlb.insert() tlb.submit() diff --git a/erpnext/selling/doctype/sales_order/test_sales_order.py b/erpnext/selling/doctype/sales_order/test_sales_order.py index 435ad65757..1e71f5cee8 100644 --- a/erpnext/selling/doctype/sales_order/test_sales_order.py +++ b/erpnext/selling/doctype/sales_order/test_sales_order.py @@ -78,14 +78,14 @@ class TestSalesOrder(unittest.TestCase): from erpnext.stock.doctype.delivery_note.test_delivery_note import test_records as dn_test_records from erpnext.stock.doctype.delivery_note.test_delivery_note import _insert_purchase_receipt - _insert_purchase_receipt(so.doclist[1].item_code) + _insert_purchase_receipt(so["sales_order_details"][0].item_code) dn = frappe.get_doc(frappe.copy_doc(dn_test_records[0])) - dn.doclist[1].item_code = so.doclist[1].item_code - dn.doclist[1].against_sales_order = so.name - dn.doclist[1].prevdoc_detail_docname = so.doclist[1].name + dn["delivery_note_details"][0].item_code = so["sales_order_details"][0].item_code + dn["delivery_note_details"][0].against_sales_order = so.name + dn["delivery_note_details"][0].prevdoc_detail_docname = so["sales_order_details"][0].name if delivered_qty: - dn.doclist[1].qty = delivered_qty + dn["delivery_note_details"][0].qty = delivered_qty dn.insert() dn.submit() return dn @@ -110,11 +110,11 @@ class TestSalesOrder(unittest.TestCase): # submit so = self.create_so() - self.check_reserved_qty(so.doclist[1].item_code, so.doclist[1].warehouse, 10.0) + self.check_reserved_qty(so["sales_order_details"][0].item_code, so["sales_order_details"][0].warehouse, 10.0) # cancel so.cancel() - self.check_reserved_qty(so.doclist[1].item_code, so.doclist[1].warehouse, 0.0) + self.check_reserved_qty(so["sales_order_details"][0].item_code, so["sales_order_details"][0].warehouse, 0.0) def test_reserved_qty_for_partial_delivery(self): @@ -130,21 +130,21 @@ class TestSalesOrder(unittest.TestCase): # submit dn dn = self.create_dn_against_so(so) - self.check_reserved_qty(so.doclist[1].item_code, so.doclist[1].warehouse, 5.0) + self.check_reserved_qty(so["sales_order_details"][0].item_code, so["sales_order_details"][0].warehouse, 5.0) # stop so so.load_from_db() so.obj.stop_sales_order() - self.check_reserved_qty(so.doclist[1].item_code, so.doclist[1].warehouse, 0.0) + self.check_reserved_qty(so["sales_order_details"][0].item_code, so["sales_order_details"][0].warehouse, 0.0) # unstop so so.load_from_db() so.obj.unstop_sales_order() - self.check_reserved_qty(so.doclist[1].item_code, so.doclist[1].warehouse, 5.0) + self.check_reserved_qty(so["sales_order_details"][0].item_code, so["sales_order_details"][0].warehouse, 5.0) # cancel dn dn.cancel() - self.check_reserved_qty(so.doclist[1].item_code, so.doclist[1].warehouse, 10.0) + self.check_reserved_qty(so["sales_order_details"][0].item_code, so["sales_order_details"][0].warehouse, 10.0) def test_reserved_qty_for_over_delivery(self): # reset bin @@ -157,15 +157,15 @@ class TestSalesOrder(unittest.TestCase): frappe.db.set_default("allow_negative_stock", 1) # set over-delivery tolerance - frappe.db.set_value('Item', so.doclist[1].item_code, 'tolerance', 50) + frappe.db.set_value('Item', so["sales_order_details"][0].item_code, 'tolerance', 50) # submit dn dn = self.create_dn_against_so(so, 15) - self.check_reserved_qty(so.doclist[1].item_code, so.doclist[1].warehouse, 0.0) + self.check_reserved_qty(so["sales_order_details"][0].item_code, so["sales_order_details"][0].warehouse, 0.0) # cancel dn dn.cancel() - self.check_reserved_qty(so.doclist[1].item_code, so.doclist[1].warehouse, 10.0) + self.check_reserved_qty(so["sales_order_details"][0].item_code, so["sales_order_details"][0].warehouse, 10.0) def test_reserved_qty_for_so_with_packing_list(self): from erpnext.selling.doctype.sales_bom.test_sales_bom import test_records as sbom_test_records @@ -183,16 +183,16 @@ class TestSalesOrder(unittest.TestCase): self.check_reserved_qty(sbom_test_records[0][1]["item_code"], - so.doclist[1].warehouse, 50.0) + so["sales_order_details"][0].warehouse, 50.0) self.check_reserved_qty(sbom_test_records[0][2]["item_code"], - so.doclist[1].warehouse, 20.0) + so["sales_order_details"][0].warehouse, 20.0) # cancel so.cancel() self.check_reserved_qty(sbom_test_records[0][1]["item_code"], - so.doclist[1].warehouse, 0.0) + so["sales_order_details"][0].warehouse, 0.0) self.check_reserved_qty(sbom_test_records[0][2]["item_code"], - so.doclist[1].warehouse, 0.0) + so["sales_order_details"][0].warehouse, 0.0) def test_reserved_qty_for_partial_delivery_with_packing_list(self): from erpnext.selling.doctype.sales_bom.test_sales_bom import test_records as sbom_test_records @@ -216,33 +216,33 @@ class TestSalesOrder(unittest.TestCase): dn = self.create_dn_against_so(so) self.check_reserved_qty(sbom_test_records[0][1]["item_code"], - so.doclist[1].warehouse, 25.0) + so["sales_order_details"][0].warehouse, 25.0) self.check_reserved_qty(sbom_test_records[0][2]["item_code"], - so.doclist[1].warehouse, 10.0) + so["sales_order_details"][0].warehouse, 10.0) # stop so so.load_from_db() so.obj.stop_sales_order() self.check_reserved_qty(sbom_test_records[0][1]["item_code"], - so.doclist[1].warehouse, 0.0) + so["sales_order_details"][0].warehouse, 0.0) self.check_reserved_qty(sbom_test_records[0][2]["item_code"], - so.doclist[1].warehouse, 0.0) + so["sales_order_details"][0].warehouse, 0.0) # unstop so so.load_from_db() so.obj.unstop_sales_order() self.check_reserved_qty(sbom_test_records[0][1]["item_code"], - so.doclist[1].warehouse, 25.0) + so["sales_order_details"][0].warehouse, 25.0) self.check_reserved_qty(sbom_test_records[0][2]["item_code"], - so.doclist[1].warehouse, 10.0) + so["sales_order_details"][0].warehouse, 10.0) # cancel dn dn.cancel() self.check_reserved_qty(sbom_test_records[0][1]["item_code"], - so.doclist[1].warehouse, 50.0) + so["sales_order_details"][0].warehouse, 50.0) self.check_reserved_qty(sbom_test_records[0][2]["item_code"], - so.doclist[1].warehouse, 20.0) + so["sales_order_details"][0].warehouse, 20.0) def test_reserved_qty_for_over_delivery_with_packing_list(self): from erpnext.selling.doctype.sales_bom.test_sales_bom import test_records as sbom_test_records @@ -262,22 +262,22 @@ class TestSalesOrder(unittest.TestCase): frappe.db.set_default("allow_negative_stock", 1) # set over-delivery tolerance - frappe.db.set_value('Item', so.doclist[1].item_code, 'tolerance', 50) + frappe.db.set_value('Item', so["sales_order_details"][0].item_code, 'tolerance', 50) # submit dn dn = self.create_dn_against_so(so, 15) self.check_reserved_qty(sbom_test_records[0][1]["item_code"], - so.doclist[1].warehouse, 0.0) + so["sales_order_details"][0].warehouse, 0.0) self.check_reserved_qty(sbom_test_records[0][2]["item_code"], - so.doclist[1].warehouse, 0.0) + so["sales_order_details"][0].warehouse, 0.0) # cancel dn dn.cancel() self.check_reserved_qty(sbom_test_records[0][1]["item_code"], - so.doclist[1].warehouse, 50.0) + so["sales_order_details"][0].warehouse, 50.0) self.check_reserved_qty(sbom_test_records[0][2]["item_code"], - so.doclist[1].warehouse, 20.0) + so["sales_order_details"][0].warehouse, 20.0) def test_warehouse_user(self): frappe.defaults.add_default("Warehouse", "_Test Warehouse 1 - _TC1", "test@example.com", "Restriction") @@ -293,7 +293,7 @@ class TestSalesOrder(unittest.TestCase): so.company = "_Test Company 1" so.conversion_rate = 0.02 so.plc_conversion_rate = 0.02 - so.doclist[1].warehouse = "_Test Warehouse 2 - _TC1" + so["sales_order_details"][0].warehouse = "_Test Warehouse 2 - _TC1" self.assertRaises(frappe.PermissionError, so.insert) frappe.set_user("test2@example.com") diff --git a/erpnext/setup/install.py b/erpnext/setup/install.py index 94d435ecc6..5128e36e8c 100644 --- a/erpnext/setup/install.py +++ b/erpnext/setup/install.py @@ -137,8 +137,7 @@ def feature_setup(): doc.save() def set_single_defaults(): - for dt in frappe.db.sql_list("""select name from `tabDocType` - where issingle=1 and parent != '__default'"""): + for dt in frappe.db.sql_list("""select name from `tabDocType` where issingle=1"""): default_values = frappe.db.sql("""select fieldname, `default` from `tabDocField` where parent=%s""", dt) if default_values: diff --git a/erpnext/stock/doctype/delivery_note/test_delivery_note.py b/erpnext/stock/doctype/delivery_note/test_delivery_note.py index 1ee4993cec..e54b5c02dd 100644 --- a/erpnext/stock/doctype/delivery_note/test_delivery_note.py +++ b/erpnext/stock/doctype/delivery_note/test_delivery_note.py @@ -14,7 +14,7 @@ def _insert_purchase_receipt(item_code=None): item_code = pr_test_records[0][1]["item_code"] pr = frappe.copy_doc(pr_test_records[0]) - pr.doclist[1].item_code = item_code + pr["purchase_receipt_details"][0].item_code = item_code pr.insert() pr.submit() @@ -69,11 +69,11 @@ class TestDeliveryNote(unittest.TestCase): _insert_purchase_receipt() dn = frappe.copy_doc(test_records[0]) - dn.doclist[1].expense_account = "Cost of Goods Sold - _TC" - dn.doclist[1].cost_center = "Main - _TC" + dn["delivery_note_details"][0].expense_account = "Cost of Goods Sold - _TC" + dn["delivery_note_details"][0].cost_center = "Main - _TC" stock_in_hand_account = frappe.db.get_value("Account", - {"master_name": dn.doclist[1].warehouse}) + {"master_name": dn["delivery_note_details"][0].warehouse}) from erpnext.accounts.utils import get_balance_on prev_bal = get_balance_on(stock_in_hand_account, dn.posting_date) @@ -97,8 +97,8 @@ class TestDeliveryNote(unittest.TestCase): # back dated purchase receipt pr = frappe.copy_doc(pr_test_records[0]) pr.posting_date = "2013-01-01" - pr.doclist[1].rate = 100 - pr.doclist[1].base_amount = 100 + pr["purchase_receipt_details"][0].rate = 100 + pr["purchase_receipt_details"][0].base_amount = 100 pr.insert() pr.submit() @@ -124,11 +124,11 @@ class TestDeliveryNote(unittest.TestCase): _insert_purchase_receipt("_Test Item Home Desktop 100") dn = frappe.copy_doc(test_records[0]) - dn.doclist[1].item_code = "_Test Sales BOM Item" - dn.doclist[1].qty = 1 + dn["delivery_note_details"][0].item_code = "_Test Sales BOM Item" + dn["delivery_note_details"][0].qty = 1 stock_in_hand_account = frappe.db.get_value("Account", - {"master_name": dn.doclist[1].warehouse}) + {"master_name": dn["delivery_note_details"][0].warehouse}) from erpnext.accounts.utils import get_balance_on prev_bal = get_balance_on(stock_in_hand_account, dn.posting_date) @@ -160,12 +160,12 @@ class TestDeliveryNote(unittest.TestCase): from erpnext.stock.doctype.serial_no.serial_no import get_serial_nos se = make_serialized_item() - serial_nos = get_serial_nos(se.doclist[1].serial_no) + serial_nos = get_serial_nos(se["mtn_details"][0].serial_no) dn = frappe.copy_doc(test_records[0]) - dn.doclist[1].item_code = "_Test Serialized Item With Series" - dn.doclist[1].qty = 1 - dn.doclist[1].serial_no = serial_nos[0] + dn["delivery_note_details"][0].item_code = "_Test Serialized Item With Series" + dn["delivery_note_details"][0].qty = 1 + dn["delivery_note_details"][0].serial_no = serial_nos[0] dn.insert() dn.submit() @@ -181,7 +181,7 @@ class TestDeliveryNote(unittest.TestCase): dn = self.test_serialized() dn.cancel() - serial_nos = get_serial_nos(dn.doclist[1].serial_no) + serial_nos = get_serial_nos(dn["delivery_note_details"][0].serial_no) self.assertEquals(frappe.db.get_value("Serial No", serial_nos[0], "status"), "Available") self.assertEquals(frappe.db.get_value("Serial No", serial_nos[0], "warehouse"), "_Test Warehouse - _TC") @@ -193,16 +193,16 @@ class TestDeliveryNote(unittest.TestCase): from erpnext.stock.doctype.stock_entry.test_stock_entry import make_serialized_item se = make_serialized_item() - serial_nos = get_serial_nos(se.doclist[1].serial_no) + serial_nos = get_serial_nos(se["mtn_details"][0].serial_no) sr = frappe.get_doc("Serial No", serial_nos[0]) sr.status = "Not Available" sr.save() dn = frappe.copy_doc(test_records[0]) - dn.doclist[1].item_code = "_Test Serialized Item With Series" - dn.doclist[1].qty = 1 - dn.doclist[1].serial_no = serial_nos[0] + dn["delivery_note_details"][0].item_code = "_Test Serialized Item With Series" + dn["delivery_note_details"][0].qty = 1 + dn["delivery_note_details"][0].serial_no = serial_nos[0] dn.insert() self.assertRaises(SerialNoStatusError, dn.submit) diff --git a/erpnext/stock/doctype/material_request/test_material_request.py b/erpnext/stock/doctype/material_request/test_material_request.py index 14b9f2821f..9c51f7baa9 100644 --- a/erpnext/stock/doctype/material_request/test_material_request.py +++ b/erpnext/stock/doctype/material_request/test_material_request.py @@ -104,8 +104,7 @@ class TestMaterialRequest(unittest.TestCase): "t_warehouse": "_Test Warehouse 1 - _TC", } ] - }, - ]) + }) se.insert() se.submit() diff --git a/erpnext/stock/doctype/purchase_receipt/test_purchase_receipt.py b/erpnext/stock/doctype/purchase_receipt/test_purchase_receipt.py index 4c2b3a001c..74939b6996 100644 --- a/erpnext/stock/doctype/purchase_receipt/test_purchase_receipt.py +++ b/erpnext/stock/doctype/purchase_receipt/test_purchase_receipt.py @@ -65,9 +65,9 @@ class TestPurchaseReceipt(unittest.TestCase): self.assertTrue(gl_entries) stock_in_hand_account = frappe.db.get_value("Account", - {"master_name": pr.doclist[1].warehouse}) + {"master_name": pr["purchase_receipt_details"][0].warehouse}) fixed_asset_account = frappe.db.get_value("Account", - {"master_name": pr.doclist[2].warehouse}) + {"master_name": pr["purchase_receipt_details"][1].warehouse}) expected_values = { stock_in_hand_account: [375.0, 0.0], @@ -94,18 +94,18 @@ class TestPurchaseReceipt(unittest.TestCase): pr.run_method("calculate_taxes_and_totals") pr.insert() - self.assertEquals(pr.doclist[1].rm_supp_cost, 70000.0) + self.assertEquals(pr["purchase_receipt_details"][0].rm_supp_cost, 70000.0) self.assertEquals(len(pr.get("pr_raw_material_details")), 2) def test_serial_no_supplier(self): pr = frappe.copy_doc(test_records[0]) - pr.doclist[1].item_code = "_Test Serialized Item With Series" - pr.doclist[1].qty = 1 - pr.doclist[1].received_qty = 1 + pr["purchase_receipt_details"][0].item_code = "_Test Serialized Item With Series" + pr["purchase_receipt_details"][0].qty = 1 + pr["purchase_receipt_details"][0].received_qty = 1 pr.insert() pr.submit() - self.assertEquals(frappe.db.get_value("Serial No", pr.doclist[1].serial_no, + self.assertEquals(frappe.db.get_value("Serial No", pr["purchase_receipt_details"][0].serial_no, "supplier"), pr.supplier) return pr @@ -114,7 +114,7 @@ class TestPurchaseReceipt(unittest.TestCase): pr = self.test_serial_no_supplier() pr.cancel() - self.assertFalse(frappe.db.get_value("Serial No", pr.doclist[1].serial_no, + self.assertFalse(frappe.db.get_value("Serial No", pr["purchase_receipt_details"][0].serial_no, "warehouse")) def get_gl_entries(voucher_type, voucher_no): diff --git a/erpnext/stock/doctype/stock_entry/test_stock_entry.py b/erpnext/stock/doctype/stock_entry/test_stock_entry.py index 8c764ee892..00718f14a8 100644 --- a/erpnext/stock/doctype/stock_entry/test_stock_entry.py +++ b/erpnext/stock/doctype/stock_entry/test_stock_entry.py @@ -50,7 +50,7 @@ class TestStockEntry(unittest.TestCase): mr.submit() stock_in_hand_account = frappe.db.get_value("Account", {"account_type": "Warehouse", - "master_name": mr.doclist[1].t_warehouse}) + "master_name": mr["mtn_details"][0].t_warehouse}) self.check_stock_ledger_entries("Stock Entry", mr.name, [["_Test Item", "_Test Warehouse - _TC", 50.0]]) @@ -85,7 +85,7 @@ class TestStockEntry(unittest.TestCase): [["_Test Item", "_Test Warehouse - _TC", -40.0]]) stock_in_hand_account = frappe.db.get_value("Account", {"account_type": "Warehouse", - "master_name": mi.doclist[1].s_warehouse}) + "master_name": mi["mtn_details"][0].s_warehouse}) self.check_gl_entries("Stock Entry", mi.name, sorted([ @@ -101,11 +101,11 @@ class TestStockEntry(unittest.TestCase): self.assertFalse(frappe.db.sql("""select * from `tabGL Entry` where voucher_type='Stock Entry' and voucher_no=%s""", mi.name)) - self.assertEquals(frappe.db.get_value("Bin", {"warehouse": mi.doclist[1].s_warehouse, - "item_code": mi.doclist[1].item_code}, "actual_qty"), 50) + self.assertEquals(frappe.db.get_value("Bin", {"warehouse": mi["mtn_details"][0].s_warehouse, + "item_code": mi["mtn_details"][0].item_code}, "actual_qty"), 50) - self.assertEquals(frappe.db.get_value("Bin", {"warehouse": mi.doclist[1].s_warehouse, - "item_code": mi.doclist[1].item_code}, "stock_value"), 5000) + self.assertEquals(frappe.db.get_value("Bin", {"warehouse": mi["mtn_details"][0].s_warehouse, + "item_code": mi["mtn_details"][0].item_code}, "stock_value"), 5000) def test_material_transfer_gl_entry(self): self._clear_stock_account_balance() @@ -121,10 +121,10 @@ class TestStockEntry(unittest.TestCase): [["_Test Item", "_Test Warehouse - _TC", -45.0], ["_Test Item", "_Test Warehouse 1 - _TC", 45.0]]) stock_in_hand_account = frappe.db.get_value("Account", {"account_type": "Warehouse", - "master_name": mtn.doclist[1].s_warehouse}) + "master_name": mtn["mtn_details"][0].s_warehouse}) fixed_asset_account = frappe.db.get_value("Account", {"account_type": "Warehouse", - "master_name": mtn.doclist[1].t_warehouse}) + "master_name": mtn["mtn_details"][0].t_warehouse}) self.check_gl_entries("Stock Entry", mtn.name, @@ -171,12 +171,12 @@ class TestStockEntry(unittest.TestCase): self._insert_material_receipt() repack = frappe.copy_doc(test_records[3]) - repack.doclist[2].incoming_rate = 6000 + repack["mtn_details"][1].incoming_rate = 6000 repack.insert() repack.submit() stock_in_hand_account = frappe.db.get_value("Account", {"account_type": "Warehouse", - "master_name": repack.doclist[2].t_warehouse}) + "master_name": repack["mtn_details"][1].t_warehouse}) self.check_gl_entries("Stock Entry", repack.name, sorted([ @@ -223,7 +223,7 @@ class TestStockEntry(unittest.TestCase): se1.submit() se2 = frappe.copy_doc(test_records[0]) - se2.doclist[1].item_code = "_Test Item Home Desktop 100" + se2["mtn_details"][0].item_code = "_Test Item Home Desktop 100" se2.insert() se2.submit() @@ -247,8 +247,8 @@ class TestStockEntry(unittest.TestCase): se = frappe.copy_doc(test_records[0]) se.purpose = "Sales Return" se.sales_invoice_no = si.name - se.doclist[1].qty = returned_qty - se.doclist[1].transfer_qty = returned_qty + se["mtn_details"][0].qty = returned_qty + se["mtn_details"][0].transfer_qty = returned_qty self.assertRaises(NotUpdateStockError, se.insert) self._insert_material_receipt() @@ -259,9 +259,9 @@ class TestStockEntry(unittest.TestCase): # insert a pos invoice with update stock si = frappe.copy_doc(sales_invoice_test_records[1]) si.is_pos = si.update_stock = 1 - si.doclist[1].warehouse = "_Test Warehouse - _TC" - si.doclist[1].item_code = item_code - si.doclist[1].qty = 5.0 + si["mtn_details"][0].warehouse = "_Test Warehouse - _TC" + si["mtn_details"][0].item_code = item_code + si["mtn_details"][0].qty = 5.0 si.insert() si.submit() @@ -276,9 +276,9 @@ class TestStockEntry(unittest.TestCase): se.sales_invoice_no = si.name se.posting_date = "2013-03-10" se.fiscal_year = "_Test Fiscal Year 2013" - se.doclist[1].item_code = "_Test Item Home Desktop 200" - se.doclist[1].qty = returned_qty - se.doclist[1].transfer_qty = returned_qty + se["mtn_details"][0].item_code = "_Test Item Home Desktop 200" + se["mtn_details"][0].qty = returned_qty + se["mtn_details"][0].transfer_qty = returned_qty # check if stock entry gets submitted self.assertRaises(frappe.DoesNotExistError, se.insert) @@ -289,8 +289,8 @@ class TestStockEntry(unittest.TestCase): se.posting_date = "2013-03-10" se.fiscal_year = "_Test Fiscal Year 2013" se.sales_invoice_no = si.name - se.doclist[1].qty = returned_qty - se.doclist[1].transfer_qty = returned_qty + se["mtn_details"][0].qty = returned_qty + se["mtn_details"][0].transfer_qty = returned_qty # in both cases item code remains _Test Item when returning se.insert() @@ -322,7 +322,7 @@ class TestStockEntry(unittest.TestCase): actual_qty_0 = self._get_actual_qty() # make a delivery note based on this invoice dn = frappe.copy_doc(delivery_note_test_records[0]) - dn.doclist[1].item_code = item_code + dn["delivery_note_details"][0].item_code = item_code dn.insert() dn.submit() @@ -347,7 +347,7 @@ class TestStockEntry(unittest.TestCase): se.delivery_note_no = dn.name se.posting_date = "2013-03-10" se.fiscal_year = "_Test Fiscal Year 2013" - se.doclist[1].qty = se.doclist[1].transfer_qty = returned_qty + se["mtn_details"][0].qty = se["mtn_details"][0].transfer_qty = returned_qty se.insert() se.submit() @@ -411,8 +411,8 @@ class TestStockEntry(unittest.TestCase): actual_qty_0 = self._get_actual_qty() so = frappe.copy_doc(sales_order_test_records[0]) - so.doclist[1].item_code = item_code - so.doclist[1].qty = 5.0 + so["sales_order_details"][0].item_code = item_code + so["sales_order_details"][0].qty = 5.0 so.insert() so.submit() @@ -445,7 +445,7 @@ class TestStockEntry(unittest.TestCase): se.delivery_note_no = dn.name se.posting_date = "2013-03-10" se.fiscal_year = "_Test Fiscal Year 2013" - se.doclist[1].qty = se.doclist[1].transfer_qty = returned_qty + se["mtn_details"][0].qty = se["mtn_details"][0].transfer_qty = returned_qty se.insert() se.submit() @@ -497,8 +497,8 @@ class TestStockEntry(unittest.TestCase): se.purchase_receipt_no = pr.name se.posting_date = "2013-03-01" se.fiscal_year = "_Test Fiscal Year 2013" - se.doclist[1].qty = se.doclist[1].transfer_qty = 5 - se.doclist[1].s_warehouse = "_Test Warehouse - _TC" + se["mtn_details"][0].qty = se["mtn_details"][0].transfer_qty = 5 + se["mtn_details"][0].s_warehouse = "_Test Warehouse - _TC" se.insert() se.submit() @@ -523,8 +523,8 @@ class TestStockEntry(unittest.TestCase): se.purchase_receipt_no = pr_docname se.posting_date = "2013-03-01" se.fiscal_year = "_Test Fiscal Year 2013" - se.doclist[1].qty = se.doclist[1].transfer_qty = 6 - se.doclist[1].s_warehouse = "_Test Warehouse - _TC" + se["mtn_details"][0].qty = se["mtn_details"][0].transfer_qty = 6 + se["mtn_details"][0].s_warehouse = "_Test Warehouse - _TC" self.assertRaises(StockOverReturnError, se.insert) @@ -561,8 +561,8 @@ class TestStockEntry(unittest.TestCase): # submit purchase receipt po = frappe.copy_doc(purchase_order_test_records[0]) po.is_subcontracted = None - po.doclist[1].item_code = "_Test Item" - po.doclist[1].rate = 50 + po["po_details"][0].item_code = "_Test Item" + po["po_details"][0].rate = 50 po.insert() po.submit() @@ -599,8 +599,8 @@ class TestStockEntry(unittest.TestCase): se.purchase_receipt_no = pr.name se.posting_date = "2013-03-01" se.fiscal_year = "_Test Fiscal Year 2013" - se.doclist[1].qty = se.doclist[1].transfer_qty = 5 - se.doclist[1].s_warehouse = "_Test Warehouse - _TC" + se["mtn_details"][0].qty = se["mtn_details"][0].transfer_qty = 5 + se["mtn_details"][0].s_warehouse = "_Test Warehouse - _TC" se.insert() se.submit() @@ -622,43 +622,43 @@ class TestStockEntry(unittest.TestCase): def test_serial_no_not_reqd(self): se = frappe.copy_doc(test_records[0]) - se.doclist[1].serial_no = "ABCD" + se["mtn_details"][0].serial_no = "ABCD" se.insert() self.assertRaises(SerialNoNotRequiredError, se.submit) def test_serial_no_reqd(self): se = frappe.copy_doc(test_records[0]) - se.doclist[1].item_code = "_Test Serialized Item" - se.doclist[1].qty = 2 - se.doclist[1].transfer_qty = 2 + se["mtn_details"][0].item_code = "_Test Serialized Item" + se["mtn_details"][0].qty = 2 + se["mtn_details"][0].transfer_qty = 2 se.insert() self.assertRaises(SerialNoRequiredError, se.submit) def test_serial_no_qty_more(self): se = frappe.copy_doc(test_records[0]) - se.doclist[1].item_code = "_Test Serialized Item" - se.doclist[1].qty = 2 - se.doclist[1].serial_no = "ABCD\nEFGH\nXYZ" - se.doclist[1].transfer_qty = 2 + se["mtn_details"][0].item_code = "_Test Serialized Item" + se["mtn_details"][0].qty = 2 + se["mtn_details"][0].serial_no = "ABCD\nEFGH\nXYZ" + se["mtn_details"][0].transfer_qty = 2 se.insert() self.assertRaises(SerialNoQtyError, se.submit) def test_serial_no_qty_less(self): se = frappe.copy_doc(test_records[0]) - se.doclist[1].item_code = "_Test Serialized Item" - se.doclist[1].qty = 2 - se.doclist[1].serial_no = "ABCD" - se.doclist[1].transfer_qty = 2 + se["mtn_details"][0].item_code = "_Test Serialized Item" + se["mtn_details"][0].qty = 2 + se["mtn_details"][0].serial_no = "ABCD" + se["mtn_details"][0].transfer_qty = 2 se.insert() self.assertRaises(SerialNoQtyError, se.submit) def test_serial_no_transfer_in(self): self._clear_stock_account_balance() se = frappe.copy_doc(test_records[0]) - se.doclist[1].item_code = "_Test Serialized Item" - se.doclist[1].qty = 2 - se.doclist[1].serial_no = "ABCD\nEFGH" - se.doclist[1].transfer_qty = 2 + se["mtn_details"][0].item_code = "_Test Serialized Item" + se["mtn_details"][0].qty = 2 + se["mtn_details"][0].serial_no = "ABCD\nEFGH" + se["mtn_details"][0].transfer_qty = 2 se.insert() se.submit() @@ -672,12 +672,12 @@ class TestStockEntry(unittest.TestCase): self._clear_stock_account_balance() se = frappe.copy_doc(test_records[0]) se.purpose = "Material Issue" - se.doclist[1].item_code = "_Test Serialized Item" - se.doclist[1].qty = 2 - se.doclist[1].s_warehouse = "_Test Warehouse 1 - _TC" - se.doclist[1].t_warehouse = None - se.doclist[1].serial_no = "ABCD\nEFGH" - se.doclist[1].transfer_qty = 2 + se["mtn_details"][0].item_code = "_Test Serialized Item" + se["mtn_details"][0].qty = 2 + se["mtn_details"][0].s_warehouse = "_Test Warehouse 1 - _TC" + se["mtn_details"][0].t_warehouse = None + se["mtn_details"][0].serial_no = "ABCD\nEFGH" + se["mtn_details"][0].transfer_qty = 2 se.insert() self.assertRaises(SerialNoNotExistsError, se.submit) @@ -686,10 +686,10 @@ class TestStockEntry(unittest.TestCase): self.test_serial_by_series() se = frappe.copy_doc(test_records[0]) - se.doclist[1].item_code = "_Test Serialized Item With Series" - se.doclist[1].qty = 1 - se.doclist[1].serial_no = "ABCD00001" - se.doclist[1].transfer_qty = 1 + se["mtn_details"][0].item_code = "_Test Serialized Item With Series" + se["mtn_details"][0].qty = 1 + se["mtn_details"][0].serial_no = "ABCD00001" + se["mtn_details"][0].transfer_qty = 1 se.insert() self.assertRaises(SerialNoDuplicateError, se.submit) @@ -697,7 +697,7 @@ class TestStockEntry(unittest.TestCase): self._clear_stock_account_balance() se = make_serialized_item() - serial_nos = get_serial_nos(se.doclist[1].serial_no) + serial_nos = get_serial_nos(se["mtn_details"][0].serial_no) self.assertTrue(frappe.db.exists("Serial No", serial_nos[0])) self.assertTrue(frappe.db.exists("Serial No", serial_nos[1])) @@ -710,28 +710,28 @@ class TestStockEntry(unittest.TestCase): se = frappe.copy_doc(test_records[0]) se.purpose = "Material Transfer" - se.doclist[1].item_code = "_Test Serialized Item" - se.doclist[1].qty = 1 - se.doclist[1].transfer_qty = 1 - se.doclist[1].serial_no = "ABCD00001" - se.doclist[1].s_warehouse = "_Test Warehouse - _TC" - se.doclist[1].t_warehouse = "_Test Warehouse 1 - _TC" + se["mtn_details"][0].item_code = "_Test Serialized Item" + se["mtn_details"][0].qty = 1 + se["mtn_details"][0].transfer_qty = 1 + se["mtn_details"][0].serial_no = "ABCD00001" + se["mtn_details"][0].s_warehouse = "_Test Warehouse - _TC" + se["mtn_details"][0].t_warehouse = "_Test Warehouse 1 - _TC" se.insert() self.assertRaises(SerialNoItemError, se.submit) def test_serial_move(self): self._clear_stock_account_balance() se = make_serialized_item() - serial_no = get_serial_nos(se.doclist[1].serial_no)[0] + serial_no = get_serial_nos(se["mtn_details"][0].serial_no)[0] se = frappe.copy_doc(test_records[0]) se.purpose = "Material Transfer" - se.doclist[1].item_code = "_Test Serialized Item With Series" - se.doclist[1].qty = 1 - se.doclist[1].transfer_qty = 1 - se.doclist[1].serial_no = serial_no - se.doclist[1].s_warehouse = "_Test Warehouse - _TC" - se.doclist[1].t_warehouse = "_Test Warehouse 1 - _TC" + se["mtn_details"][0].item_code = "_Test Serialized Item With Series" + se["mtn_details"][0].qty = 1 + se["mtn_details"][0].transfer_qty = 1 + se["mtn_details"][0].serial_no = serial_no + se["mtn_details"][0].s_warehouse = "_Test Warehouse - _TC" + se["mtn_details"][0].t_warehouse = "_Test Warehouse 1 - _TC" se.insert() se.submit() self.assertTrue(frappe.db.get_value("Serial No", serial_no, "warehouse"), "_Test Warehouse 1 - _TC") @@ -745,12 +745,12 @@ class TestStockEntry(unittest.TestCase): se = frappe.copy_doc(test_records[0]) se.purpose = "Material Transfer" - se.doclist[1].item_code = "_Test Serialized Item With Series" - se.doclist[1].qty = 1 - se.doclist[1].transfer_qty = 1 - se.doclist[1].serial_no = "ABCD00001" - se.doclist[1].s_warehouse = "_Test Warehouse 1 - _TC" - se.doclist[1].t_warehouse = "_Test Warehouse - _TC" + se["mtn_details"][0].item_code = "_Test Serialized Item With Series" + se["mtn_details"][0].qty = 1 + se["mtn_details"][0].transfer_qty = 1 + se["mtn_details"][0].serial_no = "ABCD00001" + se["mtn_details"][0].s_warehouse = "_Test Warehouse 1 - _TC" + se["mtn_details"][0].t_warehouse = "_Test Warehouse - _TC" se.insert() self.assertRaises(SerialNoWarehouseError, se.submit) @@ -759,7 +759,7 @@ class TestStockEntry(unittest.TestCase): se = self.test_serial_by_series() se.cancel() - serial_no = get_serial_nos(se.doclist[1].serial_no)[0] + serial_no = get_serial_nos(se["mtn_details"][0].serial_no)[0] self.assertFalse(frappe.db.get_value("Serial No", serial_no, "warehouse")) def test_warehouse_company_validation(self): @@ -771,7 +771,7 @@ class TestStockEntry(unittest.TestCase): from erpnext.stock.utils import InvalidWarehouseCompany st1 = frappe.copy_doc(test_records[0]) - st1.doclist[1].t_warehouse="_Test Warehouse 2 - _TC1" + st1["mtn_details"][0].t_warehouse="_Test Warehouse 2 - _TC1" st1.insert() self.assertRaises(InvalidWarehouseCompany, st1.submit) @@ -790,13 +790,13 @@ class TestStockEntry(unittest.TestCase): frappe.set_user("test@example.com") st1 = frappe.copy_doc(test_records[0]) st1.company = "_Test Company 1" - st1.doclist[1].t_warehouse="_Test Warehouse 2 - _TC1" + st1["mtn_details"][0].t_warehouse="_Test Warehouse 2 - _TC1" self.assertRaises(frappe.PermissionErrorp, st1.insert) frappe.set_user("test2@example.com") st1 = frappe.copy_doc(test_records[0]) st1.company = "_Test Company 1" - st1.doclist[1].t_warehouse="_Test Warehouse 2 - _TC1" + st1["mtn_details"][0].t_warehouse="_Test Warehouse 2 - _TC1" st1.insert() st1.submit() @@ -822,9 +822,9 @@ class TestStockEntry(unittest.TestCase): def make_serialized_item(): se = frappe.copy_doc(test_records[0]) - se.doclist[1].item_code = "_Test Serialized Item With Series" - se.doclist[1].qty = 2 - se.doclist[1].transfer_qty = 2 + se["mtn_details"][0].item_code = "_Test Serialized Item With Series" + se["mtn_details"][0].qty = 2 + se["mtn_details"][0].transfer_qty = 2 se.insert() se.submit() return se diff --git a/erpnext/stock/doctype/stock_reconciliation/test_stock_reconciliation.py b/erpnext/stock/doctype/stock_reconciliation/test_stock_reconciliation.py index 083879de53..0553830755 100644 --- a/erpnext/stock/doctype/stock_reconciliation/test_stock_reconciliation.py +++ b/erpnext/stock/doctype/stock_reconciliation/test_stock_reconciliation.py @@ -228,9 +228,9 @@ class TestStockReconciliation(unittest.TestCase): pr1 = frappe.copy_doc(stock_entry) pr1.posting_date = "2012-12-15" pr1.posting_time = "02:00" - pr1.doclist[1].qty = 10 - pr1.doclist[1].transfer_qty = 10 - pr1.doclist[1].incoming_rate = 700 + pr1["mtn_details"][0].qty = 10 + pr1["mtn_details"][0].transfer_qty = 10 + pr1["mtn_details"][0].incoming_rate = 700 pr1.insert() pr1.submit() @@ -238,11 +238,11 @@ class TestStockReconciliation(unittest.TestCase): pr2.posting_date = "2012-12-25" pr2.posting_time = "03:00" pr2.purpose = "Material Issue" - pr2.doclist[1].s_warehouse = "_Test Warehouse - _TC" - pr2.doclist[1].t_warehouse = None - pr2.doclist[1].qty = 15 - pr2.doclist[1].transfer_qty = 15 - pr2.doclist[1].incoming_rate = 0 + pr2["mtn_details"][0].s_warehouse = "_Test Warehouse - _TC" + pr2["mtn_details"][0].t_warehouse = None + pr2["mtn_details"][0].qty = 15 + pr2["mtn_details"][0].transfer_qty = 15 + pr2["mtn_details"][0].incoming_rate = 0 pr2.insert() pr2.submit() @@ -250,11 +250,11 @@ class TestStockReconciliation(unittest.TestCase): pr3.posting_date = "2012-12-31" pr3.posting_time = "08:00" pr3.purpose = "Material Issue" - pr3.doclist[1].s_warehouse = "_Test Warehouse - _TC" - pr3.doclist[1].t_warehouse = None - pr3.doclist[1].qty = 20 - pr3.doclist[1].transfer_qty = 20 - pr3.doclist[1].incoming_rate = 0 + pr3["mtn_details"][0].s_warehouse = "_Test Warehouse - _TC" + pr3["mtn_details"][0].t_warehouse = None + pr3["mtn_details"][0].qty = 20 + pr3["mtn_details"][0].transfer_qty = 20 + pr3["mtn_details"][0].incoming_rate = 0 pr3.insert() pr3.submit() @@ -263,9 +263,9 @@ class TestStockReconciliation(unittest.TestCase): pr4.posting_date = "2013-01-05" pr4.fiscal_year = "_Test Fiscal Year 2013" pr4.posting_time = "07:00" - pr4.doclist[1].qty = 15 - pr4.doclist[1].transfer_qty = 15 - pr4.doclist[1].incoming_rate = 1200 + pr4["mtn_details"][0].qty = 15 + pr4["mtn_details"][0].transfer_qty = 15 + pr4["mtn_details"][0].incoming_rate = 1200 pr4.insert() pr4.submit()