openerp-dev-web team mailing list archive
-
openerp-dev-web team
-
Mailing list archive
-
Message #02196
[Merge] lp:~openerp-dev/openobject-addons/trunk-dev-addons1-extra into lp:~openerp-dev/openobject-addons/trunk-dev-addons1
Jigar Amin - OpenERP has proposed merging lp:~openerp-dev/openobject-addons/trunk-dev-addons1-extra into lp:~openerp-dev/openobject-addons/trunk-dev-addons1.
Requested reviews:
OpenERP Core Team (openerp)
Related bugs:
#701070 cannot schedule only one project
https://bugs.launchpad.net/bugs/701070
For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-dev-addons1-extra/+merge/45846
Hello,
Changes proposed for Merge :
+ Project_long_term : YAML Code Re-factoring, reference renamed
Kindly review them.
Thank You
--
https://code.launchpad.net/~openerp-dev/openobject-addons/trunk-dev-addons1-extra/+merge/45846
Your team OpenERP R&D Team is subscribed to branch lp:~openerp-dev/openobject-addons/trunk-dev-addons1-extra.
=== modified file 'project_long_term/__openerp__.py'
--- project_long_term/__openerp__.py 2011-01-10 06:10:53 +0000
+++ project_long_term/__openerp__.py 2011-01-11 12:34:03 +0000
@@ -40,15 +40,15 @@
"init_xml": [],
"demo_xml": ["project_long_term_demo.xml"],
"test": [
- 'test/project_schedule_consecutive_day.yml',
- 'test/project_schedule_without_wroking_hour.yml',
+ 'test/test_schedule_phases_case1.yml',
'test/schedule_project_phases.yml',
- 'test/phase_constraint.yml',
+ 'test/schedule_project_tasks.yml',
'test/test_schedule_phases_case2.yml',
- 'test/test_schedule_phases_case1.yml',
- 'test/schedule_project_tasks.yml',
+ 'test/project_schedule_consecutive_day.yml',
+ 'test/project_schedule_without_wroking_hour.yml',
'test/schedule_phase_tasks.yml',
- 'test/test_schedule_tasks_case1.yml'
+ 'test/phase_constraint.yml',
+ 'test/test_schedule_tasks_case1.yml',
],
"update_xml": [
"security/ir.model.access.csv",
=== modified file 'project_long_term/test/project_schedule_consecutive_day.yml'
--- project_long_term/test/project_schedule_consecutive_day.yml 2011-01-07 14:51:34 +0000
+++ project_long_term/test/project_schedule_consecutive_day.yml 2011-01-11 12:34:03 +0000
@@ -1,124 +1,124 @@
-
Create a project 'Develop yaml Project Module'.
-
- !record {model: project.project, id: project_project_developyamlproject123}:
+ !record {model: project.project, id: project_project_developyamlproject_2}:
name: "Develop Yaml Project Module"
date_start: !eval time.strftime('%Y-%m-%d')
-
I have set Working Time from Monday to Friday from 9am to 17pm.
-
- !record {model: resource.calendar, id: resource_calendar_hoursweekstest2}:
+ !record {model: resource.calendar, id: resource_calendar_hoursweekstest_P2}:
name: "from Monday to Friday, from 9am to 17pm"
-
I have set Day1 Working Time for Monday to Friday from 9am to 17pm working hour
-
- !record {model: resource.calendar.attendance, id: resource_calendar_atendanceday1}:
+ !record {model: resource.calendar.attendance, id: resource_calendar_hoursweekstest_P2day1}:
name: "Day1"
hour_from : 09.00
hour_to : 17.00
dayofweek : "0"
- calendar_id : resource_calendar_hoursweekstest2
+ calendar_id : resource_calendar_hoursweekstest_P2
-
I have set Day2 Working Time for Monday to Friday from 9am to 17pm working hour
-
- !record {model: resource.calendar.attendance, id: resource_calendar_atendanceday2}:
+ !record {model: resource.calendar.attendance, id: rresource_calendar_hoursweekstest_P2day2}:
name: "Day2"
hour_from : 09.00
hour_to : 17.00
dayofweek : "1"
- calendar_id : resource_calendar_hoursweekstest2
+ calendar_id : resource_calendar_hoursweekstest_P2
-
I have set Day3 Working Time for Monday to Friday from 9am to 17pm working hour
-
- !record {model: resource.calendar.attendance, id: resource_calendar_atendanceday3}:
+ !record {model: resource.calendar.attendance, id: resource_calendar_hoursweekstest_P2day3}:
name: "Day3"
hour_from : 09.00
hour_to : 17.00
dayofweek : "2"
- calendar_id : resource_calendar_hoursweekstest2
+ calendar_id : resource_calendar_hoursweekstest_P2
-
I have set Day4 Working Time for Monday to Friday from 9am to 17pm working hour
-
- !record {model: resource.calendar.attendance, id: resource_calendar_atendanceday4}:
+ !record {model: resource.calendar.attendance, id: resource_calendar_hoursweekstest_P2day4}:
name: "Day4"
- hour_from : 09.00
- hour_to : 17.00
- dayofweek : "3"
- calendar_id : resource_calendar_hoursweekstest2
+ hour_from: 09.00
+ hour_to: 17.00
+ dayofweek: "3"
+ calendar_id: resource_calendar_hoursweekstest_P2
-
I have set Day5 Working Time for Monday to Friday from 9am to 17pm working hour
--
- !record {model: resource.calendar.attendance, id: resource_calendar_atendanceday5}:
+-
+ !record {model: resource.calendar.attendance, id: resource_calendar_hoursweekstest_P2day5}:
name: "Day5"
- hour_from : 09.00
- hour_to : 17.00
- dayofweek : "4"
- calendar_id : resource_calendar_hoursweekstest2
+ hour_from: 09.00
+ hour_to: 17.00
+ dayofweek: "4"
+ calendar_id: resource_calendar_hoursweekstest_P2
-
Now Set working period to Project 'Develop yaml Project Module'
-
!python {model: project.project}: |
- self.write(cr, uid, [ref("project_project_developyamlproject123")], {'resource_calendar_id': ref("resource_calendar_hoursweekstest2")})
+ self.write(cr, uid, [ref("project_project_developyamlproject_2")], {'resource_calendar_id': ref("resource_calendar_hoursweekstest_P2")})
-
Create 3 a project phase.
First 'Analysis Flow for Yaml'Project Phase
-
- !record {model: project.phase, id: project_phase_analysisflowforyaml0}:
+ !record {model: project.phase, id: project_project_developyamlproject_2_Phase1}:
date_start: !eval time.strftime('%Y-%m-%d')
duration: 5.0
name: "Analysis Flow for Yaml"
product_uom: product.uom_day
- project_id: project_project_developyamlproject123
+ project_id: project_project_developyamlproject_2
state: draft
-
Create project phase 'Develop yaml'
-
- !record {model: project.phase, id: project_phase_establishingprojectfeasibility0}:
+ !record {model: project.phase, id: project_project_developyamlproject_2_Phase2}:
duration: 5.0
name: Develop Yaml
product_uom: product.uom_day
- project_id: project_project_developyamlproject123
+ project_id: project_project_developyamlproject_2
previous_phase_ids:
- - project_phase_analysisflowforyaml0
+ - project_project_developyamlproject_2_Phase1
-
Create project phase 'Test Yaml'
-
- !record {model: project.phase, id: project_phase_preparationofengineeringdesigns0}:
+ !record {model: project.phase, id: project_project_developyamlproject_2_Phase3}:
duration: 5.0
name: Testing Yaml
product_uom: product.uom_day
- project_id: project_project_developyamlproject123
+ project_id: project_project_developyamlproject_2
previous_phase_ids:
- - project_phase_establishingprojectfeasibility0
+ - project_project_developyamlproject_2_Phase2
-
Compute Schedule of phases For One project
-
!record {model: project.compute.phases, id: project_compute_phases_0}:
- project_id: project_project_developyamlproject123
+ project_id: project_project_developyamlproject_2
target_project: one
-
Schedule project phases using Compute Phase Scheduling
-
!python {model: project.project}: |
- self.schedule_phases(cr, uid, [ref("project_project_developyamlproject123")])
+ self.schedule_phases(cr, uid, [ref("project_project_developyamlproject_2")])
-
After scheduling, Check that phases scheduled, check that either of phase's start_date, end_date not null.
-
!python {model: project.project}: |
- proj=self.browse(cr, uid, [ref("project_project_developyamlproject123")])[0]
+ proj=self.browse(cr, uid, [ref("project_project_developyamlproject_2")])[0]
for phase in proj.phase_ids:
if (not phase.responsible_id) or (not phase.date_start) or (not phase.date_end):
raise AssertionError("Phases not scheduled")
=== modified file 'project_long_term/test/project_schedule_without_wroking_hour.yml'
--- project_long_term/test/project_schedule_without_wroking_hour.yml 2011-01-07 14:51:34 +0000
+++ project_long_term/test/project_schedule_without_wroking_hour.yml 2011-01-11 12:34:03 +0000
@@ -1,7 +1,7 @@
-
Create a project 'Develop yaml Implementation Module'.
-
- !record {model: project.project, id: project_project_developyamlproject0}:
+ !record {model: project.project, id: project_project_developyamlproject_2}:
name: "Develop Yaml Project Module"
date_start: !eval time.strftime('%Y-%m-%d')
@@ -9,67 +9,67 @@
Create 4 Project phase.
First Project Phase 'Analysis Flow for Yaml'
-
- !record {model: project.phase, id: project_phase_analysisflowforyaml0}:
+ !record {model: project.phase, id: project_project_developyamlproject_2_phase_1}:
date_start: !eval time.strftime('%Y-%m-%d')
duration: 6.0
product_uom: product.uom_day
name: "Analysis Flow for Yaml"
- project_id: project_project_developyamlproject0
+ project_id: project_project_developyamlproject_2
responsible_id: project.res_users_analyst
state: draft
-
Create project phase 'Develop yaml'
-
- !record {model: project.phase, id: project_phase_establishingprojectfeasibility0}:
+ !record {model: project.phase, id: project_project_developyamlproject_2_phase_2}:
duration: 6.0
name: "Develop yaml"
product_uom: product.uom_day
- project_id: project_project_developyamlproject0
+ project_id: project_project_developyamlproject_2
previous_phase_ids:
- - project_phase_analysisflowforyaml0
+ - project_project_developyamlproject_2_phase_1
state: draft
-
Create project phase 'Test Yaml'
-
- !record {model: project.phase, id: project_phase_preparationofengineeringdesigns0}:
+ !record {model: project.phase, id: project_project_developyamlproject_2_phase_3}:
duration: 6.0
name: Testing Yaml
product_uom: product.uom_day
- project_id: project_project_developyamlproject0
+ project_id: project_project_developyamlproject_2
previous_phase_ids:
- - project_phase_establishingprojectfeasibility0
+ - project_project_developyamlproject_2_phase_2
state: draft
-
Create project phase 'Implement Yaml'
-
- !record {model: project.phase, id: project_phase_implementingreadycase0}:
+ !record {model: project.phase, id: project_project_developyamlproject_2_phase_4}:
duration: 6.0
name: Testing Yaml
product_uom: product.uom_day
- project_id: project_project_developyamlproject0
+ project_id: project_project_developyamlproject_2
previous_phase_ids:
- - project_phase_preparationofengineeringdesigns0
+ - project_project_developyamlproject_2_phase_3
state: draft
-
Compute Schedule of phases For One project
-
!record {model: project.compute.phases, id: project_compute_phases_0}:
- project_id: project_project_developyamlproject0
+ project_id: project_project_developyamlproject_2
target_project: one
-
Schedule project phases using Compute Phase Scheduling
-
!python {model: project.project}: |
- self.schedule_phases(cr, uid, [ref("project_project_developyamlproject0")])
+ self.schedule_phases(cr, uid, [ref("project_project_developyamlproject_2")])
-
After scheduling, Check that phases scheduled, check that either of phase's start_date, end_date not null.
-
!python {model: project.project}: |
- proj=self.browse(cr, uid, [ref("project_project_developyamlproject0")])[0]
+ proj=self.browse(cr, uid, [ref("project_project_developyamlproject_2")])[0]
for phase in proj.phase_ids:
if (not phase.responsible_id) or (not phase.date_start) or (not phase.date_end):
raise AssertionError("Phases not scheduled")
=== modified file 'project_long_term/test/schedule_phase_tasks.yml'
--- project_long_term/test/schedule_phase_tasks.yml 2011-01-11 06:23:37 +0000
+++ project_long_term/test/schedule_phase_tasks.yml 2011-01-11 12:34:03 +0000
@@ -1,7 +1,7 @@
-
Create project 'Develop an outlook-openerp synchronization plugin'
-
- !record {model: project.project, id: project_project_project0}:
+ !record {model: project.project, id: project_project_project4}:
name: Develop an outlook-openerp synchronization plugin
members:
- project.res_users_project_manager
@@ -19,7 +19,7 @@
duration: 200.0
name: Develop GUI in Outlook
product_uom: product.uom_day
- project_id: project_project_project0
+ project_id: project_project_project4
state: draft
resource_ids:
- resource_id: project_long_term.resource_analyst
@@ -37,7 +37,7 @@
remaining_hours: 20.0
state: draft
phase_id: project_phase_phase0
- project_id: project_project_project0
+ project_id: project_project_project4
-
@@ -49,7 +49,7 @@
remaining_hours: 25.0
state: draft
phase_id: project_phase_phase0
- project_id: project_project_project0
+ project_id: project_project_project4
-
Create the phase task 'Develop GUI for OpenERP Synchronisation'
@@ -60,7 +60,7 @@
remaining_hours: 30.0
state: draft
phase_id: project_phase_phase0
- project_id: project_project_project0
+ project_id: project_project_project4
-
Create the phase task 'Design required GUI/Menus'
@@ -71,7 +71,7 @@
remaining_hours: 25.0
state: draft
phase_id: project_phase_phase0
- project_id: project_project_project0
+ project_id: project_project_project4
-
Schedule phase tasks
=== modified file 'project_long_term/test/test_schedule_phases_case1.yml'
--- project_long_term/test/test_schedule_phases_case1.yml 2011-01-11 07:05:46 +0000
+++ project_long_term/test/test_schedule_phases_case1.yml 2011-01-11 12:34:03 +0000
@@ -2,9 +2,10 @@
In order to test scheduling of project phases, I create two different phases and
test it with two different dates for scheduling.
-
- I create a project 'Development and Testing'.
+ I create a project Development and Testing.
-
- !record {model: project.project, id: project_project_project0}:
+ !record {model: project.project, id: project_project_project_case1}:
+ name: "Development and Testing"
date_start: !eval time.strftime('%Y-%m-%d')
balance: 0.0
credit: 0.0
@@ -13,7 +14,7 @@
effective_hours: 0.0
members:
- base.user_admin
- name: Development and Testing
+
planned_hours: 0.0
progress_rate: 0.0
quantity: 0.0
@@ -27,29 +28,29 @@
-
I create first phase of the project.
-
- !record {model: project.phase, id: project_phase_firstphase0}:
+ !record {model: project.phase, id: project_phase_firstphase0_case1}:
duration: 2.0
name: First Phase
product_uom: product.uom_day
- project_id: project_project_project0
+ project_id: project_project_project_case1
state: draft
-
I create second phase of the project.
-
- !record {model: project.phase, id: project_phase_secondphase0}:
+ !record {model: project.phase, id: project_phase_secondphase0_case2}:
duration: 3.0
name: Second Phase
previous_phase_ids:
- - project_phase_firstphase0
+ - project_phase_firstphase0_case1
product_uom: product.uom_day
- project_id: project_project_project0
+ project_id: project_project_project_case1
state: draft
-
Now I create a record to compute the phase of project.
-
!record {model: project.compute.phases, id: project_compute_phases0}:
target_project: 'one'
- project_id: project_project_project0
+ project_id: project_project_project_case1
-
I schedule the phases.
-
@@ -62,9 +63,10 @@
import datetime
from dateutil.relativedelta import *
start = (datetime.date.today()).strftime('%Y-%m-%d')
- end = (datetime.date.today() + relativedelta(days=3)).strftime('%Y-%m-%d')
- first_phase = self.browse(cr, uid, ref('project_phase_firstphase0'))
- assert (first_phase.date_start >= start and first_phase.date_end <= end),'Dates are wrong!'
- second_phase = self.browse(cr, uid, ref('project_phase_secondphase0'))
- end = (datetime.date.today() + relativedelta(days=10)).strftime('%Y-%m-%d')
- assert (second_phase.date_start >= first_phase.date_end and second_phase.date_end <= end),'Dates are wrong!'
+ end = (datetime.date.today() + relativedelta(days=2)).strftime('%Y-%m-%d')
+ first_phase = self.browse(cr, uid, ref('project_phase_firstphase0_case1'))
+ assert (first_phase.date_start == start and first_phase.date_end == end),'Dates are wrong!'
+ second_phase = self.browse(cr, uid, ref('project_phase_secondphase0_case2'))
+ start = first_phase.date_end
+ end = (datetime.date.today() + relativedelta(days=5)).strftime('%Y-%m-%d')
+ assert (second_phase.date_start == start and second_phase.date_end == end),'Dates are wrong!'
Follow ups