[IMP] hr: improve test case of process of Job position to open job, to start requirement and close job position

bzr revid: jap@tinyerp.com-20111115103028-5zmfzal87kpdicaf
This commit is contained in:
Jagdish Panchal (Open ERP) 2011-11-15 16:00:28 +05:30
parent 99a3ab1c43
commit 1132f8cb58
4 changed files with 98 additions and 141 deletions

View File

@ -54,7 +54,10 @@ You can manage:
'hr_demo.xml',
'hr_department_demo.xml',
],
'test': ['test/test_hr.yml'],
'test': [
'test/hr_employee_demo.yml',
'test/process/open2recruit2close_job.yml',
],
'installable': True,
'active': False,
'certificate': '0086710558965',

View File

@ -0,0 +1,55 @@
-
!record {model: hr.department, id: hr_department_rd0}:
manager_id: base.user_root
name: 'R & D'
-
!record {model: hr.job, id: hr_job_jea0}:
department_id: 'hr_department_rd0'
description: 'Position of Junior Application Engineer'
expected_employees: 5.0
name: 'JAE'
no_of_employee: 0.0
no_of_recruitment: 5.0
state: open
-
!record {model: hr.job, id: hr_job_jea0}:
employee_ids:
- address_home_id: base.res_partner_address_1
name: Manuel Lehba
department_id: 'hr_department_rd0'
gender: male
parent_id: hr.employee1
-
!record {model: hr.employee, id: hr_employee001, view: False}:
address_id: base.main_address
company_id: base.main_company
department_id: hr_department_rd0
name: smith
parent_id: hr.employee1
user_id: base.user_demo
-
!record {model: hr.employee, id: hr_employee_edwin0}:
address_home_id: base.res_partner_address_3000
address_id: base.res_partner_address_rogerpecker0
department_id: hr.dep_administration
job_id: hr.job_hr_manager
name: Edwin
parent_id: hr.employee2
resource_type: user
time_efficiency: 1.0
user_id: base.user_demo
-
!record {model: hr.employee.category, id: hr_employee_category_fresher0}:
name: Fresher
-
!record {model: hr.employee.category, id: hr_employee_category_juniorlevel0}:
name: Junior Level
parent_id: hr_employee_category_fresher0
-

View File

@ -0,0 +1,39 @@
-
In Order to test process of Job Position,
-
I open Job Postion of "Jr. Application Engineer" Profile.
-
!python {model: hr.job}: |
self.job_open(cr, uid, [ref('hr_job_jea0')])
-
I check state of Job Position after opened it.
-
!assert {model: hr.job, id: hr_job_jea0}:
- state == 'open'
-
Now, Recruitement is started so I start recruitement of Job Postion of "Jr. Application Engineer" Profile.
-
!python {model: hr.job}: |
self.job_recruitement(cr, uid, [ref('hr_job_jea0')])
-
I check state and number of Expected in Recruitment in Job Position of "Jr. Application Engineer" Profile.
-
!assert {model: hr.job, id: hr_job_jea0}:
- state == 'recruit'
- no_of_recruitment == 1.0
-
I hired new employee for the job position so I set Job Position of "Jr. Application Engineer" Profile to new employee.
-
!python {model: hr.employee}: |
self.write(cr, uid, [ref('hr_employee001')], {'job_id':ref('hr_job_jea0')})
-
Now I don't want to recruit new employee on this position. so I mark it as Old.
-
!python {model: hr.job}: |
self.job_old(cr, uid, [ref('hr_job_jea0')])
-
I check state of Job position and number of Expected in Recruitment after closed Job position.
-
!assert {model: hr.job, id: hr_job_jea0}:
- state == 'old'
- no_of_recruitment == 0

View File

