Merge pull request #48038 from ljain112/fix-test

This commit is contained in:
Sagar Vora
2025-06-24 11:32:22 +00:00
committed by GitHub
8 changed files with 102 additions and 120 deletions

View File

@@ -295,8 +295,8 @@ class TestPurchaseOrder(IntegrationTestCase):
user = "test@example.com" user = "test@example.com"
test_user = frappe.get_doc("User", user) test_user = frappe.get_doc("User", user)
test_user.add_roles("Accounts User") test_user.add_roles("Accounts User")
frappe.set_user(user)
with self.set_user(user):
# update qty # update qty
trans_item = json.dumps( trans_item = json.dumps(
[{"item_code": "_Test Item", "rate": 200, "qty": 7, "docname": po.items[0].name}] [{"item_code": "_Test Item", "rate": 200, "qty": 7, "docname": po.items[0].name}]
@@ -310,7 +310,6 @@ class TestPurchaseOrder(IntegrationTestCase):
self.assertRaises( self.assertRaises(
frappe.ValidationError, update_child_qty_rate, "Purchase Order", trans_item, po.name frappe.ValidationError, update_child_qty_rate, "Purchase Order", trans_item, po.name
) )
frappe.set_user("Administrator")
def test_update_child_with_tax_template(self): def test_update_child_with_tax_template(self):
""" """

View File

@@ -192,7 +192,7 @@ class TestSupplierPortal(IntegrationTestCase):
supplier.append("portal_users", {"user": user}) supplier.append("portal_users", {"user": user})
supplier.save() supplier.save()
frappe.set_user(user) with self.set_user(user):
_, suppliers = get_customers_suppliers("Purchase Order", user) _, suppliers = get_customers_suppliers("Purchase Order", user)
self.assertIn(supplier.name, suppliers) self.assertIn(supplier.name, suppliers)

View File

@@ -105,7 +105,6 @@ class TestQueries(ERPNextTestSuite):
value=1, value=1,
property_type="Check", property_type="Check",
) )
frappe.clear_cache(doctype="Payment Entry")
user = create_user("test_employee_query@example.com", "Accounts User", "HR User") user = create_user("test_employee_query@example.com", "Accounts User", "HR User")
add_user_permissions( add_user_permissions(
@@ -136,7 +135,6 @@ class TestQueries(ERPNextTestSuite):
self.assertGreater(len(result), 1) self.assertGreater(len(result), 1)
ps.delete(ignore_permissions=1, force=1, delete_permanently=1) ps.delete(ignore_permissions=1, force=1, delete_permanently=1)
frappe.clear_cache(doctype="Payment Entry")
# only one employee should be returned even though ignore_user_permissions is passed as 1 # only one employee should be returned even though ignore_user_permissions is passed as 1
result = queries.employee_query(**params) result = queries.employee_query(**params)

View File

@@ -547,17 +547,20 @@ class TestSalesOrder(AccountsTestMixin, IntegrationTestCase):
so = make_sales_order(item_code="_Test Item", qty=4) so = make_sales_order(item_code="_Test Item", qty=4)
test_user = create_user("test_so_child_perms@example.com", "Accounts User") test_user = create_user("test_so_child_perms@example.com", "Accounts User")
frappe.set_user(test_user.name) with self.set_user(test_user.name):
# update qty # update qty
trans_item = json.dumps( trans_item = json.dumps(
[{"item_code": "_Test Item", "rate": 200, "qty": 7, "docname": so.items[0].name}] [{"item_code": "_Test Item", "rate": 200, "qty": 7, "docname": so.items[0].name}]
) )
self.assertRaises(frappe.ValidationError, update_child_qty_rate, "Sales Order", trans_item, so.name) self.assertRaises(
frappe.ValidationError, update_child_qty_rate, "Sales Order", trans_item, so.name
)
# add new item # add new item
trans_item = json.dumps([{"item_code": "_Test Item", "rate": 100, "qty": 2}]) trans_item = json.dumps([{"item_code": "_Test Item", "rate": 100, "qty": 2}])
self.assertRaises(frappe.ValidationError, update_child_qty_rate, "Sales Order", trans_item, so.name) self.assertRaises(
frappe.ValidationError, update_child_qty_rate, "Sales Order", trans_item, so.name
)
def test_update_child_qty_rate_with_workflow(self): def test_update_child_qty_rate_with_workflow(self):
from frappe.model.workflow import apply_workflow from frappe.model.workflow import apply_workflow
@@ -569,26 +572,25 @@ class TestSalesOrder(AccountsTestMixin, IntegrationTestCase):
user = "test@example.com" user = "test@example.com"
test_user = frappe.get_doc("User", user) test_user = frappe.get_doc("User", user)
test_user.add_roles("Sales User", "Test Junior Approver") test_user.add_roles("Sales User", "Test Junior Approver")
frappe.set_user(user) with self.set_user(user):
# user shouldn't be able to edit since grand_total will become > 200 if qty is doubled # user shouldn't be able to edit since grand_total will become > 200 if qty is doubled
trans_item = json.dumps( trans_item = json.dumps(
[{"item_code": "_Test Item", "rate": 150, "qty": 2, "docname": so.items[0].name}] [{"item_code": "_Test Item", "rate": 150, "qty": 2, "docname": so.items[0].name}]
) )
self.assertRaises(frappe.ValidationError, update_child_qty_rate, "Sales Order", trans_item, so.name) self.assertRaises(
frappe.ValidationError, update_child_qty_rate, "Sales Order", trans_item, so.name
)
frappe.set_user("Administrator")
user2 = "test2@example.com" user2 = "test2@example.com"
test_user2 = frappe.get_doc("User", user2) test_user2 = frappe.get_doc("User", user2)
test_user2.add_roles("Sales User", "Test Approver") test_user2.add_roles("Sales User", "Test Approver")
frappe.set_user(user2)
with self.set_user(user2):
# Test Approver is allowed to edit with grand_total > 200 # Test Approver is allowed to edit with grand_total > 200
update_child_qty_rate("Sales Order", trans_item, so.name) update_child_qty_rate("Sales Order", trans_item, so.name)
so.reload() so.reload()
self.assertEqual(so.items[0].qty, 2) self.assertEqual(so.items[0].qty, 2)
frappe.set_user("Administrator")
test_user.remove_roles("Sales User", "Test Junior Approver", "Test Approver") test_user.remove_roles("Sales User", "Test Junior Approver", "Test Approver")
test_user2.remove_roles("Sales User", "Test Junior Approver", "Test Approver") test_user2.remove_roles("Sales User", "Test Junior Approver", "Test Approver")
workflow.is_active = 0 workflow.is_active = 0
@@ -816,8 +818,7 @@ class TestSalesOrder(AccountsTestMixin, IntegrationTestCase):
frappe.permissions.add_user_permission("Warehouse", "_Test Warehouse 2 - _TC1", test_user_2.name) frappe.permissions.add_user_permission("Warehouse", "_Test Warehouse 2 - _TC1", test_user_2.name)
frappe.permissions.add_user_permission("Company", "_Test Company 1", test_user_2.name) frappe.permissions.add_user_permission("Company", "_Test Company 1", test_user_2.name)
frappe.set_user(test_user.name) with self.set_user(test_user.name):
so = make_sales_order( so = make_sales_order(
company="_Test Company 1", company="_Test Company 1",
customer="_Test Customer 1", customer="_Test Customer 1",
@@ -828,10 +829,9 @@ class TestSalesOrder(AccountsTestMixin, IntegrationTestCase):
so.plc_conversion_rate = 0.02 so.plc_conversion_rate = 0.02
self.assertRaises(frappe.PermissionError, so.insert) self.assertRaises(frappe.PermissionError, so.insert)
frappe.set_user(test_user_2.name) with self.set_user(test_user_2.name):
so.insert() so.insert()
frappe.set_user("Administrator")
frappe.permissions.remove_user_permission("Warehouse", "_Test Warehouse 1 - _TC", test_user.name) frappe.permissions.remove_user_permission("Warehouse", "_Test Warehouse 1 - _TC", test_user.name)
frappe.permissions.remove_user_permission("Warehouse", "_Test Warehouse 2 - _TC1", test_user_2.name) frappe.permissions.remove_user_permission("Warehouse", "_Test Warehouse 2 - _TC1", test_user_2.name)
frappe.permissions.remove_user_permission("Company", "_Test Company 1", test_user_2.name) frappe.permissions.remove_user_permission("Company", "_Test Company 1", test_user_2.name)

View File

@@ -78,8 +78,6 @@ class TestInventoryDimension(IntegrationTestCase):
self.assertFalse(custom_field) self.assertFalse(custom_field)
def test_inventory_dimension(self): def test_inventory_dimension(self):
frappe.clear_cache(doctype="Inventory Dimension")
warehouse = "Shelf Warehouse - _TC" warehouse = "Shelf Warehouse - _TC"
item_code = "_Test Item" item_code = "_Test Item"
@@ -150,8 +148,6 @@ class TestInventoryDimension(IntegrationTestCase):
self.assertRaises(DoNotChangeError, inv_dim1.save) self.assertRaises(DoNotChangeError, inv_dim1.save)
def test_inventory_dimension_for_purchase_receipt_and_delivery_note(self): def test_inventory_dimension_for_purchase_receipt_and_delivery_note(self):
frappe.clear_cache(doctype="Inventory Dimension")
inv_dimension = create_inventory_dimension( inv_dimension = create_inventory_dimension(
reference_document="Rack", dimension_name="Rack", apply_to_all_doctypes=1 reference_document="Rack", dimension_name="Rack", apply_to_all_doctypes=1
) )
@@ -167,9 +163,6 @@ class TestInventoryDimension(IntegrationTestCase):
"Delivery Note", dict(fieldname="rack", label="Rack", fieldtype="Link", options="Rack") "Delivery Note", dict(fieldname="rack", label="Rack", fieldtype="Link", options="Rack")
) )
frappe.reload_doc("stock", "doctype", "purchase_receipt_item")
frappe.reload_doc("stock", "doctype", "delivery_note_item")
pr_doc = make_purchase_receipt(qty=2, do_not_submit=True) pr_doc = make_purchase_receipt(qty=2, do_not_submit=True)
pr_doc.rack = "Rack 1" pr_doc.rack = "Rack 1"
pr_doc.save() pr_doc.save()
@@ -439,7 +432,6 @@ class TestInventoryDimension(IntegrationTestCase):
self.assertEqual(d.store, "Inter Transfer Store 2") self.assertEqual(d.store, "Inter Transfer Store 2")
def test_validate_negative_stock_for_inventory_dimension(self): def test_validate_negative_stock_for_inventory_dimension(self):
frappe.clear_cache(doctype="Inventory Dimension")
item_code = "Test Negative Inventory Dimension Item" item_code = "Test Negative Inventory Dimension Item"
frappe.db.set_single_value("Stock Settings", "allow_negative_stock", 1) frappe.db.set_single_value("Stock Settings", "allow_negative_stock", 1)
create_item(item_code) create_item(item_code)

View File

@@ -752,8 +752,7 @@ class TestStockEntry(IntegrationTestCase):
frappe.get_doc("User", "test2@example.com").add_roles( frappe.get_doc("User", "test2@example.com").add_roles(
"Sales User", "Sales Manager", "Stock User", "Stock Manager" "Sales User", "Sales Manager", "Stock User", "Stock Manager"
) )
frappe.set_user("test2@example.com") with self.set_user("test2@example.com"):
from erpnext.stock.utils import InvalidWarehouseCompany from erpnext.stock.utils import InvalidWarehouseCompany
st1 = frappe.copy_doc(self.globalTestRecords["Stock Entry"][0]) st1 = frappe.copy_doc(self.globalTestRecords["Stock Entry"][0])
@@ -778,13 +777,13 @@ class TestStockEntry(IntegrationTestCase):
st1 = frappe.copy_doc(self.globalTestRecords["Stock Entry"][0]) st1 = frappe.copy_doc(self.globalTestRecords["Stock Entry"][0])
st1.company = "_Test Company 1" st1.company = "_Test Company 1"
frappe.set_user("test@example.com") with self.set_user("test@example.com"):
st1.get("items")[0].t_warehouse = "_Test Warehouse 2 - _TC1" st1.get("items")[0].t_warehouse = "_Test Warehouse 2 - _TC1"
self.assertRaises(frappe.PermissionError, st1.insert) self.assertRaises(frappe.PermissionError, st1.insert)
test_user.add_roles("System Manager") test_user.add_roles("System Manager")
frappe.set_user("test2@example.com") with self.set_user("test2@example.com"):
st1 = frappe.copy_doc(self.globalTestRecords["Stock Entry"][0]) st1 = frappe.copy_doc(self.globalTestRecords["Stock Entry"][0])
st1.company = "_Test Company 1" st1.company = "_Test Company 1"
st1.get("items")[0].t_warehouse = "_Test Warehouse 2 - _TC1" st1.get("items")[0].t_warehouse = "_Test Warehouse 2 - _TC1"
@@ -795,7 +794,6 @@ class TestStockEntry(IntegrationTestCase):
st1.submit() st1.submit()
st1.cancel() st1.cancel()
frappe.set_user("Administrator")
remove_user_permission("Warehouse", "_Test Warehouse 1 - _TC", "test@example.com") remove_user_permission("Warehouse", "_Test Warehouse 1 - _TC", "test@example.com")
remove_user_permission("Warehouse", "_Test Warehouse 2 - _TC1", "test2@example.com") remove_user_permission("Warehouse", "_Test Warehouse 2 - _TC1", "test2@example.com")
remove_user_permission("Company", "_Test Company 1", "test2@example.com") remove_user_permission("Company", "_Test Company 1", "test2@example.com")

View File

@@ -423,9 +423,10 @@ class TestStockLedgerEntry(IntegrationTestCase, StockTestMixin):
user.add_roles("Stock User") user.add_roles("Stock User")
user.remove_roles("Stock Manager") user.remove_roles("Stock Manager")
frappe.set_user(user.name) with self.set_user(user.name):
stock_entry_on_today = make_stock_entry(
stock_entry_on_today = make_stock_entry(target="_Test Warehouse - _TC", qty=10, basic_rate=100) target="_Test Warehouse - _TC", qty=10, basic_rate=100
)
back_dated_se_1 = make_stock_entry( back_dated_se_1 = make_stock_entry(
target="_Test Warehouse - _TC", target="_Test Warehouse - _TC",
qty=10, qty=10,
@@ -437,10 +438,8 @@ class TestStockLedgerEntry(IntegrationTestCase, StockTestMixin):
# Block back-dated entry # Block back-dated entry
self.assertRaises(BackDatedStockTransaction, back_dated_se_1.submit) self.assertRaises(BackDatedStockTransaction, back_dated_se_1.submit)
frappe.set_user("Administrator")
user.add_roles("Stock Manager") user.add_roles("Stock Manager")
frappe.set_user(user.name) with self.set_user(user.name):
# Back dated entry allowed to Stock Manager # Back dated entry allowed to Stock Manager
back_dated_se_2 = make_stock_entry( back_dated_se_2 = make_stock_entry(
target="_Test Warehouse - _TC", qty=10, basic_rate=100, posting_date=add_days(today(), -1) target="_Test Warehouse - _TC", qty=10, basic_rate=100, posting_date=add_days(today(), -1)
@@ -453,7 +452,6 @@ class TestStockLedgerEntry(IntegrationTestCase, StockTestMixin):
frappe.db.set_single_value( frappe.db.set_single_value(
"Stock Settings", "role_allowed_to_create_edit_back_dated_transactions", None "Stock Settings", "role_allowed_to_create_edit_back_dated_transactions", None
) )
frappe.set_user("Administrator")
user.remove_roles("Stock Manager") user.remove_roles("Stock Manager")
def test_batchwise_item_valuation_fifo(self): def test_batchwise_item_valuation_fifo(self):

View File

@@ -27,22 +27,19 @@ class TestWebsite(IntegrationTestCase):
create_order_assignment(supplier="Supplier1", po=po1.name) create_order_assignment(supplier="Supplier1", po=po1.name)
create_order_assignment(supplier="Supplier2", po=po2.name) create_order_assignment(supplier="Supplier2", po=po2.name)
frappe.set_user("Administrator")
# checking if data consist of all order assignment of Supplier1 and Supplier2 # checking if data consist of all order assignment of Supplier1 and Supplier2
self.assertTrue("Supplier1" and "Supplier2" in [data.supplier for data in get_data()]) self.assertTrue("Supplier1" and "Supplier2" in [data.supplier for data in get_data()])
frappe.set_user("supplier1@gmail.com") with self.set_user("supplier1@gmail.com"):
# checking if data only consist of order assignment of Supplier1 # checking if data only consist of order assignment of Supplier1
self.assertTrue("Supplier1" in [data.supplier for data in get_data()]) self.assertTrue("Supplier1" in [data.supplier for data in get_data()])
self.assertFalse([data.supplier for data in get_data() if data.supplier != "Supplier1"]) self.assertFalse([data.supplier for data in get_data() if data.supplier != "Supplier1"])
frappe.set_user("supplier2@gmail.com") with self.set_user("supplier2@gmail.com"):
# checking if data only consist of order assignment of Supplier2 # checking if data only consist of order assignment of Supplier2
self.assertTrue("Supplier2" in [data.supplier for data in get_data()]) self.assertTrue("Supplier2" in [data.supplier for data in get_data()])
self.assertFalse([data.supplier for data in get_data() if data.supplier != "Supplier2"]) self.assertFalse([data.supplier for data in get_data() if data.supplier != "Supplier2"])
frappe.set_user("Administrator")
def get_data(): def get_data():
webform_list_contexts = frappe.get_hooks("webform_list_context") webform_list_contexts = frappe.get_hooks("webform_list_context")