web/test/test_views.py
branchtls-sprint
changeset 1398 5fe84a5f7035
parent 1368 c0138f349ff4
child 1802 d628defebc17
equal deleted inserted replaced
1397:6cbc7bc8ea6d 1398:5fe84a5f7035
     2 
     2 
     3 from cubicweb.devtools.testlib import WebTest, AutomaticWebTest
     3 from cubicweb.devtools.testlib import WebTest, AutomaticWebTest
     4 from cubicweb.view import AnyRsetView
     4 from cubicweb.view import AnyRsetView
     5 
     5 
     6 AutomaticWebTest.application_rql = [
     6 AutomaticWebTest.application_rql = [
     7     'Any L,F WHERE E is EUser, E login L, E firstname F',
     7     'Any L,F WHERE E is CWUser, E login L, E firstname F',
     8     'Any L,F,E WHERE E is EUser, E login L, E firstname F',
     8     'Any L,F,E WHERE E is CWUser, E login L, E firstname F',
     9     'Any COUNT(X) WHERE X is EUser',
     9     'Any COUNT(X) WHERE X is CWUser',
    10     ]
    10     ]
    11 
    11 
    12 class ComposityCopy(WebTest):
    12 class ComposityCopy(WebTest):
    13 
    13 
    14     def test_regr_copy_view(self):
    14     def test_regr_copy_view(self):
    15         """regression test: make sure we can ask a copy of a
    15         """regression test: make sure we can ask a copy of a
    16         composite entity
    16         composite entity
    17         """
    17         """
    18         rset = self.execute('EUser X WHERE X login "admin"')
    18         rset = self.execute('CWUser X WHERE X login "admin"')
    19         self.view('copy', rset)
    19         self.view('copy', rset)
    20 
    20 
    21 
    21 
    22 
    22 
    23 class SomeView(AnyRsetView):
    23 class SomeView(AnyRsetView):
    31 class ManualWebTests(WebTest):
    31 class ManualWebTests(WebTest):
    32     def setup_database(self):
    32     def setup_database(self):
    33         self.auto_populate(10)
    33         self.auto_populate(10)
    34 
    34 
    35     def test_manual_tests(self):
    35     def test_manual_tests(self):
    36         rset = self.execute('Any P,F,S WHERE P is EUser, P firstname F, P surname S')
    36         rset = self.execute('Any P,F,S WHERE P is CWUser, P firstname F, P surname S')
    37         self.view('table', rset, template=None, displayfilter=True, displaycols=[0,2])        
    37         self.view('table', rset, template=None, displayfilter=True, displaycols=[0,2])        
    38 
    38 
    39     def test_sortable_js_added(self):
    39     def test_sortable_js_added(self):
    40         rset = self.execute('EUser X')
    40         rset = self.execute('CWUser X')
    41         # sortable.js should not be included by default
    41         # sortable.js should not be included by default
    42         self.failIf('jquery.tablesorter.js' in self.view('oneline', rset))
    42         self.failIf('jquery.tablesorter.js' in self.view('oneline', rset))
    43         # but should be included by the tableview
    43         # but should be included by the tableview
    44         rset = self.execute('Any P,F,S LIMIT 1 WHERE P is EUser, P firstname F, P surname S')
    44         rset = self.execute('Any P,F,S LIMIT 1 WHERE P is CWUser, P firstname F, P surname S')
    45         self.failUnless('jquery.tablesorter.js' in self.view('table', rset))
    45         self.failUnless('jquery.tablesorter.js' in self.view('table', rset))
    46 
    46 
    47     def test_js_added_only_once(self):
    47     def test_js_added_only_once(self):
    48         self.vreg._loadedmods[__name__] = {}
    48         self.vreg._loadedmods[__name__] = {}
    49         self.vreg.register_vobject_class(SomeView)
    49         self.vreg.register_vobject_class(SomeView)
    50         rset = self.execute('EUser X')
    50         rset = self.execute('CWUser X')
    51         source = self.view('someview', rset).source
    51         source = self.view('someview', rset).source
    52         self.assertEquals(source.count('spam.js'), 1)
    52         self.assertEquals(source.count('spam.js'), 1)
    53 
    53 
    54 
    54 
    55 
    55 
    56 class ExplicitViewsTest(WebTest):
    56 class ExplicitViewsTest(WebTest):
    57     
    57     
    58     def test_unrelateddivs(self):
    58     def test_unrelateddivs(self):
    59         rset = self.execute('Any X WHERE X is EUser, X login "admin"')
    59         rset = self.execute('Any X WHERE X is CWUser, X login "admin"')
    60         group = self.add_entity('EGroup', name=u'R&D')
    60         group = self.add_entity('CWGroup', name=u'R&D')
    61         req = self.request(relation='in_group_subject')
    61         req = self.request(relation='in_group_subject')
    62         self.view('unrelateddivs', rset, req)
    62         self.view('unrelateddivs', rset, req)
    63         
    63         
    64         
    64         
    65 
    65