Fixed salary structure tests

This commit is contained in:
Nabin Hait
2017-09-14 19:07:30 +05:30
parent 427172c941
commit 2f64f0f5fa

View File

@@ -1,18 +1,18 @@
QUnit.test("test Salary Structure", function(assert) { QUnit.test("test Salary Structure", function(assert) {
assert.expect(6); assert.expect(12);
let done = assert.async(); let done = assert.async();
let employee_name1; let employee_name1;
let salary_structure = (ename1,ename2) => { frappe.run_serially([
frappe.run_serially([ () => frappe.db.get_value('Employee', {'employee_name': "Test Employee 1"}, 'name',
() => frappe.db.get_value('Employee', {'employee_name': ename1}, 'name'),
(r) => { (r) => {
employee_name1 = r.message.name; employee_name1 = r.name;
}, }
() => frappe.db.get_value('Employee', {'employee_name': ename2}, 'name'), ),
() => frappe.db.get_value('Employee', {'employee_name': "Test Employee 3"}, 'name',
(r) => { (r) => {
// Creating Salary Structure for employees); // Creating Salary Structure for employees);
frappe.tests.make('Salary Structure', [ return frappe.tests.make('Salary Structure', [
{ company: 'For Testing'}, { company: 'For Testing'},
{ payroll_frequency: 'Monthly'}, { payroll_frequency: 'Monthly'},
{ employees: [ { employees: [
@@ -22,7 +22,7 @@ QUnit.test("test Salary Structure", function(assert) {
{base: 25000} {base: 25000}
], ],
[ [
{employee: r.message.name}, {employee: r.name},
{from_date: '2017-07-01'}, {from_date: '2017-07-01'},
{base: 30000} {base: 30000}
] ]
@@ -45,37 +45,34 @@ QUnit.test("test Salary Structure", function(assert) {
]}, ]},
{ payment_account: 'CASH - FT'}, { payment_account: 'CASH - FT'},
]); ]);
}, }
() => frappe.timeout(12), ),
() => cur_dialog.set_value('value','Test Salary Structure'), () => frappe.timeout(18),
() => frappe.timeout(2), () => cur_dialog.set_value('value','Test Salary Structure'),
() => frappe.click_button('Create'), () => frappe.timeout(1),
() => { () => frappe.click_button('Create'),
// To check if all the fields are correctly set () => frappe.timeout(1),
assert.ok(cur_frm.doc.employees[0].employee_name.includes('Test Employee 1') && () => {
cur_frm.doc.employees[1].employee_name.includes('Test Employee 3'), // To check if all the fields are correctly set
'Employee names are correctly set'); assert.ok(cur_frm.doc.employees[0].employee_name.includes('Test Employee 1') &&
cur_frm.doc.employees[1].employee_name.includes('Test Employee 3'),
'Employee names are correctly set');
assert.ok(cur_frm.doc.employees[0].base==25000, assert.ok(cur_frm.doc.employees[0].base==25000,
'Base value for first employee is correctly set'); 'Base value for first employee is correctly set');
assert.ok(cur_frm.doc.employees[1].base==30000, assert.ok(cur_frm.doc.employees[1].base==30000,
'Base value for second employee is correctly set'); 'Base value for second employee is correctly set');
assert.ok(cur_frm.doc.earnings[0].formula.includes('base * .80'), assert.ok(cur_frm.doc.earnings[0].formula.includes('base * .80'),
'Formula for earnings as Basic is correctly set'); 'Formula for earnings as Basic is correctly set');
assert.ok(cur_frm.doc.earnings[1].formula.includes('B * .20'), assert.ok(cur_frm.doc.earnings[1].formula.includes('B * .20'),
'Formula for earnings as Leave Encashment is correctly set'); 'Formula for earnings as Leave Encashment is correctly set');
assert.ok(cur_frm.doc.deductions[0].formula.includes('(B+LE) * .20'), assert.ok(cur_frm.doc.deductions[0].formula.includes('(B+LE) * .20'),
'Formula for deductions as Income Tax is correctly set'); 'Formula for deductions as Income Tax is correctly set');
}, },
]);
};
frappe.run_serially([
() => salary_structure('Test Employee 1','Test Employee 3'),
() => frappe.timeout(16),
() => done() () => done()
]); ]);
}); });