← Back to team overview

openerp-dev-web team mailing list archive

lp:~openerp-dev/openobject-addons/addons-training-exam-yml-improve-ysa into lp:~openobject-training/openobject-addons/training

 

Yogesh(Open ERP) has proposed merging lp:~openerp-dev/openobject-addons/addons-training-exam-yml-improve-ysa into lp:~openobject-training/openobject-addons/training.

Requested reviews:
  OpenObject Training (openobject-training)

For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-addons/addons-training-exam-yml-improve-ysa/+merge/59639

[IMP] training_exam :- improve yml test of training_exam module.
-- 
https://code.launchpad.net/~openerp-dev/openobject-addons/addons-training-exam-yml-improve-ysa/+merge/59639
Your team OpenERP R&D Team is subscribed to branch lp:~openerp-dev/openobject-addons/addons-training-exam-yml-improve-ysa.
=== modified file 'training_exam/test/training_exam.yml'
--- training_exam/test/training_exam.yml	2011-04-29 09:09:03 +0000
+++ training_exam/test/training_exam.yml	2011-05-02 07:09:28 +0000
@@ -1,44 +1,183 @@
 -
-  I Create Exam Question for Training Courses  Open ERP 5.0 - Accounting, Open ERP 5.0 - Open Office Report Designer,
-  Open ERP 5.0 - Modules
--
-  !record {model: training.exam.question, id: training_exam_question_question0}:
-    course_ids:
-      - training.training_course_openerpaccounting2
-      - training.training_course_openerpopenofficereportdesigner0
-      - training.training_course_openerpmodules0
-    duration: 1.0
-    name: info_1000
-    point: 10.0
-    question: What is process?
-    state: draft
-    type: plain
-    version: 0.0
--
-  I Validate the Exam Question
--
- !python {model: training.exam.question}: |
-    self.action_validate(cr, uid, [ref("training_exam_question_question0")], {"lang": "en_US", "tz": False, "active_model": "training.exam.question", "active_ids": [ref("training_exam_question_question0")], "active_id": ref("training_exam_question_question0"), })
-
--
-  I Create a Questionnaire for Main Course Open ERP 5.0 - Accounting and Courses
--
-  !record {model: training.exam.questionnaire, id: training_exam_questionnaire_questionnaries0}:
+  I Assign the course in "info_1" Question.
+-
+  !record {model: training.exam.question, id: training_exam.question_1}:
+    course_ids:
+      - training.training_course_openerpcrm0
+      - training.training_course_openerpaccounting0
+-
+  I Assign the course in "info_2" Question.
+-
+  !record {model: training.exam.question, id: training_exam.question_2}:
+    course_ids:
+      - training.training_course_openerpcrm0
+      - training.training_course_openerpaccounting0
+
+-
+  I Assign the course in "info_3" Question.
+-
+  !record {model: training.exam.question, id: training_exam.question_3}:
+    course_ids:
+      - training.training_course_openerpcrm0
+      - training.training_course_openerpaccounting0
+
+-
+  I Validate the Question "info_1", "info_2" and "info_3" using Validate button.
+-
+  !python {model: training.exam.question.validate.wizard}: |
+    self.action_validate_wo_qz(cr, uid, [ref('training_exam.question_1')], {'active_id' : ref('training_exam.question_1'), 'active_ids':[ref('training_exam.question_1')]})
+
+-
+  I Assign product in "Basic" Course Type.
+-
+  !record {model: training.course_type, id: training.training_course_type_basic0}:
+    exam_product_id: training.product_product_coursesession0
+
+-
+  I Create "Open ERP" Exam Questionnaire Record.
+-
+  !record {model: training.exam.questionnaire, id: training_exam_questionnaire_openerp0}:
     course_ids:
       - course_id: training.training_course_openerpcrm0
-      - course_id: training.training_course_openerpaccounting0
-      - course_id: training.training_course_economicmodelofopenerp0
+        passing_score: 0.0
     kind: automatic
-    main_course_id: training.training_course_openerpaccounting0
-    name: Questionnaire For Openerp Course
-    question_ids:
-      - question_id: training_exam_question_question0
-        sequence: 1
-    reference: QZ/10000
-    state: draft
+    main_course_id: training.training_course_openerpcrm0
+    name: Open ERP
     type: examen
     version: 0.0
