devtools/testlib.py
branchstable
changeset 8497 7f71e366cb5e
parent 8480 086cff6a306a
child 8543 b7c9443d8625
child 8628 b236b91836c0
equal deleted inserted replaced
8491:8c526cc46dc6 8497:7f71e366cb5e
   815         :returns: an instance of `cubicweb.devtools.htmlparser.PageInfo`
   815         :returns: an instance of `cubicweb.devtools.htmlparser.PageInfo`
   816                   encapsulation the generated HTML
   816                   encapsulation the generated HTML
   817         """
   817         """
   818         req = req or rset and rset.req or self.request()
   818         req = req or rset and rset.req or self.request()
   819         req.form['vid'] = vid
   819         req.form['vid'] = vid
   820         kwargs['rset'] = rset
       
   821         viewsreg = self.vreg['views']
   820         viewsreg = self.vreg['views']
   822         view = viewsreg.select(vid, req, **kwargs)
   821         view = viewsreg.select(vid, req, rset=rset, **kwargs)
   823         # set explicit test description
   822         # set explicit test description
   824         if rset is not None:
   823         if rset is not None:
   825             self.set_description("testing vid=%s defined in %s with (%s)" % (
   824             self.set_description("testing vid=%s defined in %s with (%s)" % (
   826                 vid, view.__module__, rset.printable_rql()))
   825                 vid, view.__module__, rset.printable_rql()))
   827         else:
   826         else:
   829                 vid, view.__module__))
   828                 vid, view.__module__))
   830         if template is None: # raw view testing, no template
   829         if template is None: # raw view testing, no template
   831             viewfunc = view.render
   830             viewfunc = view.render
   832         else:
   831         else:
   833             kwargs['view'] = view
   832             kwargs['view'] = view
   834             templateview = viewsreg.select(template, req, **kwargs)
       
   835             viewfunc = lambda **k: viewsreg.main_template(req, template,
   833             viewfunc = lambda **k: viewsreg.main_template(req, template,
   836                                                           **kwargs)
   834                                                           rset=rset, **kwargs)
   837         kwargs.pop('rset')
       
   838         return self._test_view(viewfunc, view, template, kwargs)
   835         return self._test_view(viewfunc, view, template, kwargs)
   839 
   836 
   840 
   837 
   841     def _test_view(self, viewfunc, view, template='main-template', kwargs={}):
   838     def _test_view(self, viewfunc, view, template='main-template', kwargs={}):
   842         """this method does the actual call to the view
   839         """this method does the actual call to the view