[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:
parent
99a3ab1c43
commit
1132f8cb58
|
@ -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',
|
||||
|
|
|
@ -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
|
||||
-
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
@ -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
|
|
@ -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
|
Loading…
Reference in New Issue