--
-  I Validate the Exam Questionnaire
--
-  !workflow {model: training.exam.questionnaire, action: signal_teq_validate, ref: training_exam_questionnaire_questionnaries0}
+
+-
+  I Assign Question in "Open ERP" Questionnaire using Add Question Wizard.
+-
+  !python {model: training.exam.wizard.helper}: |
+    wiz_id = self.create(cr, uid, {'questionnaire_id': ref("training_exam_questionnaire_openerp0"), 'question_ids': [[6, 0, [ref('training_exam.question_1'), ref('training_exam.question_2'), ref('training_exam.question_3')]]]})
+    self.add_questions_cb(cr, uid, [wiz_id], context)
+
+-
+  I Create Offer by click on Create Standalone Offer Wizard.
+-
+  !python {model: training.create.offer}: |
+    self.create_offers(cr, uid, [], {"active_model": "training.offer",
+            "active_ids": [ref("training.training_course_openerpcrm0")], "tz": False,
+            "active_id": ref("training.training_course_openerpcrm0"), })
+
+-
+  I change the state draft to validate by click on Validate button of "Open ERP 5.0 - CRM" Offer
+-
+  !python {model: training.offer}: |
+    import netsvc
+    wf_service = netsvc.LocalService("workflow")
+    offer_id = self.search(cr, uid, [('name','=','Open ERP 5.0 - CRM')])
+    self.write(cr, uid, offer_id, {'kind':'exam'})
+    for id in offer_id:
+        wf_service.trg_validate(uid, 'training.offer',id,'signal_validate', cr)
+
+-
+  I Create Session by click on Create Plannify Session Wizard.
+-
+  !python {model: training.session.create.wizard}: |
+    import time
+    offer_id = self.pool.get('training.offer').search(cr, uid, [('name','=','Open ERP 5.0 - CRM')])
+    session_wiz_id = self.create(cr, uid, {'date': time.strftime('%Y-%m-%d 00:00:00'), 'name': 'Open ERP 5.0 - CRM'}, {"active_model": "training.session.create.wizard",
+            "active_ids": offer_id, "tz": False,
+            "active_id": offer_id[0], })
+    self.create_session(cr, uid, [session_wiz_id], {"active_model": "training.session.create.wizard",
+            "active_ids": offer_id, "tz": False,
+            "active_id": offer_id[0], })
+
+-
+  I Create Seance by click on Create Seance Button in "Open ERP 5.0" Session.
+-
+  !python {model: training.session}: |
+    import time
+    session_id = self.search(cr, uid, [('name','=', "%s (%s)" % ('Open ERP 5.0 - CRM', str(time.strftime('%Y-%m-%d'))) )] )
+    self.action_create_seances(cr, uid, session_id)
+
+-
+  I change the state draft to open by click on Open button of "Open ERP 5.0 - CRM" Session
+-
+  !python {model: training.session}: |
+    import netsvc
+    import time
+    wf_service = netsvc.LocalService("workflow")
+    session_id = self.search(cr, uid, [('name','=', "%s (%s)" % ('Open ERP 5.0 - CRM', str(time.strftime('%Y-%m-%d'))) )] )
+    for id in session_id:
+        wf_service.trg_validate(uid, 'training.session',id,'signal_open', cr)
+
+-
+  I change the state open to confirm by click on Confirm button of "Open ERP 5.0 - CRM" Session
+-
+  !python {model: training.session}: |
+    import netsvc
+    import time
+    wf_service = netsvc.LocalService("workflow")
+    session_id = self.search(cr, uid, [('name','=', "%s (%s)" % ('Open ERP 5.0 - CRM', str(time.strftime('%Y-%m-%d'))) )] )
+    for id in session_id:
+        wf_service.trg_validate(uid, 'training.session',id,'signal_open_confirm', cr)
+
+-
+  I change the state open to confirm by click on Confirm button of Seance
+-
+  !python {model: training.seance}: |
+    import time
+    import netsvc
+    wf_service = netsvc.LocalService("workflow")
+    session_id = self.pool.get('training.session').search(cr, uid, [('name','=', "%s (%s)" % ('Open ERP 5.0 - CRM', str(time.strftime('%Y-%m-%d'))) )] )
+    seance_id = self.search(cr, uid, [('original_session_id','in',session_id)])
+    for id in seance_id:
+        wf_service.trg_validate(uid, 'training.seance',id,'seance_confirm', cr)
+
+-
+  I Create Subscription by click on Create Subscriptions Wizard.
+-
+  !python {model: training.subscription.session}: |
+    import time
+    session_id = self.pool.get('training.session').search(cr, uid, [('name','=', "%s (%s)" % ('Open ERP 5.0 - CRM', str(time.strftime('%Y-%m-%d'))) )] )
+    sub_id = self.create(cr, uid, {'partner_id': ref("base.main_partner"),
+                                   'job_ids': [(6, 0, [ref("base_contact.res_partner_job_11")])],
+                                   'line_ids': [(6, 0, session_id)]})
+    self.make_subscription(cr, uid, [sub_id])
+
+-
+  Change notification mode for "OpenERP S.A." partner.
+-
+  !python {model: res.partner}: |
+    self.write(cr, uid, [ref("base.main_partner")], {'notif_participant' : True})
+
+-
+  I change the state draft to confirm by click on Confirm button of Subscription and Subscription Line
+  And Change state confirm to done by click on Done button in Subscription Line.
+-
+  !python {model: training.subscription}: |
+    import netsvc
+    import time
+    session_id = self.pool.get('training.session').search(cr, uid, [('name','=', "%s (%s)" % ('Open ERP 5.0 - CRM', str(time.strftime('%Y-%m-%d'))) )] )
+    line_ids = self.pool.get('training.subscription.line').search(cr, uid, [('session_id','in',session_id)])
+    self.pool.get('training.subscription.line').write(cr, uid, line_ids, {'course_id' : ref("training.training_course_openerpcrm0")})
+    subscription_id = self.pool.get('training.subscription.line').browse(cr, uid, line_ids[0], ['subscription_id']).subscription_id.id
+    wf_service = netsvc.LocalService("workflow")
+    wf_service.trg_validate(uid, 'training.subscription', subscription_id, 'signal_confirm', cr)
+    for id in line_ids:
+        wf_service.trg_validate(uid, 'training.subscription.line',id,'signal_confirm', cr)
+    for id in line_ids:
+        wf_service.trg_validate(uid, 'training.subscription.line',id,'signal_done', cr)
+
+-
+  I Assign the Questionnaire and Question in Seance Participation.
+-
+  !python {model: training.participation}: |
+    import time
+    session_id = self.pool.get('training.session').search(cr, uid, [('name','=', "%s (%s)" % ('Open ERP 5.0 - CRM', str(time.strftime('%Y-%m-%d'))) )] )
+    seance_id = self.pool.get('training.seance').search(cr, uid, [('original_session_id','in',session_id)])
+    parti_id = self.search(cr, uid, [('seance_id', 'in', seance_id)])
+    self.write(cr, uid, parti_id, {'passing_score': 10, 'present': True, 'questionnaire_id': ref("training_exam_questionnaire_openerp0"), 'participation_line_ids': [[0, 0, {'response_qcm_ids': [[6, 0, [ref("answer_1"), ref("answer_2"), ref("answer_3")]]], 'point': 4.0, 'question_id': ref("training_exam.question_1")}], [0, 0, {'response_qcm_ids': [[6, 0, [ref("answer_4"), ref("answer_5"), ref("answer_6")]]], 'point': 3.0, 'question_id': ref("training_exam.question_2")}],[0, 0, {'response_qcm_ids': [[6, 0, [ref("answer_7"), ref("answer_8"), ref("answer_9")]]], 'point': 4.0, 'question_id': ref("training_exam.question_3")}]]})
+
+-
+  I Check the result and I Recieve The Result.
+-
+  !python {model: training.participation}: |
+    import time
+    session_id = self.pool.get('training.session').search(cr, uid, [('name','=', "%s (%s)" % ('Open ERP 5.0 - CRM', str(time.strftime('%Y-%m-%d'))) )] )
+    seance_id = self.pool.get('training.seance').search(cr, uid, [('original_session_id','in',session_id)])
+    parti_id = self.search(cr, uid, [('seance_id', 'in', seance_id)])
+    self.write(cr, uid, parti_id, {'result_received': True})


Follow ups