web/test/unittest_views_basecontrollers.py
changeset 4083 3b285889b8e9
parent 4023 eae23c40627a
child 4172 4d4cef034eec
equal deleted inserted replaced
4082:c7117119e215 4083:3b285889b8e9
   234         e = self.execute('Salesterm X').get_entity(0, 0)
   234         e = self.execute('Salesterm X').get_entity(0, 0)
   235         self.assertEquals(e.amount, 10)
   235         self.assertEquals(e.amount, 10)
   236 
   236 
   237     def test_req_pending_insert(self):
   237     def test_req_pending_insert(self):
   238         """make sure req's pending insertions are taken into account"""
   238         """make sure req's pending insertions are taken into account"""
   239         tmpgroup = self.add_entity('CWGroup', name=u"test")
   239         tmpgroup = self.request().create_entity('CWGroup', name=u"test")
   240         user = self.user()
   240         user = self.user()
   241         req = self.request()
   241         req = self.request()
   242         req.set_session_data('pending_insert', set([(user.eid, 'in_group', tmpgroup.eid)]))
   242         req.set_session_data('pending_insert', set([(user.eid, 'in_group', tmpgroup.eid)]))
   243         path, params = self.expect_redirect_publish(req)
   243         path, params = self.expect_redirect_publish(req)
   244         usergroups = [gname for gname, in
   244         usergroups = [gname for gname, in
   328         self.assertEquals(params['vid'], 'primary')
   328         self.assertEquals(params['vid'], 'primary')
   329         self.assertEquals(params['tata'], 'titi')
   329         self.assertEquals(params['tata'], 'titi')
   330         self.assertEquals(params['toto'], 'tutu')
   330         self.assertEquals(params['toto'], 'tutu')
   331 
   331 
   332     def test_redirect_delete_button(self):
   332     def test_redirect_delete_button(self):
   333         eid = self.add_entity('BlogEntry', title=u'hop', content=u'hop').eid
   333         req = self.request()
   334         req = self.request()
   334         eid = req.create_entity('BlogEntry', title=u'hop', content=u'hop').eid
   335         req.form = {'eid': str(eid), '__type:%s'%eid: 'BlogEntry',
   335         req.form = {'eid': str(eid), '__type:%s'%eid: 'BlogEntry',
   336                     '__action_delete': ''}
   336                     '__action_delete': ''}
   337         path, params = self.expect_redirect_publish(req)
   337         path, params = self.expect_redirect_publish(req)
   338         self.assertEquals(path, 'blogentry')
   338         self.assertEquals(path, 'blogentry')
   339         self.assertEquals(params, {u'__message': u'entity deleted'})
   339         self.assertEquals(params, {u'__message': u'entity deleted'})
   340         eid = self.add_entity('EmailAddress', address=u'hop@logilab.fr').eid
   340         eid = req.create_entity('EmailAddress', address=u'hop@logilab.fr').eid
   341         self.execute('SET X use_email E WHERE E eid %(e)s, X eid %(x)s',
   341         self.execute('SET X use_email E WHERE E eid %(e)s, X eid %(x)s',
   342                      {'x': self.session.user.eid, 'e': eid}, 'x')
   342                      {'x': self.session.user.eid, 'e': eid}, 'x')
   343         self.commit()
   343         self.commit()
   344         req = self.request()
   344         req = req
   345         req.form = {'eid': str(eid), '__type:%s'%eid: 'EmailAddress',
   345         req.form = {'eid': str(eid), '__type:%s'%eid: 'EmailAddress',
   346                     '__action_delete': ''}
   346                     '__action_delete': ''}
   347         path, params = self.expect_redirect_publish(req)
   347         path, params = self.expect_redirect_publish(req)
   348         self.assertEquals(path, 'cwuser/admin')
   348         self.assertEquals(path, 'cwuser/admin')
   349         self.assertEquals(params, {u'__message': u'entity deleted'})
   349         self.assertEquals(params, {u'__message': u'entity deleted'})
   350         eid1 = self.add_entity('BlogEntry', title=u'hop', content=u'hop').eid
   350         eid1 = req.create_entity('BlogEntry', title=u'hop', content=u'hop').eid
   351         eid2 = self.add_entity('EmailAddress', address=u'hop@logilab.fr').eid
   351         eid2 = req.create_entity('EmailAddress', address=u'hop@logilab.fr').eid
   352         req = self.request()
   352         req = self.request()
   353         req.form = {'eid': [str(eid1), str(eid2)],
   353         req.form = {'eid': [str(eid1), str(eid2)],
   354                     '__type:%s'%eid1: 'BlogEntry',
   354                     '__type:%s'%eid1: 'BlogEntry',
   355                     '__type:%s'%eid2: 'EmailAddress',
   355                     '__type:%s'%eid2: 'EmailAddress',
   356                     '__action_delete': ''}
   356                     '__action_delete': ''}
   480         p = self.create_user("doe")
   480         p = self.create_user("doe")
   481         # do not try to skip 'primary_email' for this test
   481         # do not try to skip 'primary_email' for this test
   482         old_skips = p.__class__.skip_copy_for
   482         old_skips = p.__class__.skip_copy_for
   483         p.__class__.skip_copy_for = ()
   483         p.__class__.skip_copy_for = ()
   484         try:
   484         try:
   485             e = self.add_entity('EmailAddress', address=u'doe@doe.com')
   485             e = self.request().create_entity('EmailAddress', address=u'doe@doe.com')
   486             self.execute('SET P use_email E, P primary_email E WHERE P eid %(p)s, E eid %(e)s',
   486             self.execute('SET P use_email E, P primary_email E WHERE P eid %(p)s, E eid %(e)s',
   487                          {'p' : p.eid, 'e' : e.eid})
   487                          {'p' : p.eid, 'e' : e.eid})
   488             req = self.request()
   488             req = self.request()
   489             req.form = {'__cloned_eid:X': p.eid,
   489             req.form = {'__cloned_eid:X': p.eid,
   490                         'eid': 'X', '__type:X': 'CWUser',
   490                         'eid': 'X', '__type:X': 'CWUser',
   541     def ctrl(self, req=None):
   541     def ctrl(self, req=None):
   542         req = req or self.request(url='http://whatever.fr/')
   542         req = req or self.request(url='http://whatever.fr/')
   543         return self.vreg['controllers'].select('json', req)
   543         return self.vreg['controllers'].select('json', req)
   544 
   544 
   545     def setup_database(self):
   545     def setup_database(self):
   546         self.pytag = self.add_entity('Tag', name=u'python')
   546         req = self.request()
   547         self.cubicwebtag = self.add_entity('Tag', name=u'cubicweb')
   547         self.pytag = req.create_entity('Tag', name=u'python')
       
   548         self.cubicwebtag = req.create_entity('Tag', name=u'cubicweb')
   548         self.john = self.create_user(u'John')
   549         self.john = self.create_user(u'John')
   549 
   550 
   550 
   551 
   551     ## tests ##################################################################
   552     ## tests ##################################################################
   552     def test_simple_exec(self):
   553     def test_simple_exec(self):