common/test/unittest_mixins.py
author sylvain.thenault@logilab.fr
Thu, 09 Apr 2009 13:51:01 +0200
branchtls-sprint
changeset 1316 6d71d38822ee
parent 970 b52b1679f4e4
child 1398 5fe84a5f7035
permissions -rw-r--r--
introduce init_registration method and call it in repo initialization

from logilab.common.testlib import unittest_main
from cubicweb.devtools.apptest import EnvBasedTC

class WorkfloableMixInTC(EnvBasedTC):
    def test_wf_state(self):
        s = self.add_entity('State', name=u'activated')
        self.execute('SET X state_of ET WHERE ET name "Bookmark", X eid %(x)s',
                     {'x': s.eid})
        es = self.user().wf_state('activated')
        self.assertEquals(es.state_of[0].name, 'EUser')
        
    def test_wf_transition(self):
        t = self.add_entity('Transition', name=u'deactivate')
        self.execute('SET X transition_of ET WHERE ET name "Bookmark", X eid %(x)s',
                     {'x': t.eid})
        et = self.user().wf_transition('deactivate')
        self.assertEquals(et.transition_of[0].name, 'EUser')

    def test_change_state(self):
        user = self.user()
        user.change_state(user.wf_state('deactivated').eid)
        self.assertEquals(user.state, 'deactivated')
    
if __name__ == '__main__':
    unittest_main()