test: purchase register and ledger view
diff --git a/erpnext/accounts/report/purchase_register/purchase_register.py b/erpnext/accounts/report/purchase_register/purchase_register.py
index 616dca4..a6d0ea0 100644
--- a/erpnext/accounts/report/purchase_register/purchase_register.py
+++ b/erpnext/accounts/report/purchase_register/purchase_register.py
@@ -61,7 +61,6 @@
 		opening_row = get_opening_row(
 			"Supplier", filters.supplier, getdate(filters.from_date), filters.company
 		)[0]
-		print(opening_row)
 		res.append(
 			{
 				"payable_account": opening_row.account,
diff --git a/erpnext/accounts/report/purchase_register/test_purchase_register.py b/erpnext/accounts/report/purchase_register/test_purchase_register.py
new file mode 100644
index 0000000..6903662
--- /dev/null
+++ b/erpnext/accounts/report/purchase_register/test_purchase_register.py
@@ -0,0 +1,128 @@
+# Copyright (c) 2022, Frappe Technologies Pvt. Ltd. and Contributors
+# MIT License. See license.txt
+
+import frappe
+from frappe.tests.utils import FrappeTestCase
+from frappe.utils import add_months, getdate, today
+
+from erpnext.accounts.report.purchase_register.purchase_register import execute
+
+
+class TestPurchaseRegister(FrappeTestCase):
+	def test_purchase_register(self):
+		frappe.db.sql("delete from `tabPurchase Invoice` where company='_Test Company 6'")
+		frappe.db.sql("delete from `tabGL Entry` where company='_Test Company 6'")
+
+		filters = frappe._dict(
+			company="_Test Company 6", from_date=add_months(today(), -1), to_date=today()
+		)
+
+		pi = make_purchase_invoice()
+
+		report_results = execute(filters)
+		first_row = frappe._dict(report_results[1][0])
+		self.assertEqual(first_row.voucher_type, "Purchase Invoice")
+		self.assertEqual(first_row.voucher_no, pi.name)
+		self.assertEqual(first_row.payable_account, "Creditors - _TC6")
+		self.assertEqual(first_row.net_total, 1000)
+		self.assertEqual(first_row.total_tax, 100)
+		self.assertEqual(first_row.grand_total, 1100)
+
+	def test_purchase_register_ledger_view(self):
+		frappe.db.sql("delete from `tabPurchase Invoice` where company='_Test Company 6'")
+		frappe.db.sql("delete from `tabGL Entry` where company='_Test Company 6'")
+
+		filters = frappe._dict(
+			company="_Test Company 6",
+			from_date=add_months(today(), -1),
+			to_date=today(),
+			include_payments=True,
+			supplier="_Test Supplier",
+		)
+
+		pi = make_purchase_invoice()
+		pe = make_payment_entry()
+
+		report_results = execute(filters)
+		first_row = frappe._dict(report_results[1][2])
+		self.assertEqual(first_row.voucher_type, "Payment Entry")
+		self.assertEqual(first_row.voucher_no, pe.name)
+		self.assertEqual(first_row.payable_account, "Creditors - _TC6")
+		self.assertEqual(first_row.debit, 0)
+		self.assertEqual(first_row.credit, 600)
+		self.assertEqual(first_row.balance, 500)
+
+
+def make_purchase_invoice():
+	from erpnext.accounts.doctype.account.test_account import create_account
+	from erpnext.accounts.doctype.cost_center.test_cost_center import create_cost_center
+	from erpnext.stock.doctype.warehouse.test_warehouse import create_warehouse
+
+	gst_acc = create_account(
+		account_name="GST",
+		account_type="Tax",
+		parent_account="Duties and Taxes - _TC6",
+		company="_Test Company 6",
+		account_currency="INR",
+	)
+	create_warehouse(warehouse_name="_Test Warehouse - _TC6", company="_Test Company 6")
+	create_cost_center(cost_center_name="_Test Cost Center", company="_Test Company 6")
+	pi = create_purchase_invoice_with_taxes()
+	pi.submit()
+	return pi
+
+
+def create_purchase_invoice_with_taxes():
+	return frappe.get_doc(
+		{
+			"doctype": "Purchase Invoice",
+			"posting_date": today(),
+			"supplier": "_Test Supplier",
+			"company": "_Test Company 6",
+			"cost_center": "_Test Cost Center - _TC6",
+			"taxes_and_charges": "",
+			"currency": "INR",
+			"credit_to": "Creditors - _TC6",
+			"items": [
+				{
+					"doctype": "Purchase Invoice Item",
+					"cost_center": "_Test Cost Center - _TC6",
+					"item_code": "_Test Item",
+					"qty": 1,
+					"rate": 1000,
+					"expense_account": "Stock Received But Not Billed - _TC6",
+				}
+			],
+			"taxes": [
+				{
+					"account_head": "GST - _TC6",
+					"cost_center": "_Test Cost Center - _TC6",
+					"add_deduct_tax": "Add",
+					"category": "Valuation and Total",
+					"charge_type": "Actual",
+					"description": "Shipping Charges",
+					"doctype": "Purchase Taxes and Charges",
+					"parentfield": "taxes",
+					"rate": 100,
+					"tax_amount": 100.0,
+				}
+			],
+		}
+	)
+
+
+def make_payment_entry():
+	frappe.set_user("Administrator")
+	from erpnext.accounts.doctype.payment_entry.test_payment_entry import create_payment_entry
+
+	return create_payment_entry(
+		company="_Test Company 6",
+		party_type="Supplier",
+		party="_Test Supplier",
+		payment_type="Pay",
+		paid_from="Cash - _TC6",
+		paid_to="Creditors - _TC6",
+		paid_amount=600,
+		save=1,
+		submit=1,
+	)