Skip to content

Commit

Permalink
test: add test cases for Item Shortage Report
Browse files Browse the repository at this point in the history
  • Loading branch information
s-aga-r committed Sep 20, 2022
1 parent f0a78aa commit 3dc754c
Showing 1 changed file with 51 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
# Copyright (c) 2022, Frappe Technologies Pvt. Ltd. and contributors
# For license information, please see license.txt

import frappe
from frappe.tests.utils import FrappeTestCase

from erpnext.selling.doctype.sales_order.test_sales_order import make_sales_order
from erpnext.stock.doctype.item.test_item import make_item
from erpnext.stock.report.item_shortage_report.item_shortage_report import (
execute as item_shortage_report,
)


class TestItemShortageReport(FrappeTestCase):
def test_item_shortage_report(self):
item = make_item().name
so = make_sales_order(item_code=item)

reserved_qty, projected_qty = frappe.db.get_value(
"Bin",
{
"item_code": item,
"warehouse": so.items[0].warehouse,
},
["reserved_qty", "projected_qty"],
)
self.assertEqual(reserved_qty, so.items[0].qty)
self.assertEqual(projected_qty, -(so.items[0].qty))

filters = {
"company": so.company,
}
report_data = item_shortage_report(filters)[1]
item_code_list = [row.get("item_code") for row in report_data]
self.assertIn(item, item_code_list)

filters = {
"company": so.company,
"warehouse": [so.items[0].warehouse],
}
report_data = item_shortage_report(filters)[1]
item_code_list = [row.get("item_code") for row in report_data]
self.assertIn(item, item_code_list)

filters = {
"company": so.company,
"warehouse": ["Work In Progress - _TC"],
}
report_data = item_shortage_report(filters)[1]
item_code_list = [row.get("item_code") for row in report_data]
self.assertNotIn(item, item_code_list)

0 comments on commit 3dc754c

Please sign in to comment.