diff --git a/cypress/integration/test_organizational_chart_desktop.js b/cypress/integration/test_organizational_chart_desktop.js
index d50d551..807ef57 100644
--- a/cypress/integration/test_organizational_chart_desktop.js
+++ b/cypress/integration/test_organizational_chart_desktop.js
@@ -29,7 +29,7 @@
 		// check children of first node
 		cy.get('@employee_records').then(employee_records => {
 			// children of 1st root visible
-			cy.get(`[data-parent="${employee_records.message[0]}"]`).as('child-node')
+			cy.get(`[data-parent="${employee_records.message[0]}"]`).as('child-node');
 			cy.get('@child-node')
 				.should('have.length', 1)
 				.should('be.visible');
@@ -39,7 +39,7 @@
 			cy.get(`path[data-parent="${employee_records.message[0]}"]`)
 				.should('be.visible')
 				.invoke('attr', 'data-child')
-  				.should('equal', employee_records.message[2]);
+				.should('equal', employee_records.message[2]);
 		});
 	});
 
diff --git a/cypress/integration/test_organizational_chart_mobile.js b/cypress/integration/test_organizational_chart_mobile.js
index 6560512..f48972b 100644
--- a/cypress/integration/test_organizational_chart_mobile.js
+++ b/cypress/integration/test_organizational_chart_mobile.js
@@ -43,7 +43,7 @@
 
 			// children of active root node
 			cy.get('.hierarchy-mobile').find('.level').first().find('ul.node-children').children()
-				.should('have.length', 2)
+				.should('have.length', 2);
 
 			cy.get(`[data-parent="${employee_records.message[1]}"]`).first().as('child-node');
 			cy.get('@child-node').should('be.visible');
@@ -56,7 +56,7 @@
 			cy.get(`path[data-parent="${employee_records.message[1]}"]`).as('connectors');
 			cy.get('@connectors')
 				.should('have.length', 2)
-				.should('be.visible')
+				.should('be.visible');
 
 			cy.get('@connectors')
 				.first()
@@ -104,7 +104,7 @@
 			cy.get('@sibling_group')
 				.should('have.attr', 'data-parent', 'undefined')
 				.should('have.class', 'node-group')
-				.and('have.class', 'collapsed')
+				.and('have.class', 'collapsed');
 
 			cy.get('@sibling_group').get('.avatar-group').children().as('siblings');
 			cy.get('@siblings').should('have.length', 1);
@@ -137,7 +137,7 @@
 	it('expands sibling group', () => {
 		cy.get('@employee_records').then(employee_records => {
 			// sibling group visible for parent
-			cy.get(`#${employee_records.message[6]}`).click()
+			cy.get(`#${employee_records.message[6]}`).click();
 
 			cy.get(`#${employee_records.message[3]}`)
 				.next()
diff --git a/erpnext/tests/ui_test_helpers.py b/erpnext/tests/ui_test_helpers.py
index 99748dc..f66d69b 100644
--- a/erpnext/tests/ui_test_helpers.py
+++ b/erpnext/tests/ui_test_helpers.py
@@ -1,10 +1,9 @@
 import frappe
-from frappe import _
 from frappe.utils import getdate
 
 @frappe.whitelist()
 def create_employee_records():
-	company = create_company()
+	create_company()
 	create_missing_designation()
 
 	emp1 = create_employee('Test Employee 1', 'CEO')
