web/test/unittest_viewselector.py
changeset 4078 3704c121624c
parent 3998 94cc7cad3d2d
child 4172 4d4cef034eec
equal deleted inserted replaced
4077:1d7103a2ec08 4078:3704c121624c
    32                  actions.PoweredByAction]
    32                  actions.PoweredByAction]
    33 
    33 
    34 class ViewSelectorTC(CubicWebTC):
    34 class ViewSelectorTC(CubicWebTC):
    35 
    35 
    36     def setup_database(self):
    36     def setup_database(self):
    37         self.add_entity('BlogEntry', title=u"une news !", content=u"cubicweb c'est beau")
    37         req = self.request()
    38         self.add_entity('Bookmark', title=u"un signet !", path=u"view?vid=index")
    38         req.create_entity('BlogEntry', title=u"une news !", content=u"cubicweb c'est beau")
    39         self.add_entity('EmailAddress', address=u"devel@logilab.fr", alias=u'devel')
    39         req.create_entity('Bookmark', title=u"un signet !", path=u"view?vid=index")
    40         self.add_entity('Tag', name=u'x')
    40         req.create_entity('EmailAddress', address=u"devel@logilab.fr", alias=u'devel')
       
    41         req.create_entity('Tag', name=u'x')
    41 
    42 
    42 class VRegistryTC(ViewSelectorTC):
    43 class VRegistryTC(ViewSelectorTC):
    43     """test the view selector"""
    44     """test the view selector"""
    44 
    45 
    45     def _test_registered(self, registry, content):
    46     def _test_registered(self, registry, content):
   388                               self.vreg['views'].select, 'creation', req, rset=rset)
   389                               self.vreg['views'].select, 'creation', req, rset=rset)
   389         self.assertIsInstance(self.vreg['views'].select('table', req, rset=rset),
   390         self.assertIsInstance(self.vreg['views'].select('table', req, rset=rset),
   390                               tableview.TableView)
   391                               tableview.TableView)
   391 
   392 
   392     def test_interface_selector(self):
   393     def test_interface_selector(self):
   393         image = self.add_entity('Image', data_name=u'bim.png', data=Binary('bim'))
   394         image = self.request().create_entity('Image', data_name=u'bim.png', data=Binary('bim'))
   394         # image primary view priority
   395         # image primary view priority
   395         req = self.request()
   396         req = self.request()
   396         rset = req.execute('Image X WHERE X data_name "bim.png"')
   397         rset = req.execute('Image X WHERE X data_name "bim.png"')
   397         self.assertIsInstance(self.vreg['views'].select('primary', req, rset=rset),
   398         self.assertIsInstance(self.vreg['views'].select('primary', req, rset=rset),
   398                               idownloadable.IDownloadablePrimaryView)
   399                               idownloadable.IDownloadablePrimaryView)
   399 
   400 
   400 
   401 
   401     def test_score_entity_selector(self):
   402     def test_score_entity_selector(self):
   402         image = self.add_entity('Image', data_name=u'bim.png', data=Binary('bim'))
   403         image = self.request().create_entity('Image', data_name=u'bim.png', data=Binary('bim'))
   403         # image primary view priority
   404         # image primary view priority
   404         req = self.request()
   405         req = self.request()
   405         rset = req.execute('Image X WHERE X data_name "bim.png"')
   406         rset = req.execute('Image X WHERE X data_name "bim.png"')
   406         self.assertIsInstance(self.vreg['views'].select('image', req, rset=rset),
   407         self.assertIsInstance(self.vreg['views'].select('image', req, rset=rset),
   407                               idownloadable.ImageView)
   408                               idownloadable.ImageView)
   408         fileobj = self.add_entity('File', data_name=u'bim.txt', data=Binary('bim'))
   409         fileobj = self.request().create_entity('File', data_name=u'bim.txt', data=Binary('bim'))
   409         # image primary view priority
   410         # image primary view priority
   410         req = self.request()
   411         req = self.request()
   411         rset = req.execute('File X WHERE X data_name "bim.txt"')
   412         rset = req.execute('File X WHERE X data_name "bim.txt"')
   412         self.assertRaises(NoSelectableObject, self.vreg['views'].select, 'image', req, rset=rset)
   413         self.assertRaises(NoSelectableObject, self.vreg['views'].select, 'image', req, rset=rset)
   413 
   414