← Back to team overview

openerp-dev-web team mailing list archive

[Merge] lp:~openerp-dev/openobject-addons/addons-training-yml-test into lp:~openobject-training/openobject-addons/training

 

Yogesh(Open ERP) has proposed merging lp:~openerp-dev/openobject-addons/addons-training-yml-test 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-yml-test/+merge/59190

Add yaml test case of training and training_degree module.
-- 
https://code.launchpad.net/~openerp-dev/openobject-addons/addons-training-yml-test/+merge/59190
Your team OpenERP R&D Team is subscribed to branch lp:~openerp-dev/openobject-addons/addons-training-yml-test.
=== modified file 'training/__openerp__.py'
--- training/__openerp__.py	2011-03-22 11:24:03 +0000
+++ training/__openerp__.py	2011-04-27 09:31:04 +0000
@@ -114,6 +114,9 @@
         'training_holiday_view.xml',
         'document_price_view.xml',
     ],
+    'test': [
+        'test/training.yml',
+    ],
     'active' : False,
     'installable' : True,
 }

=== added directory 'training/test'
=== added file 'training/test/training.yml'
--- training/test/training.yml	1970-01-01 00:00:00 +0000
+++ training/test/training.yml	2011-04-27 09:31:04 +0000
@@ -0,0 +1,348 @@
+- |
+  Training Management
+-
+  I Create "Test Open ERP Technical" Training course theme record.
+-
+  !record {model: training.course.theme, id: training_course_theme_openerptechnical0}:
+    name: Test Open ERP Technical
+    partner_ids:
+      - base.main_partner
+
+-
+  I Create "Test Module Developer" Training Course Category Record.
+-
+  !record {model: training.course_category, id: training_course_category_moduledeveloper0}:
+    name: Test Module Developer
+    partner_ids:
+      - base.main_partner
+    price_list_id: product.list0
+
+-
+  Assign Lecture in Basic Training Course type.
+-
+  !record {model: training.course_type, id: training_course_type_basic0}:
+    max_limit: 10
+    min_limit: 5
+    name: Basic
+    product_id: training.product_product_coursesession0
+
+-
+  Assign Lecture in Advanced Training Course type.
+-
+  !record {model: training.course_type, id: training_course_type_advanced0}:
+    max_limit: 10
+    min_limit: 5
+    name: Advanced
+    product_id: training.product_product_coursesession0
+
+-
+  Assign Lecture in Expert Training Course type.
+-
+  !record {model: training.course_type, id: training_course_type_expert0}:
+    max_limit: 5
+    min_limit: 3
+    name: Expert
+    product_id: training.product_product_coursesession0
+
+-
+  I Create One Record in Target Audience.
+-
+  !record {model: training.offer.public.target, id: training_offer_public_target_testtargetaudience0}:
+    name: Test Target Audience
+
+-
+  I Create First Record in Stakeholder Function.
+-
+  !record {model: training.config.contact.function, id: training_config_contact_function_0}:
+    function: Salesman
+    kind: writer
+
+-
+  I Create Second Record in Stakeholder Function.
+-
+  !record {model: training.config.contact.function, id: training_config_contact_function_1}:
+    function: CTO
+    kind: standard
+
+-
+  Call Year Generate Wizard.
+-
+  !act_window {target: new, res_model: training.holiday.year.wizard, id: holiday_year_wizard_act, name: Year Generator}
+
+-
+  I Create Periods on this current year by click on Year Generate Wizard.
+-
+  !python {model: training.holiday.year.wizard}: |
+    import time
+    year_id = self.create(cr, uid, {'year': int(time.strftime('%Y'))})
+    self.action_apply(cr, uid, [year_id], {"active_model": "training.holiday.year.wizard", "tz": False,})
+
+-
+  I Create one "Test OpenERP Module Development" Course.
+-
+  !record {model: training.course, id: training_course_openerpmoduledevelopment0}:
+    balance: 0.0
+    category_id: training.training_course_category_moduledeveloper0
+    complete_name: Module Developer / OpenERP Module Development
+    course_type_id: training.training_course_type_basic0
+    credit: 0.0
+    currency_id: base.EUR
+    debit: 0.0
+    duration_with_children: 0.0
+    kind: standard
+    lang_id: base.lang_en
+    lecturer_ids:
+      - base_contact.res_partner_job_0
+    name: Test OpenERP Module Development
+    parent_id: training.training_course_category_moduledeveloper0_account_analytic_account
+    quantity: 0.0
+    quantity_max: 0.0
+    sequence: 0.0
+    splitted_by: '8'
+    state: open
+    state_course: draft
+    theme_ids:
+      - training.training_course_theme_openerptechnical0
+
+-
+  I Create Second course "Test Developement of report and wizard"
+-
+  !record {model: training.course, id: training_course_testdevelopementofreportandwizard1}:
+    balance: 0.0
+    category_id: training.training_course_category_moduledeveloper0
+    complete_name: Test Module Developer / Test Developement of report and wizard
+    course_type_id: training.training_course_type_basic0
+    credit: 0.0
+    currency_id: base.EUR
+    debit: 0.0
+    duration_with_children: 0.0
+    kind: standard
+    lang_id: base.lang_en
+    lecturer_ids:
+      - base_contact.res_partner_job_0
+    name: Test Developement of report and wizard
+    parent_id: training.training_course_category_moduledeveloper0_account_analytic_account
+    quantity: 0.0
+    quantity_max: 0.0
+    sequence: 0.0
+    splitted_by: '8'
+    state: open
+    state_course: draft
+    theme_ids:
+      - training.training_course_theme_openerptechnical0
+
+-
+  I change the state draft to validate by click on Validate button of "Test Developement of report and wizard" Course
+-
+  !workflow {model: training.course, action: signal_validate, ref: training_course_testdevelopementofreportandwizard1}
+
+-
+  I Create Offer by click on Create Block Offer Wizard in course.
+-
+  !python {model: training.create.block.offer}: |
+    default_value = self.default_get(cr, uid, ['name','type_id','lang_id','product_line_id'], {'active_model': 'training.course',
+                                                    'active_ids':[ref("training_course_testdevelopementofreportandwizard1")],
+                                                    'active_id': ref("training_course_testdevelopementofreportandwizard1")})
+    block_id = self.create(cr, uid, default_value)
+    self.create_block_offer(cr, uid, [block_id], {"active_model": "training.course",
+            "active_ids": [ref("training_course_testdevelopementofreportandwizard1")], "tz": False,
+            "active_id": ref("training_course_testdevelopementofreportandwizard1"), })
+
+-
+  I change the state draft to validate by click on Validate button of "Test OpenERP Module Development" Course
+-
+  !workflow {model: training.course, action: signal_validate, ref: training_course_openerpmoduledevelopment0}
+
+-
+  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_course_openerpmoduledevelopment0")], "tz": False,
+            "active_id": ref("training_course_openerpmoduledevelopment0"), })
+
+-
+  Search  Offer "Test OpenERP Module Development" and assign some value in offer.
+-
+  !python {model: training.offer}: |
+    offer_id = self.search(cr, uid, [('name','=','Test OpenERP Module Development')])
+    self.write(cr, uid, offer_id, {'product_id': ref("training.product_product_coursesession0"),
+                                   'target_public_ids': [(6, 0, [ref("training.training_offer_public_target_testtargetaudience0")])],
+                                   'theme_ids': [(6, 0, [ref("training.training_course_theme_openerptechnical0")])]})
+
+-
+  I change the state draft to validate by click on Validate button of "OpenERP Module Development" Offer
+-
+  !python {model: training.offer}: |
+    import netsvc
+    wf_service = netsvc.LocalService("workflow")
+    offer_id = self.search(cr, uid, [('name','=','Test OpenERP Module Development')])
+    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','=','Test OpenERP Module Development')])
+    session_wiz_id = self.create(cr, uid, {'date': time.strftime('%Y-%m-%d 00:00:00'), 'name': 'Test OpenERP Module Development'})
+    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], })
+-
+  Search Session "Test OpenERP Module Development" and assign some value in this Session.
+-
+  !python {model: training.session}: |
+    import time
+    session_id = self.search(cr, uid, [('name','=', "%s (%s)" % ('Test OpenERP Module Development', str(time.strftime('%Y-%m-%d'))) )] )
+    self.write(cr, uid, session_id, {'request_ids': [(0, 0, {'email' : 'test@xxxxxxxx',
+                                                           'job_id' : ref("base_contact.res_partner_job_0"),
+                                                           'reference' : 'PSHR/2011-0001',
+                                                           'state': 'draft'})]})
+-
+  I Create Seance by click on Create Seance Button in "OpenERP Module Development" Session.
+-
+  !python {model: training.session}: |
+    import time
+    session_id = self.search(cr, uid, [('name','=', "%s (%s)" % ('Test OpenERP Module Development', str(time.strftime('%Y-%m-%d'))) )] )
+    self.action_create_seances(cr, uid, session_id)
+
+-
+  I Create Participation Entry in Stackholder Requests.
+-
+  !python {model: training.participation.stakeholder}: |
+    import time
+    session_id = self.pool.get('training.session').search(cr, uid, [('name','=', "%s (%s)" % ('Test OpenERP Module Development', str(time.strftime('%Y-%m-%d'))) )] )
+    parti_requst_id = self.pool.get('training.participation.stakeholder.request').search(cr, uid, [('session_id','in', session_id)])
+    self.pool.get('training.participation.stakeholder.request').write(cr, uid, parti_requst_id, {'payment_mode':'contract'})
+    seance_id = self.pool.get('training.seance').search(cr, uid, [('original_session_id','in',session_id)])
+    value = self.on_change_seance(cr, uid, '_', ref("base_contact.res_partner_job_0"), seance_id[0], context)
+    vals = value.get('value',{})
+    vals.update({'job_id' : ref("base_contact.res_partner_job_0"), 'seance_id' : seance_id[0], 'request_id' : parti_requst_id[0] })
+    price_vals = self.on_change_manual(cr, uid, [], True, ref("base_contact.res_partner_job_0"), seance_id[0], context)
+    vals.update(price_vals.get('value'))
+    self.create(cr, uid, vals, context)
+
+-
+  I Create Purchase order by Click on Create Purchase Button in Stackholder Requests with reference "PSHR/2011-0001"
+-
+  !python {model: training.participation.stakeholder.request}: |
+    import time
+    session_id = self.pool.get('training.session').search(cr, uid, [('name','=', "%s (%s)" % ('Test OpenERP Module Development', str(time.strftime('%Y-%m-%d'))) )] )
+    parti_requst_id = self.search(cr, uid, [('session_id','in', session_id)])
+    self.action_create_purchase_order(cr, uid, parti_requst_id)
+
+-
+  I change the state draft to Validated by click on Validated button of "PSHR/2011-0001" Stackholder Requests
+-
+  !python {model: training.participation.stakeholder.request}: |
+    import time
+    import netsvc
+    wf_service = netsvc.LocalService("workflow")
+    session_id = self.pool.get('training.session').search(cr, uid, [('name','=', "%s (%s)" % ('Test OpenERP Module Development', str(time.strftime('%Y-%m-%d'))) )] )
+    parti_requst_id = self.search(cr, uid, [('session_id','in', session_id)])
+    for id in parti_requst_id:
+        wf_service.trg_validate(uid, 'training.participation.stakeholder.request',id,'pshr_validate', cr)
+
+-
+  I change the state Validated to request by click on Send Request button of "PSHR/2011-0001" Stackholder Requests
+-
+  !python {model: training.participation.stakeholder.request}: |
+    import time
+    import netsvc
+    wf_service = netsvc.LocalService("workflow")
+    session_id = self.pool.get('training.session').search(cr, uid, [('name','=', "%s (%s)" % ('Test OpenERP Module Development', str(time.strftime('%Y-%m-%d'))) )] )
+    parti_requst_id = self.search(cr, uid, [('session_id','in', session_id)])
+    for id in parti_requst_id:
+        wf_service.trg_validate(uid, 'training.participation.stakeholder.request',id,'pshr_request', cr)
+-
+  I change the state request to accept by click on Validated button of "PSHR/2011-0001" Stackholder Requests
+-
+  !python {model: training.participation.stakeholder.request}: |
+    import time
+    import netsvc
+    wf_service = netsvc.LocalService("workflow")
+    session_id = self.pool.get('training.session').search(cr, uid, [('name','=', "%s (%s)" % ('Test OpenERP Module Development', str(time.strftime('%Y-%m-%d'))) )] )
+    parti_requst_id = self.search(cr, uid, [('session_id','in', session_id)])
+    for id in parti_requst_id:
+        wf_service.trg_validate(uid, 'training.participation.stakeholder.request',id,'pshr_accept', cr)
+
+-
+  I change the state draft to open by click on Open button of "OpenERP Module Development" Session
+-
+  !python {model: training.session}: |
+    import netsvc
+    import time
+    wf_service = netsvc.LocalService("workflow")
+    session_id = self.search(cr, uid, [('name','=', "%s (%s)" % ('Test OpenERP Module Development', 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 "OpenERP Module Development" Session
+-
+  !python {model: training.session}: |
+    import netsvc
+    import time
+    wf_service = netsvc.LocalService("workflow")
+    session_id = self.search(cr, uid, [('name','=', "%s (%s)" % ('Test OpenERP Module Development', 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)" % ('Test OpenERP Module Development', str(time.strftime('%Y-%m-%d'))) )] )
+    seance_id = self.pool.get('training.seance').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)" % ('Test OpenERP Module Development', 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)" % ('Test OpenERP Module Development', str(time.strftime('%Y-%m-%d'))) )] )
+    line_ids = self.pool.get('training.subscription.line').search(cr, uid, [('session_id','in',session_id)])
+    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)
+
+-
+  Assign the account code "X2001" in configuaration of training.subscription.invoice.default.account in ir.config object For create invoice of subscription line.
+-
+  !python {model: training.subscription.line}: |
+    import time
+    session_id = self.pool.get('training.session').search(cr, uid, [('name','=', "%s (%s)" % ('Test OpenERP Module Development', str(time.strftime('%Y-%m-%d'))) )] )
+    line_ids = self.pool.get('training.subscription.line').search(cr, uid, [('session_id','in',session_id)])
+    config_id = self.pool.get('ir.config').search(cr, uid, [('name','=','training.subscription.invoice.default.account')])
+    self.pool.get('ir.config').write(cr, uid, config_id, {'value': 'X2001'})
+    self.action_create_invoice(cr, uid, line_ids)

=== modified file 'training_degree/__openerp__.py'
--- training_degree/__openerp__.py	2011-04-07 11:11:57 +0000
+++ training_degree/__openerp__.py	2011-04-27 09:31:04 +0000
@@ -14,6 +14,9 @@
     ],
     'init_xml' : [],
     'demo_xml' : [],
+    'test': [
+        'test/training_degree.yml'
+     ],
     'active' : False,
     'installable' : True,
 }

