web/test/unittest_viewselector.py
changeset 7792 163d25c9fdd2
parent 7791 31bb51ea5485
child 7802 d0bf71aff4a1
equal deleted inserted replaced
7791:31bb51ea5485 7792:163d25c9fdd2
   342         # no entity
   342         # no entity
   343         rset = None
   343         rset = None
   344         req = self.request()
   344         req = self.request()
   345         self.assertIsInstance(self.vreg['views'].select('index', req, rset=rset),
   345         self.assertIsInstance(self.vreg['views'].select('index', req, rset=rset),
   346                              startup.IndexView)
   346                              startup.IndexView)
   347         self.assertTrueRaises(NoSelectableObject,
   347         self.assertRaises(NoSelectableObject,
   348                              self.vreg['views'].select, 'primary', req, rset=rset)
   348                              self.vreg['views'].select, 'primary', req, rset=rset)
   349         self.assertTrueRaises(NoSelectableObject,
   349         self.assertRaises(NoSelectableObject,
   350                              self.vreg['views'].select, 'table', req, rset=rset)
   350                              self.vreg['views'].select, 'table', req, rset=rset)
   351 
   351 
   352         # no entity
   352         # no entity
   353         req = self.request()
   353         req = self.request()
   354         rset = req.execute('Any X WHERE X eid 999999')
   354         rset = req.execute('Any X WHERE X eid 999999')
   355         self.assertTrueRaises(NoSelectableObject,
   355         self.assertRaises(NoSelectableObject,
   356                               self.vreg['views'].select, 'index', req, rset=rset)
   356                               self.vreg['views'].select, 'index', req, rset=rset)
   357         self.assertTrueRaises(NoSelectableObject,
   357         self.assertRaises(NoSelectableObject,
   358                               self.vreg['views'].select, 'creation', req, rset=rset)
   358                               self.vreg['views'].select, 'creation', req, rset=rset)
   359         self.assertTrueRaises(NoSelectableObject,
   359         self.assertRaises(NoSelectableObject,
   360                               self.vreg['views'].select, 'primary', req, rset=rset)
   360                               self.vreg['views'].select, 'primary', req, rset=rset)
   361         self.assertTrueRaises(NoSelectableObject,
   361         self.assertRaises(NoSelectableObject,
   362                              self.vreg['views'].select, 'table', req, rset=rset)
   362                              self.vreg['views'].select, 'table', req, rset=rset)
   363         # one entity
   363         # one entity
   364         req = self.request()
   364         req = self.request()
   365         rset = req.execute('CWGroup X WHERE X name "managers"')
   365         rset = req.execute('CWGroup X WHERE X name "managers"')
   366         self.assertIsInstance(self.vreg['views'].select('primary', req, rset=rset),
   366         self.assertIsInstance(self.vreg['views'].select('primary', req, rset=rset),
   369                              baseviews.ListView)
   369                              baseviews.ListView)
   370         self.assertIsInstance(self.vreg['views'].select('edition', req, rset=rset),
   370         self.assertIsInstance(self.vreg['views'].select('edition', req, rset=rset),
   371                              editforms.EditionFormView)
   371                              editforms.EditionFormView)
   372         self.assertIsInstance(self.vreg['views'].select('table', req, rset=rset),
   372         self.assertIsInstance(self.vreg['views'].select('table', req, rset=rset),
   373                              tableview.TableView)
   373                              tableview.TableView)
   374         self.assertTrueRaises(NoSelectableObject,
   374         self.assertRaises(NoSelectableObject,
   375                               self.vreg['views'].select, 'creation', req, rset=rset)
   375                               self.vreg['views'].select, 'creation', req, rset=rset)
   376         self.assertTrueRaises(NoSelectableObject,
   376         self.assertRaises(NoSelectableObject,
   377                               self.vreg['views'].select, 'index', req, rset=rset)
   377                               self.vreg['views'].select, 'index', req, rset=rset)
   378         # list of entities of the same type
   378         # list of entities of the same type
   379         req = self.request()
   379         req = self.request()
   380         rset = req.execute('CWGroup X')
   380         rset = req.execute('CWGroup X')
   381         self.assertIsInstance(self.vreg['views'].select('primary', req, rset=rset),
   381         self.assertIsInstance(self.vreg['views'].select('primary', req, rset=rset),
   382                              primary.PrimaryView)
   382                              primary.PrimaryView)
   383         self.assertIsInstance(self.vreg['views'].select('list', req, rset=rset),
   383         self.assertIsInstance(self.vreg['views'].select('list', req, rset=rset),
   384                              baseviews.ListView)
   384                              baseviews.ListView)
   385         self.assertIsInstance(self.vreg['views'].select('table', req, rset=rset),
   385         self.assertIsInstance(self.vreg['views'].select('table', req, rset=rset),
   386                              tableview.TableView)
   386                              tableview.TableView)
   387         self.assertTrueRaises(NoSelectableObject,
   387         self.assertRaises(NoSelectableObject,
   388                               self.vreg['views'].select, 'creation', req, rset=rset)
   388                               self.vreg['views'].select, 'creation', req, rset=rset)
   389         # list of entities of different types
   389         # list of entities of different types
   390         req = self.request()
   390         req = self.request()
   391         rset = req.execute('Any X')
   391         rset = req.execute('Any X')
   392         self.assertIsInstance(self.vreg['views'].select('primary', req, rset=rset),
   392         self.assertIsInstance(self.vreg['views'].select('primary', req, rset=rset),
   393                                   primary.PrimaryView)
   393                                   primary.PrimaryView)
   394         self.assertIsInstance(self.vreg['views'].select('list', req, rset=rset),
   394         self.assertIsInstance(self.vreg['views'].select('list', req, rset=rset),
   395                                   baseviews.ListView)
   395                                   baseviews.ListView)
   396         self.assertIsInstance(self.vreg['views'].select('table', req, rset=rset),
   396         self.assertIsInstance(self.vreg['views'].select('table', req, rset=rset),
   397                                   tableview.TableView)
   397                                   tableview.TableView)
   398         self.assertTrueRaises(NoSelectableObject,
   398         self.assertRaises(NoSelectableObject,
   399                              self.vreg['views'].select, 'creation', req, rset=rset)
   399                              self.vreg['views'].select, 'creation', req, rset=rset)
   400         self.assertTrueRaises(NoSelectableObject,
   400         self.assertRaises(NoSelectableObject,
   401                               self.vreg['views'].select, 'index', req, rset=rset)
   401                               self.vreg['views'].select, 'index', req, rset=rset)
   402         # whatever
   402         # whatever
   403         req = self.request()
   403         req = self.request()
   404         rset = req.execute('Any N, X WHERE X in_group Y, Y name N')
   404         rset = req.execute('Any N, X WHERE X in_group Y, Y name N')
   405         self.assertIsInstance(self.vreg['views'].select('table', req, rset=rset),
   405         self.assertIsInstance(self.vreg['views'].select('table', req, rset=rset),
   406                                   tableview.TableView)
   406                                   tableview.TableView)
   407         self.assertTrueRaises(NoSelectableObject,
   407         self.assertRaises(NoSelectableObject,
   408                               self.vreg['views'].select, 'index', req, rset=rset)
   408                               self.vreg['views'].select, 'index', req, rset=rset)
   409         self.assertTrueRaises(NoSelectableObject,
   409         self.assertRaises(NoSelectableObject,
   410                               self.vreg['views'].select, 'creation', req, rset=rset)
   410                               self.vreg['views'].select, 'creation', req, rset=rset)
   411         self.assertTrueRaises(NoSelectableObject,
   411         self.assertRaises(NoSelectableObject,
   412                              self.vreg['views'].select, 'primary', req, rset=rset)
   412                              self.vreg['views'].select, 'primary', req, rset=rset)
   413         self.assertTrueRaises(NoSelectableObject,
   413         self.assertRaises(NoSelectableObject,
   414                              self.vreg['views'].select, 'list', req, rset=rset)
   414                              self.vreg['views'].select, 'list', req, rset=rset)
   415         self.assertTrueRaises(NoSelectableObject,
   415         self.assertRaises(NoSelectableObject,
   416                              self.vreg['views'].select, 'edition', req, rset=rset)
   416                              self.vreg['views'].select, 'edition', req, rset=rset)
   417         # mixed query
   417         # mixed query
   418         req = self.request()
   418         req = self.request()
   419         rset = req.execute('Any U,G WHERE U is CWUser, G is CWGroup')
   419         rset = req.execute('Any U,G WHERE U is CWUser, G is CWGroup')
   420         self.assertTrueRaises(NoSelectableObject,
   420         self.assertRaises(NoSelectableObject,
   421                               self.vreg['views'].select, 'edition', req, rset=rset)
   421                               self.vreg['views'].select, 'edition', req, rset=rset)
   422         self.assertTrueRaises(NoSelectableObject,
   422         self.assertRaises(NoSelectableObject,
   423                               self.vreg['views'].select, 'creation', req, rset=rset)
   423                               self.vreg['views'].select, 'creation', req, rset=rset)
   424         self.assertIsInstance(self.vreg['views'].select('table', req, rset=rset),
   424         self.assertIsInstance(self.vreg['views'].select('table', req, rset=rset),
   425                               tableview.TableView)
   425                               tableview.TableView)
   426 
   426 
   427     def test_interface_selector(self):
   427     def test_interface_selector(self):