refactor(test): remove AccountsTestMixin from Sales Order

(cherry picked from commit 2aecf0103a)
This commit is contained in:
ruthra kumar
2026-03-27 12:12:48 +05:30
parent ee61d79631
commit 05f47bbf6e

View File

@@ -10,7 +10,6 @@ from frappe.core.doctype.user_permission.test_user_permission import create_user
from frappe.tests import change_settings from frappe.tests import change_settings
from frappe.utils import add_days, flt, nowdate, today from frappe.utils import add_days, flt, nowdate, today
from erpnext.accounts.test.accounts_mixin import AccountsTestMixin
from erpnext.controllers.accounts_controller import InvalidQtyError, get_due_date, update_child_qty_rate from erpnext.controllers.accounts_controller import InvalidQtyError, get_due_date, update_child_qty_rate
from erpnext.maintenance.doctype.maintenance_schedule.test_maintenance_schedule import ( from erpnext.maintenance.doctype.maintenance_schedule.test_maintenance_schedule import (
make_maintenance_schedule, make_maintenance_schedule,
@@ -35,10 +34,7 @@ from erpnext.stock.get_item_details import get_bin_details
from erpnext.tests.utils import ERPNextTestSuite from erpnext.tests.utils import ERPNextTestSuite
class TestSalesOrder(ERPNextTestSuite, AccountsTestMixin): class TestSalesOrder(ERPNextTestSuite):
def setUp(self):
self.create_customer("_Test Customer Credit")
@ERPNextTestSuite.change_settings( @ERPNextTestSuite.change_settings(
"Stock Settings", "Stock Settings",
{ {
@@ -2439,7 +2435,7 @@ class TestSalesOrder(ERPNextTestSuite, AccountsTestMixin):
def test_credit_limit_on_so_reopning(self): def test_credit_limit_on_so_reopning(self):
# set credit limit # set credit limit
company = "_Test Company" company = "_Test Company"
customer = frappe.get_doc("Customer", self.customer) customer = frappe.get_doc("Customer", "_Test Customer")
customer.credit_limits = [] customer.credit_limits = []
customer.append( customer.append(
"credit_limits", {"company": company, "credit_limit": 1000, "bypass_credit_limit_check": False} "credit_limits", {"company": company, "credit_limit": 1000, "bypass_credit_limit_check": False}
@@ -2447,35 +2443,33 @@ class TestSalesOrder(ERPNextTestSuite, AccountsTestMixin):
customer.save() customer.save()
so1 = make_sales_order(qty=9, rate=100, do_not_submit=True) so1 = make_sales_order(qty=9, rate=100, do_not_submit=True)
so1.customer = self.customer so1.customer = customer.name
so1.save().submit() so1.save().submit()
so1.update_status("Closed") so1.update_status("Closed")
so2 = make_sales_order(qty=9, rate=100, do_not_submit=True) so2 = make_sales_order(qty=9, rate=100, do_not_submit=True)
so2.customer = self.customer so2.customer = customer.name
so2.save().submit() so2.save().submit()
self.assertRaises(frappe.ValidationError, so1.update_status, "Draft") self.assertRaises(frappe.ValidationError, so1.update_status, "Draft")
@ERPNextTestSuite.change_settings("Stock Settings", {"enable_stock_reservation": True}) @ERPNextTestSuite.change_settings("Stock Settings", {"enable_stock_reservation": True})
def test_warehouse_mapping_based_on_stock_reservation(self): def test_warehouse_mapping_based_on_stock_reservation(self):
self.create_company(company_name="Glass Ceiling", abbr="GC") warehouse = "Stores - _TC"
self.create_item("Lamy Safari 2", True, self.warehouse_stores, self.company, 2000) warehouse_finished = "Finished Goods - _TC"
self.create_customer()
self.clear_old_entries()
so = frappe.new_doc("Sales Order") so = frappe.new_doc("Sales Order")
so.company = self.company so.company = "_Test Company"
so.customer = self.customer so.customer = "_Test Customer"
so.transaction_date = today() so.transaction_date = today()
so.append( so.append(
"items", "items",
{ {
"item_code": self.item, "item_code": "_Test Item",
"qty": 10, "qty": 10,
"rate": 2000, "rate": 2000,
"warehouse": self.warehouse_stores, "warehouse": "Stores - _TC",
"delivery_date": today(), "delivery_date": today(),
}, },
) )
@@ -2485,12 +2479,12 @@ class TestSalesOrder(ERPNextTestSuite, AccountsTestMixin):
se = frappe.get_doc( se = frappe.get_doc(
{ {
"doctype": "Stock Entry", "doctype": "Stock Entry",
"company": self.company, "company": "_Test Company",
"stock_entry_type": "Material Receipt", "stock_entry_type": "Material Receipt",
"posting_date": today(), "posting_date": today(),
"items": [ "items": [
{"item_code": self.item, "t_warehouse": self.warehouse_stores, "qty": 5}, {"item_code": "_Test Item", "t_warehouse": warehouse, "qty": 5},
{"item_code": self.item, "t_warehouse": self.warehouse_finished_goods, "qty": 5}, {"item_code": "_Test Item", "t_warehouse": warehouse_finished, "qty": 5},
], ],
} }
) )
@@ -2503,7 +2497,7 @@ class TestSalesOrder(ERPNextTestSuite, AccountsTestMixin):
{ {
"sales_order_item": itm.name, "sales_order_item": itm.name,
"item_code": itm.item_code, "item_code": itm.item_code,
"warehouse": self.warehouse_stores, "warehouse": warehouse,
"qty_to_reserve": 2, "qty_to_reserve": 2,
} }
] ]
@@ -2513,7 +2507,7 @@ class TestSalesOrder(ERPNextTestSuite, AccountsTestMixin):
{ {
"sales_order_item": itm.name, "sales_order_item": itm.name,
"item_code": itm.item_code, "item_code": itm.item_code,
"warehouse": self.warehouse_finished_goods, "warehouse": warehouse_finished,
"qty_to_reserve": 3, "qty_to_reserve": 3,
} }
] ]
@@ -2523,31 +2517,31 @@ class TestSalesOrder(ERPNextTestSuite, AccountsTestMixin):
dn = make_delivery_note(so.name, kwargs={"for_reserved_stock": True}) dn = make_delivery_note(so.name, kwargs={"for_reserved_stock": True})
self.assertEqual(2, len(dn.items)) self.assertEqual(2, len(dn.items))
self.assertEqual(dn.items[0].qty, 2) self.assertEqual(dn.items[0].qty, 2)
self.assertEqual(dn.items[0].warehouse, self.warehouse_stores) self.assertEqual(dn.items[0].warehouse, warehouse)
self.assertEqual(dn.items[1].qty, 3) self.assertEqual(dn.items[1].qty, 3)
self.assertEqual(dn.items[1].warehouse, self.warehouse_finished_goods) self.assertEqual(dn.items[1].warehouse, warehouse_finished)
from erpnext.stock.doctype.warehouse.test_warehouse import create_warehouse from erpnext.stock.doctype.warehouse.test_warehouse import create_warehouse
warehouse = create_warehouse("Test Warehouse 1", company=self.company) warehouse = create_warehouse("Test Warehouse 1", company="_Test Company")
make_stock_entry( make_stock_entry(
item_code=self.item, item_code="_Test Item",
target=warehouse, target=warehouse,
qty=5, qty=5,
company=self.company, company="_Test Company",
) )
so = frappe.new_doc("Sales Order") so = frappe.new_doc("Sales Order")
so.reserve_stock = 1 so.reserve_stock = 1
so.company = self.company so.company = "_Test Company"
so.customer = self.customer so.customer = "_Test Customer"
so.transaction_date = today() so.transaction_date = today()
so.currency = "INR" so.currency = "INR"
so.append( so.append(
"items", "items",
{ {
"item_code": self.item, "item_code": "_Test Item",
"qty": 5, "qty": 5,
"rate": 2000, "rate": 2000,
"warehouse": warehouse, "warehouse": warehouse,