=== added directory 'training_degree/test'
=== added file 'training_degree/test/training_degree.yml'
--- training_degree/test/training_degree.yml	1970-01-01 00:00:00 +0000
+++ training_degree/test/training_degree.yml	2011-04-27 09:31:04 +0000
@@ -0,0 +1,35 @@
+-
+  Creating a training.degree record
+-
+  !record {model: training.degree, id: training_degree_first0}:
+    course_ids:
+      - training.training_course_openerpcrm0
+      - training.training_course_openerpaccounting0
+      - training.training_course_openerpaccounting1
+    lang_id: base.lang_en
+    name: First Degree
+    state: draft
+
+-
+  I clicked on Validate button
+-
+ !python {model: training.degree}: |
+    self.action_validate(cr, uid, [ref("training_degree_first0")], {"lang": "en_US", "tz": False, "active_model": "training.degree", "active_ids": [ref("training_degree_first0")], "active_id": ref("training_degree_first0"), })
+
+
+-
+  Creating a training.degree.contact record
+-
+  !record {model: training.degree.contact, id: training_degree_contact_0}:
+    contact_id: base_contact.res_partner_contact_wirtel0
+    date: !eval time.strftime('%Y-%m-%d')
+    degree_id: training_degree_first0
+    state: desired
+    state_summary: acquired
+
+-
+  I clicked on Acquire button
+-
+ !python {model: training.degree.contact}: |
+    self.action_acquire(cr, uid, [ref("training_degree_contact_0")], {"lang": "en_US", "tz": False, "active_model": "training.degree.contact", "active_ids": [ref("training_degree_contact_0")], "active_id": ref("training_degree_contact_0"), })
+


Follow ups