Tests for Expense Claims [HR] (#10514)
This commit is contained in:
parent
e33a1e0515
commit
579c8e68f9
59
erpnext/hr/doctype/expense_claim/test_expense_claim.js
Normal file
59
erpnext/hr/doctype/expense_claim/test_expense_claim.js
Normal file
@ -0,0 +1,59 @@
|
||||
QUnit.module('hr');
|
||||
|
||||
QUnit.test("Test: Expense Claim [HR]", function (assert) {
|
||||
assert.expect(3);
|
||||
let done = assert.async();
|
||||
let employee_name;
|
||||
let d;
|
||||
frappe.run_serially([
|
||||
// Creating Expense Claim
|
||||
() => frappe.set_route('List','Expense Claim','List'),
|
||||
() => frappe.timeout(0.3),
|
||||
() => frappe.click_button('Make a new Expense Claim'),
|
||||
() => {
|
||||
cur_frm.set_value('exp_approver','Administrator'),
|
||||
cur_frm.set_value('is_paid',1),
|
||||
cur_frm.set_value('expenses',[]),
|
||||
d = frappe.model.add_child(cur_frm.doc,'Expense Claim Detail','expenses'),
|
||||
d.expense_date = '2017-08-01',
|
||||
d.expense_type = 'Test Expense Type 1',
|
||||
d.description = 'This is just to test Expense Claim',
|
||||
d.claim_amount = 2000,
|
||||
d.sanctioned_amount=2000,
|
||||
refresh_field('expenses');
|
||||
},
|
||||
() => frappe.timeout(2),
|
||||
() => frappe.db.get_value('Employee', {'employee_name': 'Test Employee 1'}, 'name'),
|
||||
(r) => {
|
||||
employee_name = r.message.name;
|
||||
},
|
||||
() => frappe.timeout(1),
|
||||
() => cur_frm.set_value('employee',employee_name),
|
||||
() => cur_frm.set_value('employee_name','Test Employee 1'),
|
||||
() => cur_frm.set_value('company','Test Company'),
|
||||
() => cur_frm.set_value('payable_account','Creditors - TC'),
|
||||
() => cur_frm.set_value('cost_center','Main - TC'),
|
||||
() => cur_frm.set_value('mode_of_payment','Cash'),
|
||||
() => cur_frm.save(),
|
||||
() => frappe.timeout(1),
|
||||
() => cur_frm.set_value('approval_status','Approved'),
|
||||
() => frappe.timeout(1),
|
||||
() => cur_frm.save(),
|
||||
// Submitting the Expense Claim
|
||||
() => frappe.click_button('Submit'),
|
||||
() => frappe.click_button('Yes'),
|
||||
() => frappe.timeout(3),
|
||||
|
||||
// Checking if the amount is correctly reimbursed for the employee
|
||||
() => {
|
||||
assert.equal(employee_name,cur_frm.get_field('employee').value,
|
||||
'Expense Claim is created for correct employee');
|
||||
assert.equal(1,cur_frm.get_field('is_paid').value,
|
||||
'Expense is paid as required');
|
||||
assert.equal(2000,cur_frm.get_field('total_amount_reimbursed').value,
|
||||
'Amount is reimbursed correctly');
|
||||
},
|
||||
() => done()
|
||||
]);
|
||||
});
|
||||
|
@ -0,0 +1,30 @@
|
||||
QUnit.module('hr');
|
||||
|
||||
QUnit.test("Test: Expense Claim Type [HR]", function (assert) {
|
||||
assert.expect(1);
|
||||
let done = assert.async();
|
||||
frappe.run_serially([
|
||||
// Creating a Expense Claim Type
|
||||
() => {
|
||||
frappe.tests.make('Expense Claim Type', [
|
||||
{ expense_type: 'Test Expense Type 1'},
|
||||
{ description:'This is just a test'},
|
||||
{ accounts: [
|
||||
[
|
||||
{ company: 'Test Company'},
|
||||
{ default_account: 'Round Off - TC'}
|
||||
]
|
||||
]},
|
||||
]);
|
||||
},
|
||||
() => frappe.timeout(5),
|
||||
|
||||
// Checking if the created type is present in the list
|
||||
() => {
|
||||
assert.equal('Test Expense Type 1', cur_frm.doc.expense_type,
|
||||
'Expense Claim Type created successfully');
|
||||
},
|
||||
() => done()
|
||||
]);
|
||||
});
|
||||
|
@ -68,6 +68,8 @@ erpnext/hr/doctype/job_applicant/test_job_applicant.js
|
||||
erpnext/hr/doctype/offer_letter/test_offer_letter.js
|
||||
erpnext/hr/doctype/appraisal_template/test_appraisal_template.js
|
||||
erpnext/hr/doctype/appraisal/test_appraisal.js
|
||||
erpnext/hr/doctype/expense_claim_type/test_expense_claim_type.js
|
||||
erpnext/hr/doctype/expense_claim/test_expense_claim.js
|
||||
erpnext/hr/doctype/training_event/test_training_event.js
|
||||
erpnext/hr/doctype/training_result_employee/test_training_result.js
|
||||
erpnext/hr/doctype/training_feedback/test_training_feedback.js
|
||||
|
Loading…
x
Reference in New Issue
Block a user