Merge branch 'staging-fixes' into loyalty-program-fix
diff --git a/erpnext/accounts/report/financial_statements.py b/erpnext/accounts/report/financial_statements.py
index db733dd..09cf5b1 100644
--- a/erpnext/accounts/report/financial_statements.py
+++ b/erpnext/accounts/report/financial_statements.py
@@ -213,7 +213,7 @@
total = 0
row = frappe._dict({
"account": _(d.name),
- "parent_account": _(d.parent_account),
+ "parent_account": _(d.parent_account) if d.parent_account else '',
"indent": flt(d.indent),
"year_start_date": year_start_date,
"year_end_date": year_end_date,
diff --git a/erpnext/hooks.py b/erpnext/hooks.py
index 14e4f68..3ab6752 100644
--- a/erpnext/hooks.py
+++ b/erpnext/hooks.py
@@ -12,7 +12,7 @@
source_link = "https://github.com/frappe/erpnext"
develop_version = '12.x.x-develop'
-staging_version = '11.0.3-beta.32'
+staging_version = '11.0.3-beta.33'
error_report_email = "support@erpnext.com"
diff --git a/erpnext/hr/doctype/department/test_department.py b/erpnext/hr/doctype/department/test_department.py
index da69661..2eeca26 100644
--- a/erpnext/hr/doctype/department/test_department.py
+++ b/erpnext/hr/doctype/department/test_department.py
@@ -1,9 +1,24 @@
# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
# License: GNU General Public License v3. See license.txt
from __future__ import unicode_literals
+import frappe
+import unittest
test_ignore = ["Leave Block List"]
+class TestDepartment(unittest.TestCase):
+ def test_remove_department_data(self):
+ doc = create_department("Test Department")
+ frappe.delete_doc('Department', doc.name)
+def create_department(department_name, parent_department=None):
+ doc = frappe.get_doc({
+ 'doctype': 'Department',
+ 'is_group': 0,
+ 'parent_department': parent_department,
+ 'department_name': department_name,
+ 'company': frappe.defaults.get_defaults().company
+ }).insert()
-import frappe
+ return doc
+
test_records = frappe.get_test_records('Department')
\ No newline at end of file
diff --git a/erpnext/hr/doctype/leave_application/test_leave_application.py b/erpnext/hr/doctype/leave_application/test_leave_application.py
index 4748011..a682e8b 100644
--- a/erpnext/hr/doctype/leave_application/test_leave_application.py
+++ b/erpnext/hr/doctype/leave_application/test_leave_application.py
@@ -457,7 +457,7 @@
return frappe.get_doc(dict(
name = 'Test Leave Period',
doctype = 'Leave Period',
- from_date = "{0}-01-01".format(now_datetime().year),
+ from_date = "{0}-12-01".format(now_datetime().year - 1),
to_date = "{0}-12-31".format(now_datetime().year),
company = "_Test Company",
is_active = 1
diff --git a/erpnext/hr/doctype/upload_attendance/test_upload_attendance.py b/erpnext/hr/doctype/upload_attendance/test_upload_attendance.py
index 5ab2847..6e151d0 100644
--- a/erpnext/hr/doctype/upload_attendance/test_upload_attendance.py
+++ b/erpnext/hr/doctype/upload_attendance/test_upload_attendance.py
@@ -29,6 +29,5 @@
for row in data:
if row[1] == employee:
filtered_data.append(row)
- print(filtered_data)
for row in filtered_data:
self.assertTrue(getdate(row[3]) >= getdate(date_of_joining) and getdate(row[3]) <= getdate(relieving_date))
diff --git a/erpnext/projects/doctype/timesheet/test_timesheet.py b/erpnext/projects/doctype/timesheet/test_timesheet.py
index 8c84c11..f117903 100644
--- a/erpnext/projects/doctype/timesheet/test_timesheet.py
+++ b/erpnext/projects/doctype/timesheet/test_timesheet.py
@@ -186,6 +186,8 @@
if not frappe.db.get_value("Salary Structure Assignment",
{'employee':employee, 'docstatus': 1}):
+ frappe.db.set_value('Employee', employee, 'date_of_joining',
+ add_months(nowdate(), -5))
create_salary_structure_assignment(employee, salary_structure.name)
return salary_structure
diff --git a/erpnext/utilities/transaction_base.py b/erpnext/utilities/transaction_base.py
index 4845e0b..f845cef 100644
--- a/erpnext/utilities/transaction_base.py
+++ b/erpnext/utilities/transaction_base.py
@@ -146,8 +146,18 @@
return ret
def delete_events(ref_type, ref_name):
- frappe.delete_doc("Event", frappe.db.sql_list("""select name from `tabEvent`
- where ref_type=%s and ref_name=%s""", (ref_type, ref_name)), for_reload=True)
+ events = frappe.db.sql_list(""" SELECT
+ distinct `tabEvent`.name
+ from
+ `tabEvent`, `tabEvent Participants`
+ where
+ `tabEvent`.name = `tabEvent Participants`.parent
+ and `tabEvent Participants`.reference_doctype = %s
+ and `tabEvent Participants`.reference_docname = %s
+ """, (ref_type, ref_name)) or []
+
+ if events:
+ frappe.delete_doc("Event", events, for_reload=True)
def validate_uom_is_integer(doc, uom_field, qty_fields, child_dt=None):
if isinstance(qty_fields, string_types):