diff --git a/addons/hr_evaluation/__openerp__.py b/addons/hr_evaluation/__openerp__.py
index 720c49302d4..9195b50969b 100644
--- a/addons/hr_evaluation/__openerp__.py
+++ b/addons/hr_evaluation/__openerp__.py
@@ -50,7 +50,9 @@ in the form of pdf file. Implements a dashboard for My Current Evaluations
'hr_evaluation_data.xml',
'hr_evaluation_installer.xml',
],
- "test": ["test/test_hr_evaluation.yml"],
+ "test": ["test/test_hr_evaluation.yml",
+ "test/hr_evalution_demo.yml"
+ ],
"active": False,
"installable": True,
"certificate" : "00883207679172998429",
diff --git a/addons/hr_evaluation/hr_evaluation_demo.xml b/addons/hr_evaluation/hr_evaluation_demo.xml
index db096f13266..6fc31170396 100644
--- a/addons/hr_evaluation/hr_evaluation_demo.xml
+++ b/addons/hr_evaluation/hr_evaluation_demo.xml
@@ -14,5 +14,11 @@
+
+ 2011-12-24
+
+
+
+
\ No newline at end of file
diff --git a/addons/hr_evaluation/test/hr_evalution_demo.yml b/addons/hr_evaluation/test/hr_evalution_demo.yml
new file mode 100644
index 00000000000..817be623901
--- /dev/null
+++ b/addons/hr_evaluation/test/hr_evalution_demo.yml
@@ -0,0 +1,6 @@
+-
+ !record {model: hr.employee, id: hr.employee1, view: False}:
+ evaluation_plan_id: hr_evaluation_plan_managersevaluationplan0
+-
+ !record {model: hr_evaluation.evaluation, id: hr_evaluation_evaluation_0, view: False}:
+ plan_id: hr_evaluation.hr_evaluation_plan_managersevaluationplan0
\ No newline at end of file
diff --git a/addons/hr_evaluation/test/test_hr_evaluation.yml b/addons/hr_evaluation/test/test_hr_evaluation.yml
index 893f19d0a3e..1acb5c80878 100644
--- a/addons/hr_evaluation/test/test_hr_evaluation.yml
+++ b/addons/hr_evaluation/test/test_hr_evaluation.yml
@@ -1,129 +1,25 @@
-
- In order to test hr_evaluation module for OpenERP, I will create plan then create evaluation under that plan.
--
-
- I create new Department.
--
- !record {model: hr.department, id: hr_department_rd0}:
- manager_id: base.user_root
- name: 'R & D'
--
- I create a new employee.
--
- !record {model: hr.employee, id: hr_employee_employee0}:
- address_home_id: base.res_partner_address_1
- company_id: base.main_company
- gender: male
- marital: single
- name: Mark Johnson
- user_id: base.user_root
- department_id: 'hr_department_rd0'
--
- I create another new employee and assign first one as it's Manager.
--
- !record {model: hr.employee, id: hr_employee_employee1}:
- 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_employee0'
-
--
- I Create an "Employee Evaluation" survey for Manager's Evaluation Plan.
--
- !record {model: 'survey', id: survey_0}:
- title: 'Employee Evaluation'
- max_response_limit: 20
- response_user: 2
--
- I Create an "Employee Evaluation" page in "Employee Evaluation" survey.
--
- !record {model: 'survey.page', id: survey_employee_page_0}:
- title: 'Employee Evaluation'
- survey_id: survey_0
--
- I Create "What is your Name" question in "Employee Evaluation" survey page.
--
- !record {model: 'survey.question', id: survey_p_question_0}:
- question: 'What is your Name?'
- type: 'single_textbox'
- sequence: 1
- page_id: survey_employee_page_0
--
- I Create "What is your gender" Question in "Employee Evaluation" survey page.
--
- !record {model: 'survey.question', id: survey_p_question_1}:
- question: 'What is your gender?'
- type: multiple_choice_only_one_ans
- sequence: 2
- is_require_answer: true
- page_id: survey_employee_page_0
--
- I Create "Male" answer in question "What is your gender?"
--
- !record {model: 'survey.answer', id: survey_p_1_1}:
- answer: 'Male'
- sequence: 1
- question_id : survey_p_question_1
--
- I Create "Female" answer in question "What is your gender?"
--
- !record {model: 'survey.answer', id: survey_p_1_2}:
- answer: 'Female'
- sequence: 2
- question_id : survey_p_question_1
-
+ In order to test hr evaluation plan.
-
I set the survey in open state.
-
!python {model: survey}: |
- self.survey_open(cr, uid, [ref("survey_0")], context)
-
+ self.survey_open(cr, uid, [ref("survey_2")], context)
-
- I create an Evaluation plan and select "Employee Evaluation" survey for "Send to Subordinates" and "Final interview with Manager" Phase.
+ I check that state of survey is Open.
-
- !record {model: hr_evaluation.plan, id: hr_evaluation_plan_managersplan0}:
- company_id: base.main_company
- month_first: 3
- month_next: 6
- name: Manager's Plan
- phase_ids:
- - action: bottom-up
- name: Send to Subordinates
- survey_id: 'survey_0'
- - action: top-down
- name: Final Interview with manager
- sequence: 2
- survey_id: 'survey_0'
--
- I assign the evaluation plan to the employee "Mark Johnson".
--
- !python {model: hr.employee}: |
- res = self.onchange_evaluation_plan_id(cr, uid, [ref('hr_employee_employee0')], ref('hr_evaluation_plan_managersplan0'), False, None)
- values = dict([('evaluation_plan_id', ref('hr_evaluation_plan_managersplan0'))] + res['value'].items())
- self.write(cr, uid, [ref('hr_employee_employee0')], values, None)
--
- I create an Evaluation for employee under "Manager Evaluation Plan".
--
- !record {model: hr_evaluation.evaluation, id: hr_evaluation_evaluation_0}:
- date: !eval time.strftime('%Y-%m-%d')
- employee_id: 'hr_employee_employee1'
- plan_id: 'hr_evaluation_plan_managersplan0'
- progress: 0.0
- state: draft
--
- I change the employee on Evaluation.
--
- !python {model: hr_evaluation.evaluation}: |
- res = self.onchange_employee_id(cr, uid, [ref('hr_evaluation_evaluation_0')], ref('hr_employee_employee0'), None)
- values = dict([('employee_id', ref('hr_employee_employee0'))] + res['value'].items())
- self.write(cr, uid, [ref('hr_evaluation_evaluation_0')], values, None)
+ !assert {model: survey, id: survey_2, severity: error, string: Survey should be in OPen state}:
+ - state == 'open'
-
I start the evaluation process by click on "Start Evaluation" button.
-
!python {model: hr_evaluation.evaluation}: |
self.button_plan_in_progress(cr, uid, [ref('hr_evaluation_evaluation_0')])
+-
+ I check that state is open.
+-
+ !assert {model: hr_evaluation.evaluation, id: hr_evaluation_evaluation_0, severity: error, string: Evaluation should be in open state}:
+ - state == 'wait'
-
I find a mistake on evaluation form. So I cancel the evaluation and again start it.
-
@@ -131,12 +27,21 @@
self.button_cancel(cr, uid, [ref('hr_evaluation_evaluation_0')])
self.button_draft(cr, uid, [ref('hr_evaluation_evaluation_0')])
self.button_plan_in_progress(cr, uid, [ref('hr_evaluation_evaluation_0')])
+-
+ I check that state is open.
+-
+ !assert {model: hr_evaluation.evaluation, id: hr_evaluation_evaluation_0, severity: error, string: Evaluation should be in open state}:
+ - state == 'wait'
-
I close this survey request by giving answer of survey question.
-
!python {model: hr_evaluation.evaluation}: |
evaluation = self.browse(cr, uid, ref('hr_evaluation_evaluation_0'))
- self.pool.get('hr.evaluation.interview').survey_req_done(cr, uid, [r.id for r in evaluation.survey_request_ids])
+ interview_obj=self.pool.get('hr.evaluation.interview')
+ interview_obj.survey_req_done(cr, uid, [r.id for r in evaluation.survey_request_ids])
+ for survey in evaluation.survey_request_ids:
+ interview = interview_obj.browse(cr, uid, survey.id, context)
+ assert interview.state == "done", 'survey must be in done state'
-
I print the survey.
-
@@ -147,9 +52,7 @@
I click on "Final Validation" button to finalise evaluation.
-
!python {model: hr_evaluation.evaluation}: |
- self.button_final_validation(cr, uid, [ref("hr_evaluation.hr_evaluation_evaluation_0")],
- {"active_ids": [ref("hr_evaluation.menu_open_view_hr_evaluation_tree")]})
-
+ self.button_final_validation(cr, uid, [ref("hr_evaluation_evaluation_0")])
-
I check that state is "Final Validation".
-
@@ -158,11 +61,15 @@
-
Give Rating "Meet expectations" by selecting overall Rating.
-
- !record {model: hr_evaluation.evaluation, id: hr_evaluation.hr_evaluation_evaluation_0}:
+ !record {model: hr_evaluation.evaluation, id: hr_evaluation_evaluation_0}:
rating: '2'
-
-
I close this Evaluation by click on "Done" button of this wizard.
-
!python {model: hr_evaluation.evaluation}: |
- self.button_done(cr, uid, [ref("hr_evaluation.hr_evaluation_evaluation_0")], {"active_ids": [ref("hr_evaluation.menu_open_view_hr_evaluation_tree")]})
+ self.button_done(cr, uid, [ref("hr_evaluation_evaluation_0")])
+-
+ I check that state of Evaluation is done.
+-
+ !assert {model: hr_evaluation.evaluation, id: hr_evaluation_evaluation_0, severity: error, string: Evaluation should be in pending state}:
+ - state == 'done'
\ No newline at end of file