20 |
20 |
21 from logilab.common.testlib import unittest_main |
21 from logilab.common.testlib import unittest_main |
22 |
22 |
23 from cubicweb.devtools.testlib import CubicWebTC |
23 from cubicweb.devtools.testlib import CubicWebTC |
24 from cubicweb import CW_SOFTWARE_ROOT as BASE, Binary, UnknownProperty |
24 from cubicweb import CW_SOFTWARE_ROOT as BASE, Binary, UnknownProperty |
25 from cubicweb.selectors import (match_user_groups, implements, |
25 from cubicweb.selectors import (match_user_groups, is_instance, |
26 specified_etype_implements, rql_condition, |
26 specified_etype_implements, rql_condition, |
27 traced_selection) |
27 traced_selection) |
28 from cubicweb.web import NoSelectableObject |
28 from cubicweb.web import NoSelectableObject |
29 from cubicweb.web.action import Action |
29 from cubicweb.web.action import Action |
30 from cubicweb.web.views import (primary, baseviews, tableview, editforms, |
30 from cubicweb.web.views import (primary, baseviews, tableview, editforms, |
406 self.vreg['views'].select, 'creation', req, rset=rset) |
406 self.vreg['views'].select, 'creation', req, rset=rset) |
407 self.assertIsInstance(self.vreg['views'].select('table', req, rset=rset), |
407 self.assertIsInstance(self.vreg['views'].select('table', req, rset=rset), |
408 tableview.TableView) |
408 tableview.TableView) |
409 |
409 |
410 def test_interface_selector(self): |
410 def test_interface_selector(self): |
411 image = self.request().create_entity('Image', data_name=u'bim.png', data=Binary('bim')) |
411 image = self.request().create_entity('File', data_name=u'bim.png', data=Binary('bim')) |
412 # image primary view priority |
412 # image primary view priority |
413 req = self.request() |
413 req = self.request() |
414 rset = req.execute('Image X WHERE X data_name "bim.png"') |
414 rset = req.execute('File X WHERE X data_name "bim.png"') |
415 self.assertIsInstance(self.vreg['views'].select('primary', req, rset=rset), |
415 self.assertIsInstance(self.vreg['views'].select('primary', req, rset=rset), |
416 idownloadable.IDownloadablePrimaryView) |
416 idownloadable.IDownloadablePrimaryView) |
417 |
417 |
418 |
418 |
419 def test_score_entity_selector(self): |
419 def test_score_entity_selector(self): |
420 image = self.request().create_entity('Image', data_name=u'bim.png', data=Binary('bim')) |
420 image = self.request().create_entity('File', data_name=u'bim.png', data=Binary('bim')) |
421 # image primary view priority |
421 # image primary view priority |
422 req = self.request() |
422 req = self.request() |
423 rset = req.execute('Image X WHERE X data_name "bim.png"') |
423 rset = req.execute('File X WHERE X data_name "bim.png"') |
424 self.assertIsInstance(self.vreg['views'].select('image', req, rset=rset), |
424 self.assertIsInstance(self.vreg['views'].select('image', req, rset=rset), |
425 idownloadable.ImageView) |
425 idownloadable.ImageView) |
426 fileobj = self.request().create_entity('File', data_name=u'bim.txt', data=Binary('bim')) |
426 fileobj = self.request().create_entity('File', data_name=u'bim.txt', data=Binary('bim')) |
427 # image primary view priority |
427 # image primary view priority |
428 req = self.request() |
428 req = self.request() |