diff --git a/addons/base_action_rule/tests/base_action_rule_test.py b/addons/base_action_rule/tests/base_action_rule_test.py index b0f169b3bdb..cc679a6b1a2 100644 --- a/addons/base_action_rule/tests/base_action_rule_test.py +++ b/addons/base_action_rule/tests/base_action_rule_test.py @@ -11,6 +11,7 @@ class base_action_rule_test(common.TransactionCase): self.demo = self.registry('ir.model.data').get_object(cr, uid, 'base', 'user_demo').id self.admin = SUPERUSER_ID self.model = self.registry('base.action.rule.lead.test') + self.base_action_rule = self.registry('base.action.rule') def create_filter_done(self, cr, uid, context=None): filter_pool = self.registry('ir.filters') @@ -43,8 +44,7 @@ class base_action_rule_test(common.TransactionCase): """ The "Rule 1" says that when a lead goes to the 'draft' state, the responsible for that lead changes to user "demo" """ - self.action_pool = self.registry('base.action.rule') - return self.action_pool.create(cr,uid,{ + return self.base_action_rule.create(cr,uid,{ 'name' : "Rule 1", 'model_id': self.registry('ir.model').search(cr, uid, [('model','=','base.action.rule.lead.test')], context=context)[0], 'active' : 1, @@ -54,17 +54,23 @@ class base_action_rule_test(common.TransactionCase): 'act_user_id': self.demo, }, context=context) + def delete_rules(self, cr, uid, context=None): + """ delete all the rules on model 'base.action.rule.lead.test' """ + action_ids = self.base_action_rule.search(cr, uid, [('model', '=', self.model._name)], context=context) + return self.base_action_rule.unlink(cr, uid, action_ids, context=context) + def test_00_check_to_state_draft_pre(self): """ Check that a new record (with state = draft) doesn't change its responsible when there is a precondition filter which check that the state is draft. """ cr, uid = self.cr, self.uid filter_draft = self.create_filter_draft(cr, uid) - rule_1_id = self.create_rule(cr, uid, filter_pre_id=filter_draft) + self.create_rule(cr, uid, filter_pre_id=filter_draft) new_lead_id = self.create_lead_test_1(cr, uid) new_lead = self.model.browse(cr, uid, new_lead_id) self.assertEquals(new_lead.state, 'draft') self.assertEquals(new_lead.user_id.id, self.admin) + self.delete_rules(cr, uid) def test_01_check_to_state_draft_post(self): """ @@ -72,11 +78,12 @@ class base_action_rule_test(common.TransactionCase): """ cr, uid = self.cr, self.uid filter_draft = self.create_filter_draft(cr, uid) - rule_1_id = self.create_rule(cr, uid, filter_id=filter_draft) + self.create_rule(cr, uid, filter_id=filter_draft) new_lead_id = self.create_lead_test_1(cr, uid) new_lead = self.model.browse(cr, uid, new_lead_id) self.assertEquals(new_lead.state, 'draft') self.assertEquals(new_lead.user_id.id, self.demo) + self.delete_rules(cr, uid) def test_02_check_from_draft_to_done_with_steps(self): """ @@ -114,6 +121,7 @@ class base_action_rule_test(common.TransactionCase): new_lead = self.model.browse(cr, uid, new_lead_id) self.assertEquals(new_lead.state, 'done') self.assertEquals(new_lead.user_id.id, self.admin) + self.delete_rules(cr, uid) def test_02_check_from_draft_to_done_without_steps(self): """ @@ -136,3 +144,4 @@ class base_action_rule_test(common.TransactionCase): new_lead = self.model.browse(cr, uid, new_lead_id) self.assertEquals(new_lead.state, 'done') self.assertEquals(new_lead.user_id.id, self.demo) + self.delete_rules(cr, uid)