Merge pull request #56796 from frappe/chore/fix-flaky-bom-cost-valuation-reset

test: fix flaky test_update_bom_cost_in_all_boms via valuation reset
This commit is contained in:
Nabin Hait
2026-07-02 23:05:22 +05:30
committed by GitHub

View File

@@ -881,8 +881,13 @@ def reset_item_valuation_rate(item_code, warehouse_list=None, qty=None, rate=Non
warehouse_list = [warehouse_list]
if not warehouse_list:
# Reconcile every warehouse the item has a non-zero balance in -- including
# negative balances left by other tests. `get_valuation_rate` averages
# Sum(stock_value)/Sum(actual_qty) across all bins, so a leftover negative
# balance in one warehouse can cancel the reset qty elsewhere and make the
# average collapse to 0, which is a source of flaky BOM-cost failures.
warehouse_list = frappe.get_all(
"Bin", filters={"item_code": item_code, "actual_qty": [">", 0]}, pluck="warehouse"
"Bin", filters={"item_code": item_code, "actual_qty": ["!=", 0]}, pluck="warehouse"
)
if not warehouse_list: