web/test/unittest_views_basecontrollers.py
changeset 7244 a918f76441ce
parent 6875 a166b51d13f8
child 7293 97505b798975
equal deleted inserted replaced
7243:9ab01bf84eac 7244:a918f76441ce
    91         self.assertEqual(e.surname, u'Th\xe9nault')
    91         self.assertEqual(e.surname, u'Th\xe9nault')
    92         self.assertEqual(e.login, user.login)
    92         self.assertEqual(e.login, user.login)
    93         self.assertEqual([g.eid for g in e.in_group], groupeids)
    93         self.assertEqual([g.eid for g in e.in_group], groupeids)
    94 
    94 
    95     def test_user_can_change_its_password(self):
    95     def test_user_can_change_its_password(self):
    96         user = self.create_user('user')
    96         req = self.request()
       
    97         user = self.create_user(req, 'user')
    97         cnx = self.login('user')
    98         cnx = self.login('user')
    98         req = self.request()
       
    99         eid = u(user.eid)
    99         eid = u(user.eid)
   100         req.form = {
   100         req.form = {
   101             'eid': eid, '__maineid' : eid,
   101             'eid': eid, '__maineid' : eid,
   102             '__type:'+eid: 'CWUser',
   102             '__type:'+eid: 'CWUser',
   103             '_cw_edited_fields:'+eid: 'upassword-subject',
   103             '_cw_edited_fields:'+eid: 'upassword-subject',
   158         self.assertEqual(e.surname, 'Di Mascio')
   158         self.assertEqual(e.surname, 'Di Mascio')
   159         email = e.use_email[0]
   159         email = e.use_email[0]
   160         self.assertEqual(email.address, 'dima@logilab.fr')
   160         self.assertEqual(email.address, 'dima@logilab.fr')
   161 
   161 
   162     def test_edit_multiple_linked(self):
   162     def test_edit_multiple_linked(self):
   163         peid = u(self.create_user('adim').eid)
   163         req = self.request()
   164         req = self.request()
   164         peid = u(self.create_user(req, 'adim').eid)
   165         req.form = {'eid': [peid, 'Y'], '__maineid': peid,
   165         req.form = {'eid': [peid, 'Y'], '__maineid': peid,
   166 
   166 
   167                     '__type:'+peid: u'CWUser',
   167                     '__type:'+peid: u'CWUser',
   168                     '_cw_edited_fields:'+peid: u'surname-subject',
   168                     '_cw_edited_fields:'+peid: u'surname-subject',
   169                     'surname-subject:'+peid: u'Di Masci',
   169                     'surname-subject:'+peid: u'Di Masci',
   448         self.assertEqual(e.login, 'toto')
   448         self.assertEqual(e.login, 'toto')
   449         self.assertEqual(e.in_group[0].name, 'managers')
   449         self.assertEqual(e.in_group[0].name, 'managers')
   450 
   450 
   451 
   451 
   452     def test_nonregr_rollback_on_validation_error(self):
   452     def test_nonregr_rollback_on_validation_error(self):
   453         p = self.create_user("doe")
   453         req = self.request()
       
   454         p = self.create_user(req, "doe")
   454         # do not try to skip 'primary_email' for this test
   455         # do not try to skip 'primary_email' for this test
   455         old_skips = p.__class__.skip_copy_for
   456         old_skips = p.__class__.skip_copy_for
   456         p.__class__.skip_copy_for = ()
   457         p.__class__.skip_copy_for = ()
   457         try:
   458         try:
   458             e = self.request().create_entity('EmailAddress', address=u'doe@doe.com')
   459             e = self.request().create_entity('EmailAddress', address=u'doe@doe.com')
   495         result = controller.publish(rset=None)
   496         result = controller.publish(rset=None)
   496 
   497 
   497 
   498 
   498 class ReportBugControllerTC(CubicWebTC):
   499 class ReportBugControllerTC(CubicWebTC):
   499 
   500 
   500     def test_usable_by_guets(self):
   501     def test_usable_by_guest(self):
   501         self.login('anon')
   502         self.login('anon')
   502         self.assertRaises(NoSelectableObject,
   503         self.assertRaises(NoSelectableObject,
   503                           self.vreg['controllers'].select, 'reportbug', self.request())
   504                           self.vreg['controllers'].select, 'reportbug', self.request())
   504         self.vreg['controllers'].select('reportbug', self.request(description='hop'))
   505         self.vreg['controllers'].select('reportbug', self.request(description='hop'))
   505 
   506 
   506 
   507 
   507 class SendMailControllerTC(CubicWebTC):
   508 class SendMailControllerTC(CubicWebTC):
   508 
   509 
   509     def test_not_usable_by_guets(self):
   510     def test_not_usable_by_guest(self):
   510         self.assertRaises(NoSelectableObject,
   511         self.assertRaises(NoSelectableObject,
   511                           self.vreg['controllers'].select, 'sendmail', self.request())
   512                           self.vreg['controllers'].select, 'sendmail', self.request())
   512         self.vreg['controllers'].select('sendmail',
   513         self.vreg['controllers'].select('sendmail',
   513                                         self.request(subject='toto',
   514                                         self.request(subject='toto',
   514                                                      recipient='toto@logilab.fr',
   515                                                      recipient='toto@logilab.fr',
   527 
   528 
   528     def setup_database(self):
   529     def setup_database(self):
   529         req = self.request()
   530         req = self.request()
   530         self.pytag = req.create_entity('Tag', name=u'python')
   531         self.pytag = req.create_entity('Tag', name=u'python')
   531         self.cubicwebtag = req.create_entity('Tag', name=u'cubicweb')
   532         self.cubicwebtag = req.create_entity('Tag', name=u'cubicweb')
   532         self.john = self.create_user(u'John')
   533         self.john = self.create_user(req, u'John')
   533 
   534 
   534 
   535 
   535     ## tests ##################################################################
   536     ## tests ##################################################################
   536     def test_simple_exec(self):
   537     def test_simple_exec(self):
   537         req = self.request(rql='CWUser P WHERE P login "John"',
   538         req = self.request(rql='CWUser P WHERE P login "John"',