# HG changeset patch # User sylvain.thenault@logilab.fr # Date 1235648655 -3600 # Node ID b52b1679f4e432fb1e417a17f604e7bfb76dad9c # Parent 5a9bb32d074101302d9276d7c3e813e4e09692ce add test for some WorkfloableMixIn methods diff -r 5a9bb32d0741 -r b52b1679f4e4 common/test/unittest_mixins.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/common/test/unittest_mixins.py Thu Feb 26 12:44:15 2009 +0100 @@ -0,0 +1,25 @@ +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()