summaryrefslogtreecommitdiff
path: root/addons/project_long_term/test/phase_process.yml
diff options
context:
space:
mode:
authorHarry (OpenERP) <hmo@tinyerp.com>2011-11-28 18:23:28 +0530
committerHarry (OpenERP) <hmo@tinyerp.com>2011-11-28 18:23:28 +0530
commit5ea00d2f0c270cd6315251f241d4c51674be9bfa (patch)
tree6322499b66b99eb93ce92b3ef2365ea14e7a44c6 /addons/project_long_term/test/phase_process.yml
parentbe3f9fa4362d095d6d5268f46e433c7bcbf5b2e3 (diff)
[IMP] project_long_term: improve YML test cases of phase
bzr revid: hmo@tinyerp.com-20111128125328-vd4ovcibw844y0d7
Diffstat (limited to 'addons/project_long_term/test/phase_process.yml')
-rw-r--r--addons/project_long_term/test/phase_process.yml79
1 files changed, 79 insertions, 0 deletions
diff --git a/addons/project_long_term/test/phase_process.yml b/addons/project_long_term/test/phase_process.yml
new file mode 100644
index 00000000000..77d7b6bce1a
--- /dev/null
+++ b/addons/project_long_term/test/phase_process.yml
@@ -0,0 +1,79 @@
+-
+ In order to test process of Phases,
+-
+ I create a record to schedule the phase of project.
+-
+ !record {model: project.compute.phases, id: project_compute_phases01}:
+ target_project: 'one'
+ project_id: project.project_integrate_openerp
+-
+ I schedule the phases.
+-
+ !python {model: project.compute.phases}: |
+ self.check_selection(cr, uid, [ref("project_compute_phases01")])
+-
+ I check the starting date and ending date on the phases after scheduling.
+-
+ !python {model: project.project}: |
+ project = self.browse(cr, uid, ref("project.project_integrate_openerp"), context=context)
+ def _convert(date):
+ import time
+ return time.strptime(date, '%Y-%m-%d %H:%M:%S')
+ def _check(phase, _convert, _check): #TOFIX: why need to pass function ?
+ for next_phase in phase.next_phase_ids:
+ assert _convert(next_phase.date_start) >= _convert(phase.date_end), "Phase does not start in proper date."
+ _check(next_phase, _convert, _check)
+ return True
+
+ for phase in project.phase_ids:
+
+ assert phase.date_start, "Start date should be computed."
+ assert phase.date_end, "End date should be computed."
+ if not phase.previous_phase_ids and phase.constraint_date_start:
+ assert _convert(phase.date_start) >= _convert(phase.constraint_date_start), "Phase does not start in proper date."
+ _check(phase, _convert, _check)
+-
+ I open phase.
+-
+ !python {model: project.phase}: |
+ self.set_open(cr, uid, [ref("project_phase_1")])
+-
+ I check state of phase after opened.
+-
+ !assert {model: project.phase, id: project_phase_1, severity: error, string: Phase should be in open state}:
+ - state == "open"
+-
+ I put phase in pending state.
+-
+ !python {model: project.phase}: |
+ self.set_pending(cr, uid, [ref("project_phase_1")])
+-
+ I check state of phase after put in pending.
+-
+ !assert {model: project.phase, id: project_phase_1, severity: error, string: Phase should be in pending state}:
+ - state == "pending"
+-
+ I make Phase in cancel state.
+-
+ !python {model: project.phase}: |
+ self.set_cancel(cr, uid, [ref("project_phase_1")])
+-
+ I check state of phase after cancelled.
+-
+ !assert {model: project.phase, id: project_phase_1, severity: error, string: Phase should be in cancel state}:
+ - state == "cancelled"
+-
+ I put again in draft phase.
+-
+ !python {model: project.phase}: |
+ self.set_draft(cr, uid, [ref("project_phase_1")])
+-
+ I close phase.
+-
+ !python {model: project.phase}: |
+ self.set_done(cr, uid, [ref("project_phase_1")])
+-
+ I check state of phase after closed.
+-
+ !assert {model: project.phase, id: project_phase_1, severity: error, string: Phase should be in done state}:
+ - state == "done"