diff options
| author | pap (openerp) <pap@tinyerp.co.in> | 2010-06-03 16:54:20 +0530 |
|---|---|---|
| committer | pap (openerp) <pap@tinyerp.co.in> | 2010-06-03 16:54:20 +0530 |
| commit | 7ac215e587ea4107a705f1b57ac43ec3fefeb9ee (patch) | |
| tree | 761766f448e7f2b0bdd14db859313d420381fa18 /addons/project_long_term/test | |
| parent | 7d239dc01d9b986ebd311ff5bdfdcb72ec02fb07 (diff) | |
[ADD]:added yml test for project and project_ modules
bzr revid: pap@tinyerp.co.in-20100603112420-uofelwn685xlheum
Diffstat (limited to 'addons/project_long_term/test')
3 files changed, 352 insertions, 0 deletions
diff --git a/addons/project_long_term/test/schedule_phase_tasks.yml b/addons/project_long_term/test/schedule_phase_tasks.yml new file mode 100644 index 00000000000..73b4e204188 --- /dev/null +++ b/addons/project_long_term/test/schedule_phase_tasks.yml @@ -0,0 +1,101 @@ +- + Create project Project123 +- + !record {model: project.project, id: project_project_project0}: + company_id: base.main_company + name: Project123 + members: + - project_long_term.res_users_manager0 + - project_long_term.res_users_user0 + - project_long_term.res_users_userfinance0 + - project_long_term.res_users_userdesign0 + - project_long_term.res_users_userdeveloper0 + - project_long_term.res_users_usertester0 + - project_long_term.res_users_useranalyst0 +- + Create phase phase123 +- + !record {model: project.phase, id: project_phase_phase0}: + date_start: '2010-06-02 00:00:00' + duration: 200.0 + name: phase123 + product_uom: product.uom_day + project_id: project_project_project0 + state: draft + resource_ids: + - resource_id: project_long_term.resource_resource_analyst0 + useability: 80.0 + - resource_id: project_long_term.resource_resource_programmer0 + useability: 30.0 + - resource_id: project_long_term.resource_resource_webdesigner0 + useability: 30.0 + + +- + Create the project task t1 +- + !record {model: project.task, id: project_task_t0}: + name: t1 + occupation_rate: 1.0 + planned_hours: 20.0 + remaining_hours: 20.0 + state: draft + phase_id: project_phase_phase0 + project_id: project_project_project0 + + +- + Create the project task t2 +- + !record {model: project.task, id: project_task_t1}: + name: t2 + occupation_rate: 1.0 + planned_hours: 25.0 + remaining_hours: 25.0 + state: draft + phase_id: project_phase_phase0 + project_id: project_project_project0 + +- + Create the project task t3 +- + !record {model: project.task, id: project_task_t2}: + name: t3 + occupation_rate: 1.0 + planned_hours: 30.0 + remaining_hours: 30.0 + state: draft + phase_id: project_phase_phase0 + project_id: project_project_project0 + + +- + Create the project task t4 +- + !record {model: project.task, id: project_task_3}: + name: t4 + occupation_rate: 1.0 + planned_hours: 25.0 + remaining_hours: 25.0 + state: draft + phase_id: project_phase_phase0 + project_id: project_project_project0 + + +- + Schedule phase tasks +- + !python {model: project.schedule.tasks}: | + self.compute_date(cr, uid, {"lang": "en_US", + "active_model": "project.phase", "active_ids": [ref("project_phase_phase0")], + "tz": False, "record_id": 138, "project_id": ref("project_project_project0"), "active_id": ref("project_phase_phase0"), + }) + +- + Check if tasks scheduled, check that either of task's start_date, end_date and user_id is not null +- + !python {model: project.phase}: | + phase=self.browse(cr, uid, [ref("project_phase_phase0")])[0] + for task in phase.task_ids: + if (not task.user_id) or (not task.date_start) or (not task.date_end): + raise AssertionError("Phase Tasks not scheduled")
\ No newline at end of file diff --git a/addons/project_long_term/test/schedule_project_phases.yml b/addons/project_long_term/test/schedule_project_phases.yml new file mode 100644 index 00000000000..470f2dc2e48 --- /dev/null +++ b/addons/project_long_term/test/schedule_project_phases.yml @@ -0,0 +1,143 @@ +- + Create a project 'World Bank's Project' +- + !record {model: project.project, id: project_project_worldbanksproject0}: + company_id: base.main_company + name: "World Bank's Project" + priority: 4 + +- + Create a project phase 'Defining Client's Basic Idea of Project' +- + !record {model: project.phase, id: project_phase_definingclientsbasicideaofproject0}: + date_start: '2010-06-02 00:00:00' + duration: 15.0 + name: "Defining Client's Basic Idea of Project" + product_uom: product.uom_day + project_id: project_project_worldbanksproject0 + state: draft + + +- + Create project phase 'Establishing Project Feasibility' +- + !record {model: project.phase, id: project_phase_establishingprojectfeasibility0}: + date_start: '2010-06-02 00:00:00' + duration: 30.0 + name: Establishing Project Feasibility + product_uom: product.uom_day + project_id: project_project_worldbanksproject0 + state: draft + +- + Create project phase 'Preparation of Engineering Designs' +- + !record {model: project.phase, id: project_phase_preparationofengineeringdesigns0}: + date_start: '2010-06-02 00:00:00' + duration: 100.0 + name: Preparation of Engineering Designs + product_uom: product.uom_hour + project_id: project_project_worldbanksproject0 + state: draft + + +- + Create project phase 'Procurement of Works and Goods' +- + !record {model: project.phase, id: project_phase_procurementofworksandgoods0}: + date_start: '2010-06-02 00:00:00' + duration: 24.0 + name: Procurement of Works and Goods + product_uom: product.uom_hour + project_id: project_project_worldbanksproject0 + state: draft + + +- + Create project phase 'Project Construction' +- + !record {model: project.phase, id: project_phase_projectconstruction0}: + date_start: '2010-06-02 00:00:00' + duration: 4320.0 + name: Project Construction + product_uom: product.uom_hour + project_id: project_project_worldbanksproject0 + state: draft + + +- + Create project phase 'Project Completion' +- + !record {model: project.phase, id: project_phase_projectcompletion0}: + date_start: '2010-06-02 00:00:00' + duration: 240.0 + name: Project Completion + product_uom: product.uom_hour + project_id: project_project_worldbanksproject0 + state: draft + +- + Set previous phase for phase 'Establishing Project Feasibility' +- + !record {model: project.phase, id: project_phase_establishingprojectfeasibility0}: + previous_phase_ids: + - project_phase_definingclientsbasicideaofproject0 + + +- + Set previous phase for phase 'Preparation of Engineering Designs' +- + !record {model: project.phase, id: project_phase_preparationofengineeringdesigns0}: + previous_phase_ids: + - project_phase_establishingprojectfeasibility0 + +- + Set previous phase for phase 'Procurement of Works and Goods' +- + !record {model: project.phase, id: project_phase_procurementofworksandgoods0}: + previous_phase_ids: + - project_phase_preparationofengineeringdesigns0 + +- + Set previous phase for phase 'Project Construction' +- + !record {model: project.phase, id: project_phase_projectconstruction0}: + previous_phase_ids: + - project_phase_procurementofworksandgoods0 + + +- + Set previous phase for phase 'Project Completion' +- + !record {model: project.phase, id: project_phase_projectcompletion0}: + previous_phase_ids: + - project_phase_projectconstruction0 + + +- + Get the project to schedule phases +- + !record {model: project.compute.phases, id: project_compute_phases_0}: + project_id: project_project_worldbanksproject0 + target_project: one + + +- + Schedule project phases +- + !python {model: project.compute.phases}: | + self.check_selection(cr, uid, [ref("project_compute_phases_0")], {"lang": "en_US", + "project_id": False, "tz": False, "active_model": "ir.ui.menu", "department_id": + False, "section_id": False, "record_id": 279, "active_ids": [ref("project_long_term.menu_compute_phase")], + "active_id": ref("project_long_term.menu_compute_phase"), }) + +- + Check if phases scheduled, check that either of phase's start_date, end_date and user_id is not null +- + !python {model: project.project}: | + prj=self.browse(cr, uid, [ref("project_project_worldbanksproject0")])[0] + for task in prj.tasks: + if (not task.user_id) or (not task.date_start) or (not task.date_end): + raise AssertionError("Tasks not scheduled") + +
\ No newline at end of file diff --git a/addons/project_long_term/test/schedule_project_tasks.yml b/addons/project_long_term/test/schedule_project_tasks.yml new file mode 100644 index 00000000000..3bdeec68452 --- /dev/null +++ b/addons/project_long_term/test/schedule_project_tasks.yml @@ -0,0 +1,108 @@ +- + Create project Project2 +- + !record {model: project.project, id: project_project_project1}: + company_id: base.main_company + name: Project2 + members: + - project_long_term.res_users_manager0 + - project_long_term.res_users_user0 + - project_long_term.res_users_userfinance0 + - project_long_term.res_users_userdesign0 + - project_long_term.res_users_userdeveloper0 + - project_long_term.res_users_usertester0 + - project_long_term.res_users_useranalyst0 + +- + Create phase phase22 +- + !record {model: project.phase, id: project_phase_phase1}: + date_start: '2010-06-02 00:00:00' + duration: 100.0 + name: phase22 + product_uom: product.uom_day + project_id: project_project_project1 + state: draft + resource_ids: + - resource_id: project_long_term.resource_resource_analyst0 + useability: 80.0 + - resource_id: project_long_term.resource_resource_programmer0 + useability: 30.0 + - resource_id: project_long_term.resource_resource_webdesigner0 + useability: 30.0 + + +- + Create the project task t1 +- + !record {model: project.task, id: project_task_t00}: + name: t1 + occupation_rate: 1.0 + planned_hours: 20.0 + remaining_hours: 20.0 + state: draft + phase_id: project_phase_phase1 + project_id: project_project_project1 + + +- + Create the project task t2 +- + !record {model: project.task, id: project_task_t11}: + name: t2 + occupation_rate: 1.0 + planned_hours: 25.0 + remaining_hours: 25.0 + state: draft + phase_id: project_phase_phase1 + project_id: project_project_project1 + +- + Create the project task t3 +- + !record {model: project.task, id: project_task_t22}: + name: t3 + occupation_rate: 1.0 + planned_hours: 30.0 + remaining_hours: 30.0 + state: draft + phase_id: project_phase_phase1 + project_id: project_project_project1 + + +- + Create the project task t4 +- + !record {model: project.task, id: project_task_t33}: + name: t4 + occupation_rate: 1.0 + planned_hours: 25.0 + remaining_hours: 25.0 + state: draft + phase_id: project_phase_phase1 + project_id: project_project_project1 + +- + Get the project to schedule the tasks +- + !record {model: project.compute.tasks, id: project_compute_tasks_0}: + project_id: project_project_project1 + + +- + Schedule tasks +- + !python {model: project.compute.tasks}: | + self.compute_date(cr, uid, [ref("project_compute_tasks_0")], {"lang": "en_US", + "active_model": "ir.ui.menu", "active_ids": [ref("project_long_term.menu_compute_tasks")], + "tz": False, "record_id": 138, "project_id": ref("project_project_project1"), "active_id": ref("project_long_term.menu_compute_tasks"), + }) + +- + Check if tasks scheduled, check that either of task's start_date, end_date and user_id is not null +- + !python {model: project.project}: | + prj=self.browse(cr, uid, [ref("project_project_project1")])[0] + for task in prj.tasks: + if (not task.user_id) or (not task.date_start) or (not task.date_end): + raise AssertionError("Project Tasks not scheduled")
\ No newline at end of file |
