Merge branch 'develop' of https://github.com/frappe/erpnext into e-commerce-refactor-develop
This commit is contained in:
commit
fd6f3c6b88
@ -1087,8 +1087,6 @@ class TestSalesInvoice(unittest.TestCase):
|
||||
|
||||
actual_qty_1 = get_qty_after_transaction(item_code = "_Test Item", warehouse = "Stores - TCP1")
|
||||
|
||||
frappe.db.commit()
|
||||
|
||||
self.assertEqual(actual_qty_0 - 5, actual_qty_1)
|
||||
|
||||
# outgoing_rate
|
||||
|
@ -45,7 +45,6 @@ class TestProcurementTracker(unittest.TestCase):
|
||||
pr = make_purchase_receipt(po.name)
|
||||
pr.get("items")[0].cost_center = "Main - _TPC"
|
||||
pr.submit()
|
||||
frappe.db.commit()
|
||||
date_obj = datetime.date(datetime.now())
|
||||
|
||||
po.load_from_db()
|
||||
|
@ -74,7 +74,6 @@ class TestDailyWorkSummary(unittest.TestCase):
|
||||
from `tabEmail Queue` as q, `tabEmail Queue Recipient` as r \
|
||||
where q.name = r.parent""", as_dict=1)
|
||||
|
||||
frappe.db.commit()
|
||||
|
||||
def setup_groups(self, hour=None):
|
||||
# setup email to trigger at this hour
|
||||
|
@ -1382,7 +1382,6 @@ def make_sales_order_workflow():
|
||||
|
||||
frappe.get_doc(dict(doctype='Role', role_name='Test Junior Approver')).insert(ignore_if_duplicate=True)
|
||||
frappe.get_doc(dict(doctype='Role', role_name='Test Approver')).insert(ignore_if_duplicate=True)
|
||||
frappe.db.commit()
|
||||
frappe.cache().hdel('roles', frappe.session.user)
|
||||
|
||||
workflow = frappe.get_doc({
|
||||
|
@ -1,8 +1,5 @@
|
||||
# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
|
||||
# License: GNU General Public License v3. See license.txt
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import unittest
|
||||
|
||||
import frappe
|
||||
from frappe.exceptions import ValidationError
|
||||
@ -11,9 +8,10 @@ from frappe.utils import cint, flt
|
||||
from erpnext.accounts.doctype.purchase_invoice.test_purchase_invoice import make_purchase_invoice
|
||||
from erpnext.stock.doctype.batch.batch import UnableToSelectBatchError, get_batch_no, get_batch_qty
|
||||
from erpnext.stock.get_item_details import get_item_details
|
||||
from erpnext.tests.utils import ERPNextTestCase
|
||||
|
||||
|
||||
class TestBatch(unittest.TestCase):
|
||||
class TestBatch(ERPNextTestCase):
|
||||
def test_item_has_batch_enabled(self):
|
||||
self.assertRaises(ValidationError, frappe.get_doc({
|
||||
"doctype": "Batch",
|
||||
|
@ -5,7 +5,6 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import json
|
||||
import unittest
|
||||
|
||||
import frappe
|
||||
from frappe.utils import cstr, flt, nowdate, nowtime
|
||||
@ -37,9 +36,10 @@ from erpnext.stock.doctype.stock_reconciliation.test_stock_reconciliation import
|
||||
)
|
||||
from erpnext.stock.doctype.warehouse.test_warehouse import get_warehouse
|
||||
from erpnext.stock.stock_ledger import get_previous_sle
|
||||
from erpnext.tests.utils import ERPNextTestCase
|
||||
|
||||
|
||||
class TestDeliveryNote(unittest.TestCase):
|
||||
class TestDeliveryNote(ERPNextTestCase):
|
||||
def test_over_billing_against_dn(self):
|
||||
frappe.db.set_value("Stock Settings", None, "allow_negative_stock", 1)
|
||||
|
||||
|
@ -14,11 +14,12 @@ from erpnext.stock.doctype.delivery_trip.delivery_trip import (
|
||||
make_expense_claim,
|
||||
notify_customers,
|
||||
)
|
||||
from erpnext.tests.utils import create_test_contact_and_address
|
||||
from erpnext.tests.utils import ERPNextTestCase, create_test_contact_and_address
|
||||
|
||||
|
||||
class TestDeliveryTrip(unittest.TestCase):
|
||||
class TestDeliveryTrip(ERPNextTestCase):
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
driver = create_driver()
|
||||
create_vehicle()
|
||||
create_delivery_notification()
|
||||
@ -32,6 +33,7 @@ class TestDeliveryTrip(unittest.TestCase):
|
||||
frappe.db.sql("delete from `tabVehicle`")
|
||||
frappe.db.sql("delete from `tabEmail Template`")
|
||||
frappe.db.sql("delete from `tabDelivery Trip`")
|
||||
return super().tearDown()
|
||||
|
||||
def test_expense_claim_fields_are_fetched_properly(self):
|
||||
expense_claim = make_expense_claim(self.delivery_trip.name)
|
||||
|
@ -4,7 +4,6 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import json
|
||||
import unittest
|
||||
|
||||
import frappe
|
||||
from frappe.test_runner import make_test_objects
|
||||
@ -25,7 +24,7 @@ from erpnext.stock.doctype.item.item import (
|
||||
)
|
||||
from erpnext.stock.doctype.stock_entry.stock_entry_utils import make_stock_entry
|
||||
from erpnext.stock.get_item_details import get_item_details
|
||||
from erpnext.tests.utils import change_settings
|
||||
from erpnext.tests.utils import ERPNextTestCase, change_settings
|
||||
|
||||
test_ignore = ["BOM"]
|
||||
test_dependencies = ["Warehouse", "Item Group", "Item Tax Template", "Brand", "Item Attribute"]
|
||||
@ -53,8 +52,9 @@ def make_item(item_code, properties=None):
|
||||
|
||||
return item
|
||||
|
||||
class TestItem(unittest.TestCase):
|
||||
class TestItem(ERPNextTestCase):
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
frappe.flags.attribute_values = None
|
||||
|
||||
def get_item(self, idx):
|
||||
|
@ -4,7 +4,6 @@
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import json
|
||||
import unittest
|
||||
|
||||
import frappe
|
||||
from frappe.utils import flt
|
||||
@ -21,10 +20,12 @@ from erpnext.stock.doctype.item.test_item import create_item
|
||||
from erpnext.stock.doctype.stock_reconciliation.test_stock_reconciliation import (
|
||||
create_stock_reconciliation,
|
||||
)
|
||||
from erpnext.tests.utils import ERPNextTestCase
|
||||
|
||||
|
||||
class TestItemAlternative(unittest.TestCase):
|
||||
class TestItemAlternative(ERPNextTestCase):
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
make_items()
|
||||
|
||||
def test_alternative_item_for_subcontract_rm(self):
|
||||
|
@ -3,17 +3,17 @@
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import unittest
|
||||
|
||||
import frappe
|
||||
|
||||
test_records = frappe.get_test_records('Item Attribute')
|
||||
|
||||
from erpnext.stock.doctype.item_attribute.item_attribute import ItemAttributeIncrementError
|
||||
from erpnext.tests.utils import ERPNextTestCase
|
||||
|
||||
|
||||
class TestItemAttribute(unittest.TestCase):
|
||||
class TestItemAttribute(ERPNextTestCase):
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
if frappe.db.exists("Item Attribute", "_Test_Length"):
|
||||
frappe.delete_doc("Item Attribute", "_Test_Length")
|
||||
|
||||
|
@ -3,17 +3,17 @@
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import unittest
|
||||
|
||||
import frappe
|
||||
from frappe.test_runner import make_test_records_for_doctype
|
||||
|
||||
from erpnext.stock.doctype.item_price.item_price import ItemPriceDuplicateItem
|
||||
from erpnext.stock.get_item_details import get_price_list_rate_for, process_args
|
||||
from erpnext.tests.utils import ERPNextTestCase
|
||||
|
||||
|
||||
class TestItemPrice(unittest.TestCase):
|
||||
class TestItemPrice(ERPNextTestCase):
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
frappe.db.sql("delete from `tabItem Price`")
|
||||
make_test_records_for_doctype("Item Price", force=True)
|
||||
|
||||
|
@ -4,8 +4,6 @@
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import unittest
|
||||
|
||||
import frappe
|
||||
from frappe.utils import flt
|
||||
|
||||
@ -16,9 +14,10 @@ from erpnext.stock.doctype.purchase_receipt.test_purchase_receipt import (
|
||||
get_gl_entries,
|
||||
make_purchase_receipt,
|
||||
)
|
||||
from erpnext.tests.utils import ERPNextTestCase
|
||||
|
||||
|
||||
class TestLandedCostVoucher(unittest.TestCase):
|
||||
class TestLandedCostVoucher(ERPNextTestCase):
|
||||
def test_landed_cost_voucher(self):
|
||||
frappe.db.set_value("Buying Settings", None, "allow_multiple_items", 1)
|
||||
|
||||
|
@ -6,8 +6,6 @@
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import unittest
|
||||
|
||||
import frappe
|
||||
from frappe.utils import flt, today
|
||||
|
||||
@ -18,9 +16,10 @@ from erpnext.stock.doctype.material_request.material_request import (
|
||||
make_supplier_quotation,
|
||||
raise_work_orders,
|
||||
)
|
||||
from erpnext.tests.utils import ERPNextTestCase
|
||||
|
||||
|
||||
class TestMaterialRequest(unittest.TestCase):
|
||||
class TestMaterialRequest(ERPNextTestCase):
|
||||
def test_make_purchase_order(self):
|
||||
mr = frappe.copy_doc(test_records[0]).insert()
|
||||
|
||||
|
@ -6,6 +6,8 @@ from __future__ import unicode_literals
|
||||
import unittest
|
||||
|
||||
# test_records = frappe.get_test_records('Packing Slip')
|
||||
from erpnext.tests.utils import ERPNextTestCase
|
||||
|
||||
|
||||
class TestPackingSlip(unittest.TestCase):
|
||||
pass
|
||||
|
@ -3,8 +3,6 @@
|
||||
# See license.txt
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import unittest
|
||||
|
||||
import frappe
|
||||
|
||||
test_dependencies = ['Item', 'Sales Invoice', 'Stock Entry', 'Batch']
|
||||
@ -15,9 +13,10 @@ from erpnext.stock.doctype.purchase_receipt.test_purchase_receipt import make_pu
|
||||
from erpnext.stock.doctype.stock_reconciliation.stock_reconciliation import (
|
||||
EmptyStockReconciliationItemsError,
|
||||
)
|
||||
from erpnext.tests.utils import ERPNextTestCase
|
||||
|
||||
|
||||
class TestPickList(unittest.TestCase):
|
||||
class TestPickList(ERPNextTestCase):
|
||||
|
||||
def test_pick_list_picks_warehouse_for_each_item(self):
|
||||
try:
|
||||
|
@ -17,9 +17,10 @@ from erpnext.stock.doctype.purchase_receipt.purchase_receipt import make_purchas
|
||||
from erpnext.stock.doctype.serial_no.serial_no import SerialNoDuplicateError, get_serial_nos
|
||||
from erpnext.stock.doctype.warehouse.test_warehouse import create_warehouse
|
||||
from erpnext.stock.stock_ledger import SerialNoExistsInFutureTransaction
|
||||
from erpnext.tests.utils import ERPNextTestCase
|
||||
|
||||
|
||||
class TestPurchaseReceipt(unittest.TestCase):
|
||||
class TestPurchaseReceipt(ERPNextTestCase):
|
||||
def setUp(self):
|
||||
frappe.db.set_value("Buying Settings", None, "allow_multiple_items", 1)
|
||||
|
||||
|
@ -3,8 +3,6 @@
|
||||
# See license.txt
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import unittest
|
||||
|
||||
import frappe
|
||||
|
||||
from erpnext.stock.doctype.batch.test_batch import make_new_batch
|
||||
@ -13,9 +11,10 @@ from erpnext.stock.doctype.purchase_receipt.test_purchase_receipt import make_pu
|
||||
from erpnext.stock.doctype.stock_entry.test_stock_entry import make_stock_entry
|
||||
from erpnext.stock.doctype.warehouse.test_warehouse import create_warehouse
|
||||
from erpnext.stock.get_item_details import get_conversion_factor
|
||||
from erpnext.tests.utils import ERPNextTestCase
|
||||
|
||||
|
||||
class TestPutawayRule(unittest.TestCase):
|
||||
class TestPutawayRule(ERPNextTestCase):
|
||||
def setUp(self):
|
||||
if not frappe.db.exists("Item", "_Rice"):
|
||||
make_item("_Rice", {
|
||||
|
@ -1,8 +1,6 @@
|
||||
# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors and Contributors
|
||||
# See license.txt
|
||||
|
||||
import unittest
|
||||
|
||||
import frappe
|
||||
from frappe.utils import nowdate
|
||||
|
||||
@ -15,12 +13,14 @@ from erpnext.controllers.stock_controller import (
|
||||
from erpnext.stock.doctype.delivery_note.test_delivery_note import create_delivery_note
|
||||
from erpnext.stock.doctype.item.test_item import create_item
|
||||
from erpnext.stock.doctype.stock_entry.stock_entry_utils import make_stock_entry
|
||||
from erpnext.tests.utils import ERPNextTestCase
|
||||
|
||||
# test_records = frappe.get_test_records('Quality Inspection')
|
||||
|
||||
|
||||
class TestQualityInspection(unittest.TestCase):
|
||||
class TestQualityInspection(ERPNextTestCase):
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
create_item("_Test Item with QA")
|
||||
frappe.db.set_value(
|
||||
"Item", "_Test Item with QA", "inspection_required_before_delivery", 1
|
||||
|
@ -6,8 +6,6 @@
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import unittest
|
||||
|
||||
import frappe
|
||||
|
||||
from erpnext.stock.doctype.delivery_note.test_delivery_note import create_delivery_note
|
||||
@ -20,9 +18,10 @@ test_dependencies = ["Item"]
|
||||
test_records = frappe.get_test_records('Serial No')
|
||||
|
||||
from erpnext.stock.doctype.serial_no.serial_no import *
|
||||
from erpnext.tests.utils import ERPNextTestCase
|
||||
|
||||
|
||||
class TestSerialNo(unittest.TestCase):
|
||||
class TestSerialNo(ERPNextTestCase):
|
||||
def test_cannot_create_direct(self):
|
||||
frappe.delete_doc_if_exists("Serial No", "_TCSER0001")
|
||||
|
||||
|
@ -3,15 +3,15 @@
|
||||
# See license.txt
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import unittest
|
||||
from datetime import date, timedelta
|
||||
|
||||
import frappe
|
||||
|
||||
from erpnext.stock.doctype.delivery_note.delivery_note import make_shipment
|
||||
from erpnext.tests.utils import ERPNextTestCase
|
||||
|
||||
|
||||
class TestShipment(unittest.TestCase):
|
||||
class TestShipment(ERPNextTestCase):
|
||||
def test_shipment_from_delivery_note(self):
|
||||
delivery_note = create_test_delivery_note()
|
||||
delivery_note.submit()
|
||||
@ -47,7 +47,6 @@ def create_test_delivery_note():
|
||||
}
|
||||
)
|
||||
delivery_note.insert()
|
||||
frappe.db.commit()
|
||||
return delivery_note
|
||||
|
||||
|
||||
@ -91,7 +90,6 @@ def create_test_shipment(delivery_notes = None):
|
||||
}
|
||||
)
|
||||
shipment.insert()
|
||||
frappe.db.commit()
|
||||
return shipment
|
||||
|
||||
|
||||
|
@ -3,8 +3,6 @@
|
||||
# See license.txt
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import unittest
|
||||
|
||||
import frappe
|
||||
from frappe.core.page.permission_manager.permission_manager import reset
|
||||
from frappe.utils import add_days, today
|
||||
@ -21,9 +19,10 @@ from erpnext.stock.doctype.stock_reconciliation.test_stock_reconciliation import
|
||||
create_stock_reconciliation,
|
||||
)
|
||||
from erpnext.stock.stock_ledger import get_previous_sle
|
||||
from erpnext.tests.utils import ERPNextTestCase
|
||||
|
||||
|
||||
class TestStockLedgerEntry(unittest.TestCase):
|
||||
class TestStockLedgerEntry(ERPNextTestCase):
|
||||
def setUp(self):
|
||||
items = create_items()
|
||||
reset('Stock Entry')
|
||||
|
@ -6,8 +6,6 @@
|
||||
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import unittest
|
||||
|
||||
import frappe
|
||||
from frappe.utils import add_days, flt, nowdate, nowtime, random_string
|
||||
|
||||
@ -22,12 +20,13 @@ from erpnext.stock.doctype.stock_reconciliation.stock_reconciliation import (
|
||||
from erpnext.stock.doctype.warehouse.test_warehouse import create_warehouse
|
||||
from erpnext.stock.stock_ledger import get_previous_sle, update_entries_after
|
||||
from erpnext.stock.utils import get_incoming_rate, get_stock_value_on, get_valuation_method
|
||||
from erpnext.tests.utils import change_settings
|
||||
from erpnext.tests.utils import ERPNextTestCase, change_settings
|
||||
|
||||
|
||||
class TestStockReconciliation(unittest.TestCase):
|
||||
class TestStockReconciliation(ERPNextTestCase):
|
||||
@classmethod
|
||||
def setUpClass(self):
|
||||
super().setUpClass()
|
||||
create_batch_or_serial_no_items()
|
||||
frappe.db.set_value("Stock Settings", None, "allow_negative_stock", 1)
|
||||
|
||||
@ -372,7 +371,6 @@ class TestStockReconciliation(unittest.TestCase):
|
||||
"""
|
||||
from erpnext.stock.doctype.delivery_note.test_delivery_note import create_delivery_note
|
||||
from erpnext.stock.stock_ledger import NegativeStockError
|
||||
frappe.db.commit()
|
||||
|
||||
item_code = "Backdated-Reco-Cancellation-Item"
|
||||
warehouse = "_Test Warehouse - _TC"
|
||||
@ -395,10 +393,6 @@ class TestStockReconciliation(unittest.TestCase):
|
||||
repost_exists = bool(frappe.db.exists("Repost Item Valuation", {"voucher_no": sr.name}))
|
||||
self.assertFalse(repost_exists, msg="Negative stock validation not working on reco cancellation")
|
||||
|
||||
# teardown
|
||||
frappe.db.rollback()
|
||||
|
||||
|
||||
def test_valid_batch(self):
|
||||
create_batch_item_with_batch("Testing Batch Item 1", "001")
|
||||
create_batch_item_with_batch("Testing Batch Item 2", "002")
|
||||
|
@ -7,9 +7,12 @@ import unittest
|
||||
|
||||
import frappe
|
||||
|
||||
from erpnext.tests.utils import ERPNextTestCase
|
||||
|
||||
class TestStockSettings(unittest.TestCase):
|
||||
|
||||
class TestStockSettings(ERPNextTestCase):
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
frappe.db.set_value("Stock Settings", None, "clean_description_html", 0)
|
||||
|
||||
def test_settings(self):
|
||||
|
@ -2,8 +2,6 @@
|
||||
# License: GNU General Public License v3. See license.txt
|
||||
from __future__ import unicode_literals
|
||||
|
||||
import unittest
|
||||
|
||||
import frappe
|
||||
from frappe.test_runner import make_test_records
|
||||
from frappe.utils import cint
|
||||
@ -12,11 +10,13 @@ import erpnext
|
||||
from erpnext.accounts.doctype.account.test_account import create_account, get_inventory_account
|
||||
from erpnext.stock.doctype.item.test_item import create_item
|
||||
from erpnext.stock.doctype.stock_entry.stock_entry_utils import make_stock_entry
|
||||
from erpnext.tests.utils import ERPNextTestCase
|
||||
|
||||
test_records = frappe.get_test_records('Warehouse')
|
||||
|
||||
class TestWarehouse(unittest.TestCase):
|
||||
class TestWarehouse(ERPNextTestCase):
|
||||
def setUp(self):
|
||||
super().setUp()
|
||||
if not frappe.get_value('Item', '_Test Item'):
|
||||
make_test_records('Item')
|
||||
|
||||
|
@ -5,9 +5,10 @@ from frappe import _dict
|
||||
|
||||
from erpnext.accounts.utils import get_fiscal_year
|
||||
from erpnext.stock.report.stock_analytics.stock_analytics import get_period_date_ranges
|
||||
from erpnext.tests.utils import ERPNextTestCase
|
||||
|
||||
|
||||
class TestStockAnalyticsReport(unittest.TestCase):
|
||||
class TestStockAnalyticsReport(ERPNextTestCase):
|
||||
def test_get_period_date_ranges(self):
|
||||
|
||||
filters = _dict(range="Monthly", from_date="2020-12-28", to_date="2021-02-06")
|
||||
|
@ -2,6 +2,7 @@
|
||||
# License: GNU General Public License v3. See license.txt
|
||||
|
||||
import copy
|
||||
import unittest
|
||||
from contextlib import contextmanager
|
||||
from typing import Any, Dict, NewType, Optional
|
||||
|
||||
@ -12,6 +13,21 @@ ReportFilters = Dict[str, Any]
|
||||
ReportName = NewType("ReportName", str)
|
||||
|
||||
|
||||
class ERPNextTestCase(unittest.TestCase):
|
||||
"""A sane default test class for ERPNext tests."""
|
||||
|
||||
|
||||
@classmethod
|
||||
def setUpClass(cls) -> None:
|
||||
frappe.db.commit()
|
||||
return super().setUpClass()
|
||||
|
||||
@classmethod
|
||||
def tearDownClass(cls) -> None:
|
||||
frappe.db.rollback()
|
||||
return super().tearDownClass()
|
||||
|
||||
|
||||
def create_test_contact_and_address():
|
||||
frappe.db.sql('delete from tabContact')
|
||||
frappe.db.sql('delete from `tabContact Email`')
|
||||
|
Loading…
Reference in New Issue
Block a user