cubicweb/server/test/unittest_querier.py
changeset 12931 6eae252361e5
parent 12567 26744ad37953
equal deleted inserted replaced
12930:665f66e57fc6 12931:6eae252361e5
  1624         self.assertEqual(rset.rows, [[peid]])
  1624         self.assertEqual(rset.rows, [[peid]])
  1625         rset = self.qexecute('Any X WHERE X is CWUser, X has_text "bidule", '
  1625         rset = self.qexecute('Any X WHERE X is CWUser, X has_text "bidule", '
  1626                              'X in_state S, S name SN')
  1626                              'X in_state S, S name SN')
  1627         self.assertEqual(rset.rows, [[peid]])
  1627         self.assertEqual(rset.rows, [[peid]])
  1628 
  1628 
  1629 
       
  1630     def test_nonregr_sql_cache(self):
  1629     def test_nonregr_sql_cache(self):
  1631         # different SQL generated when 'name' is None or not (IS NULL).
  1630         # different SQL generated when 'name' is None or not (IS NULL).
  1632         self.assertFalse(self.qexecute('Any X WHERE X is CWEType, X name %(name)s',
  1631         self.assertFalse(self.qexecute('Any X WHERE X is CWEType, X name %(name)s',
  1633                                        {'name': None}))
  1632                                        {'name': None}))
  1634         self.assertTrue(self.qexecute('Any X WHERE X is CWEType, X name %(name)s',
  1633         self.assertTrue(self.qexecute('Any X WHERE X is CWEType, X name %(name)s',
  1635                                       {'name': 'CWEType'}))
  1634                                       {'name': 'CWEType'}))
       
  1635 
       
  1636     def test_variables_in_rset_for_select(self):
       
  1637         rset = self.qexecute('Any X WHERE X is CWUser, X eid %(x)s', {'x': self.ueid})
       
  1638         self.assertEqual(rset.variables, ['X'])
       
  1639 
       
  1640     def test_only_selected_variables_in_rset(self):
       
  1641         rset = self.qexecute('Any X,Y WHERE X is Personne, Y is Personne, '
       
  1642                              'X nom XD, Y nom XD, X eid Z, Y eid > Z')
       
  1643         # Z is not selected
       
  1644         self.assertEqual(rset.variables, ['X', 'Y'])
       
  1645 
       
  1646     def test_no_variables_in_rset(self):
       
  1647         rset = self.qexecute('Any COUNT(X) WHERE X is CWUser')
       
  1648         self.assertEqual(rset.variables, ['COUNT(X)'])
       
  1649 
       
  1650     def test_mixed_projection_in_rset(self):
       
  1651         rset = self.qexecute('Any X,COUNT(X) WHERE X is CWUser')
       
  1652         self.assertEqual(rset.variables, ['X', 'COUNT(X)'])
  1636 
  1653 
  1637 
  1654 
  1638 class NonRegressionTC(CubicWebTC):
  1655 class NonRegressionTC(CubicWebTC):
  1639 
  1656 
  1640     def test_has_text_security_cache_bug(self):
  1657     def test_has_text_security_cache_bug(self):