@ -1,140 +0,0 @@
-
In order to test hr module in OpenERP, I will create new Employee, Department and Job Position.
-
I create "R&D Department" in Department form.
-
!record {model: hr.department, id: hr_department_rd0}:
manager_id: base.user_root
name: 'R & D'
-
Now, I create a new employee “Mark Johnson”, and select department as “R&D Department”.
-
!record {model: hr.employee, id: hr_employee_mark}:
address_home_id: base.res_partner_address_1
company_id: base.main_company
gender: male
marital: 'single'
name: Mark Johnson
-
I change the company of the employee.
-
!python {model: hr.employee}: |
res = self.onchange_company(cr, uid, [ref('hr_employee_mark')], ref('base.main_company'), None)
values = dict([('company_id', ref('base.main_company'))] + res['value'].items())
self.write(cr, uid, [ref('hr_employee_mark')], values, None)
-
I assign department for employee “Mark Johnson”.
-
!python {model: hr.employee}: |
res = self.onchange_department_id(cr, uid, [ref('hr_employee_mark')], ref('hr_department_rd0'), None)
assert res['value']['parent_id']
values = dict([('department_id', ref('hr_department_rd0'))] + res['value'].items())
self.write(cr, uid, [ref('hr_employee_mark')], values, None)
-
Now I create a user for employee “Mark Johnson”.
-
!record {model: res.users, id: hr_users_markjohnson0}:
context_lang: en_US
groups_id:
- base.group_user
login: markjohnson
name: Mark Johnson
password: markjohnson
-
I assign user to employee “Mark Johnson”.
-
!python {model: hr.employee}: |
res = self.onchange_user(cr, uid, [ref('hr_employee_mark')], ref('hr_users_markjohnson0'), None)
values = dict([('user_id', ref('hr_users_markjohnson0'))] + res['value'].items())
self.write(cr, uid, [ref('hr_employee_mark')], values, None)
-
In order to check the wizard “Employee Hierarchy” , I will create new employee “Phil Graves” and select “Mark Johnson” as
Manager.
-
!record {model: hr.employee, id: hr_employee_phil}:
address_home_id: base.res_partner_address_3000
company_id: base.main_company
gender: male
name: Phil Graves
user_id: base.user_demo
parent_id: 'hr_employee_mark'
-
I fill the Working address for Employee.
-
!python {model: hr.employee}: |
res = self.onchange_address_id(cr, uid, ref('hr_employee_phil'), ref('base.res_partner_address_3000'), None)
assert res['value']
values = dict([('address_id', ref('base.res_partner_address_3000'))] + res['value'].items())
self.write(cr, uid, [ref('hr_employee_phil')], values, None)
-
I will open up form view of “Mark Johnson” and test the wizard “Employee Hierarchy” so it display the employee
hierarchy starting from “Mark Johnson”.
-
I will create new Job Position. I will check successful creation of new Job Position by adding the information.
-
!record {model: hr.job, id: hr_job_jea0}:
department_id: 'hr_department_rd0'
description: 'Position of Junior Application Engineer'
expected_employees: 5
name: 'JAE'
-
I check that Employee form is in "Open" state.
-
!assert {model: hr.job, id: hr_job_jea0}:
- state == 'open'
-
I create Employee for job position.
-
!record {model: hr.job, id: hr_job_jea0}:
employee_ids:
- address_home_id: base.res_partner_address_1
name: Manuel Lehba
department_id: 'hr_department_rd0'
gender: male
parent_id: 'hr_employee_mark'
-
I check that "Number of Employees" field have some value.
-
!assert {model: hr.job, id: hr_job_jea0}:
- no_of_employee != False
-
As more requirements on the said job position are come, I increase the number of expected employees.
-
!python {model: hr.job}: |
res = self.on_change_expected_employee(cr, uid, [ref('hr_job_jea0')], 6, 3, None)
assert res['value']['expected_employees']
values = dict([('expected_employees', ref('hr_job_jea0'))] + res['value'].items())
self.write(cr, uid, [ref('hr_job_jea0')], values, None)
-
I open the job position for recruitment.
-
!python {model: hr.job}: |
self.job_recruitement(cr, uid, [ref('hr_job_jea0')])
-
I assign the job position to employee and mark the position.
-
!python {model: hr.job}: |
self.job_open(cr, uid, [ref('hr_job_jea0')])
-
Now the process is over so I don't want to use this position. I mark it as Old.
-
!python {model: hr.job}: |
self.job_old(cr, uid, [ref('hr_job_jea0')])
-
I create a parent category for the new recruited employees who are Freshers.
-
!record {model: hr.employee.category, id: hr_employee_category_fresher0}:
name: Fresher
-
I create another category for Junior Level freshers.
-
!record {model: hr.employee.category, id: hr_employee_category_juniorlevel0}:
name: Junior Level
parent_id: hr_employee_category_fresher0
-
I open the tree view of Categories and see the categories in a hierarchical manner.
-
!python {model: hr.employee.category}: |
res = self.name_get(cr, uid, [ref('hr_employee_category_juniorlevel0')], None)
assert res