[IMP] marketing_campaign: cleanup demo and yml to test process of compaign
bzr revid: hmo@tinyerp.com-20111202110118-3w1h2z38d844f04i
This commit is contained in:
parent
4e99a743b3
commit
370e0c6510
|
@ -61,7 +61,6 @@ Note: If you need demo data, you can install the marketing_campaign_crm_demo mod
|
|||
'marketing_campaign_demo.xml',
|
||||
],
|
||||
'test': [
|
||||
'test/marketing_campaign_demo.yml',
|
||||
'test/marketing_campaign.yml',
|
||||
],
|
||||
'installable': True,
|
||||
|
|
|
@ -670,7 +670,7 @@ class marketing_campaign_workitem(osv.osv):
|
|||
|
||||
def _process_one(self, cr, uid, workitem, context=None):
|
||||
if workitem.state != 'todo':
|
||||
return
|
||||
return False
|
||||
|
||||
activity = workitem.activity_id
|
||||
proxy = self.pool.get(workitem.object_id.model)
|
||||
|
|
|
@ -1,37 +1,31 @@
|
|||
<?xml version="1.0" ?>
|
||||
<openerp>
|
||||
<data>
|
||||
<record id="action_dummy" model="ir.actions.server">
|
||||
<field name="name">Dummy Action</field>
|
||||
<field name="model_id" ref="base.model_res_partner"/>
|
||||
<field name="state">dummy</field>
|
||||
<field name="code"></field>
|
||||
<field eval="5" name="sequence"/>
|
||||
<field eval="True" name="condition"/>
|
||||
</record>
|
||||
|
||||
|
||||
<!-- Email tempalte -->
|
||||
<record id="email_template_1" model="email.template">
|
||||
<field name="subject">Welcome in OpenERP Family!</field>
|
||||
<field name="email_to">info@tinyerp.com</field>
|
||||
<field name="name">Template for New Partner</field>
|
||||
<field name="email_from">info@tinyerp.com</field>
|
||||
<field name="subject">Welcome in OpenERP Partner Channel!</field>
|
||||
<field name="email_to">${object.email or ''}</field>
|
||||
<field name="model_id" ref="base.model_res_partner"/>
|
||||
<field name="body_text">Hello, We are very happy to send Welcome message.</field>
|
||||
</record>
|
||||
<record id="email_template_2" model="email.template">
|
||||
<field name="subject">Cogretulation! You become now our Silver Partner.</field>
|
||||
<field name="email_to">info@tinyerp.com</field>
|
||||
<field name="name">Template for Silver Partner</field>
|
||||
<field name="email_from">info@tinyerp.com</field>
|
||||
<field name="subject">Congratulation! You become now our Silver Partner.</field>
|
||||
<field name="email_to">${object.email or ''}</field>
|
||||
<field name="model_id" ref="base.model_res_partner"/>
|
||||
<field name="body_text">Hello,We are happy to announce that you now become our Silver Partner.
|
||||
Regards,OpenERP Team,</field>
|
||||
<field name="body_text">Hello, We are happy to announce that you now become our Silver Partner.</field>
|
||||
</record>
|
||||
|
||||
<record id="email_template_3" model="email.template">
|
||||
<field name="name">Template for Gold Partner</field>
|
||||
<field name="email_from">info@tinyerp.com</field>
|
||||
<field name="subject">Congratulation! You become our Gold Partner.</field>
|
||||
<field name="email_to">info@tinyerp.com</field>
|
||||
<field name="email_to">${object.email or ''}</field>
|
||||
<field name="model_id" ref="base.model_res_partner"/>
|
||||
<field name="body_text">Hello, We are happy to announce that you become our Gold Partner.
|
||||
Regards,OpenERP Team,</field>
|
||||
<field name="body_text">Hello, We are happy to announce that you become our Gold Partner.</field>
|
||||
</record>
|
||||
|
||||
|
||||
|
@ -47,22 +41,25 @@
|
|||
|
||||
<record id="marketing_campaign_activity_0" model="marketing.campaign.activity">
|
||||
<field name="name">New Partner</field>
|
||||
<field name="server_action_id" ref="action_dummy"/>
|
||||
<field name="campaign_id" ref="marketing_campaign_openerppartnerchannel"/>
|
||||
<field name="email_template_id" ref="email_template_1"/>
|
||||
<field name="condition">object.credit_limit < 10000</field>
|
||||
<field name="keep_if_condition_not_met">True</field>
|
||||
<field eval="1" name="start"/>
|
||||
</record>
|
||||
<record id="marketing_campaign_activity_1" model="marketing.campaign.activity">
|
||||
<field name="name">Silver Partner</field>
|
||||
<field name="server_action_id" ref="action_dummy"/>
|
||||
<field name="campaign_id" ref="marketing_campaign_openerppartnerchannel"/>
|
||||
<field name="condition">object.credit_limit >= 10000 and object.credit_limit < 50000</field>
|
||||
<field name="keep_if_condition_not_met">True</field>
|
||||
<field name="email_template_id" ref="email_template_2"/>
|
||||
</record>
|
||||
|
||||
<record id="marketing_campaign_activity_2" model="marketing.campaign.activity">
|
||||
<field name="name">Gold Partner</field>
|
||||
<field name="server_action_id" ref="action_dummy"/>
|
||||
<field name="condition">object.credit_limit >= 100000</field>
|
||||
<field name="campaign_id" ref="marketing_campaign_openerppartnerchannel"/>
|
||||
<field name="keep_if_condition_not_met">True</field>
|
||||
<field name="email_template_id" ref="email_template_3"/>
|
||||
</record>
|
||||
|
||||
|
@ -79,12 +76,17 @@
|
|||
</record>
|
||||
|
||||
<!-- Segment -->
|
||||
<record id="filter0" model="ir.filters">
|
||||
<field name="name">Partners</field>
|
||||
<field name="domain">[('name','like','agrolait')]</field>
|
||||
<field name="model_id">res.partner</field>
|
||||
</record>
|
||||
<record id="marketing_campaign_segment0" model="marketing.campaign.segment">
|
||||
<field eval="time.strftime('%Y-%m-%d %H:%M:%S')" name="date_run"/>
|
||||
<field name="name">OpenERP Partner</field>
|
||||
<field name="sync_mode">create_date</field>
|
||||
<field name="ir_filter_id" ref="filter0"></field>
|
||||
<field name="campaign_id" ref="marketing_campaign_openerppartnerchannel"/>
|
||||
<field name="state">draft</field>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
|
|
|
@ -1,44 +1,85 @@
|
|||
-
|
||||
I start compaign.
|
||||
In order to test process of compaign, I start compaign.
|
||||
-
|
||||
!workflow {model: marketing.campaign, action: state_running_set, ref: marketing_campaign_openerppartnerchannel}
|
||||
-
|
||||
I check the campaign on Running mode.
|
||||
I check the campaign on Running mode after started.
|
||||
-
|
||||
!assert {model: marketing.campaign, id: marketing_campaign_openerppartnerchannel}:
|
||||
- state == 'running'
|
||||
-
|
||||
This campaign is only for OpenERP partner, so I assinged this Campaign
|
||||
to right segment, after that I start this segment.
|
||||
I assign segment to campaign.
|
||||
-
|
||||
!record {model: marketing.campaign.segment, id: marketing_campaign_segment0}:
|
||||
campaign_id: marketing_campaign_openerppartnerchannel
|
||||
-
|
||||
I start this segment after assinged campaign.
|
||||
-
|
||||
!workflow {model: marketing.campaign.segment, action: state_running_set, ref: marketing_campaign_segment0}
|
||||
-
|
||||
I check the segment on Running mode.
|
||||
I check the segment on Running mode after started.
|
||||
-
|
||||
!assert {model: marketing.campaign.segment, id: marketing_campaign_segment0}:
|
||||
- state == 'running'
|
||||
-
|
||||
I synchronized this segment manually to see all step of activity and process covered on this campaign.
|
||||
I set credit limit for customer.
|
||||
-
|
||||
!python {model: res.partner}: |
|
||||
self.write(cr, uid, [ref("base.res_partner_agrolait")], {'credit_limit':1000}, context=context)
|
||||
-
|
||||
I synchronized segment manually to see all step of activity and process covered on this campaign.
|
||||
-
|
||||
!python {model: marketing.campaign.segment}: |
|
||||
self.synchroniz(cr, uid, [ref("marketing_campaign_segment0")])
|
||||
-
|
||||
I process work item.
|
||||
I check followup detail of first activity.
|
||||
-
|
||||
!python {model: marketing.campaign.workitem}: |
|
||||
ids = self.search(cr, uid, [('segment_id', '=', ref('marketing_campaign_segment0')),
|
||||
('campaign_id', '=', ref('marketing_campaign_openerppartnerchannel')), ('activity_id', '=', ref('marketing_campaign_activity_1'))])
|
||||
#assert ids, 'Activity items not created'
|
||||
#self.process(cr, uid, ids)
|
||||
#record = self.browse(cr, uid, ids)[0]
|
||||
#assert record.state == "done", "Activity item not in done state"
|
||||
assert ids, 'Followup item is not created for first activity.'
|
||||
-
|
||||
Now I increase credit limit of customer
|
||||
-
|
||||
!python {model: res.partner}: |
|
||||
self.write(cr, uid, [ref("base.res_partner_agrolait")], {'credit_limit':41000}, context=context)
|
||||
-
|
||||
I process followup of first activity.
|
||||
-
|
||||
!python {model: marketing.campaign.workitem}: |
|
||||
ids = self.search(cr, uid, [('segment_id', '=', ref('marketing_campaign_segment0')),
|
||||
('campaign_id', '=', ref('marketing_campaign_openerppartnerchannel')), ('activity_id', '=', ref('marketing_campaign_activity_1'))])
|
||||
self.process(cr, uid, ids)
|
||||
record = self.browse(cr, uid, ids)[0]
|
||||
assert record.state == "done", "Followup item should be closed after process."
|
||||
-
|
||||
I check followup detail of second activity after process of first activity.
|
||||
-
|
||||
!python {model: marketing.campaign.workitem}: |
|
||||
ids = self.search(cr, uid, [('segment_id', '=', ref('marketing_campaign_segment0')),
|
||||
('campaign_id', '=', ref('marketing_campaign_openerppartnerchannel')), ('activity_id', '=', ref('marketing_campaign_activity_2'))])
|
||||
assert ids, 'Followup item is not created for second activity.'
|
||||
-
|
||||
Now I increase credit limit of customer
|
||||
-
|
||||
!python {model: res.partner}: |
|
||||
self.write(cr, uid, [ref("base.res_partner_agrolait")], {'credit_limit':151000}, context=context)
|
||||
-
|
||||
I process followup of second activity.
|
||||
-
|
||||
!python {model: marketing.campaign.workitem}: |
|
||||
ids = self.search(cr, uid, [('segment_id', '=', ref('marketing_campaign_segment0')),
|
||||
('campaign_id', '=', ref('marketing_campaign_openerppartnerchannel')), ('activity_id', '=', ref('marketing_campaign_activity_2'))])
|
||||
self.process(cr, uid, ids)
|
||||
record = self.browse(cr, uid, ids)[0]
|
||||
assert record.state == "done", "Followup item should be closed after process."
|
||||
-
|
||||
I print workitem report.
|
||||
-
|
||||
!python {model: marketing.campaign.workitem}: |
|
||||
ids = self.search(cr, uid, [('segment_id', '=', ref('marketing_campaign_segment0')),
|
||||
('campaign_id', '=', ref('marketing_campaign_openerppartnerchannel')), ('activity_id', '=', ref('marketing_campaign_activity_1'))])
|
||||
#self.preview(cr, uid, ids)
|
||||
('campaign_id', '=', ref('marketing_campaign_openerppartnerchannel')), ('activity_id', '=', ref('marketing_campaign_activity_2'))])
|
||||
self.preview(cr, uid, ids)
|
||||
-
|
||||
I close segmentation After completion of all activity.
|
||||
-
|
||||
|
|
|
@ -1,5 +0,0 @@
|
|||
-
|
||||
In order to test process of marketing campaign, I create segment.
|
||||
-
|
||||
!record {model: marketing.campaign.segment, id: marketing_campaign_segment0}:
|
||||
campaign_id: marketing_campaign_openerppartnerchannel
|
Loading…
Reference in New Issue