test/unittest_selectors.py
branchstable
changeset 5425 7c84e3f370de
parent 5423 e15abfdcce38
child 5426 0d4853a6e5ee
equal deleted inserted replaced
5421:8167de96c523 5425:7c84e3f370de
    98         csel = AndSelector(sel, Selector())
    98         csel = AndSelector(sel, Selector())
    99         self.assertIs(csel.search_selector(implements), sel)
    99         self.assertIs(csel.search_selector(implements), sel)
   100         csel = AndSelector(Selector(), sel)
   100         csel = AndSelector(Selector(), sel)
   101         self.assertIs(csel.search_selector(implements), sel)
   101         self.assertIs(csel.search_selector(implements), sel)
   102 
   102 
       
   103     def test_inplace_and(self):
       
   104         selector = _1_()
       
   105         selector &= _1_()
       
   106         selector &= _1_()
       
   107         self.assertEquals(selector(None), 3)
       
   108         selector = _1_()
       
   109         selector &= _0_()
       
   110         selector &= _1_()
       
   111         self.assertEquals(selector(None), 0)
       
   112         selector = _0_()
       
   113         selector &= _1_()
       
   114         selector &= _1_()
       
   115         self.assertEquals(selector(None), 0)
       
   116         selector = _0_()
       
   117         selector &= _0_()
       
   118         selector &= _0_()
       
   119         self.assertEquals(selector(None), 0)
       
   120 
       
   121     def test_inplace_or(self):
       
   122         selector = _1_()
       
   123         selector |= _1_()
       
   124         selector |= _1_()
       
   125         self.assertEquals(selector(None), 1)
       
   126         selector = _1_()
       
   127         selector |= _0_()
       
   128         selector |= _1_()
       
   129         self.assertEquals(selector(None), 1)
       
   130         selector = _0_()
       
   131         selector |= _1_()
       
   132         selector |= _1_()
       
   133         self.assertEquals(selector(None), 1)
       
   134         selector = _0_()
       
   135         selector |= _0_()
       
   136         selector |= _0_()
       
   137         self.assertEquals(selector(None), 0)
       
   138 
   103 
   139 
   104 class ImplementsSelectorTC(CubicWebTC):
   140 class ImplementsSelectorTC(CubicWebTC):
   105     def test_etype_priority(self):
   141     def test_etype_priority(self):
   106         req = self.request()
   142         req = self.request()
   107         cls = self.vreg['etypes'].etype_class('File')
   143         cls = self.vreg['etypes'].etype_class('File')