server/test/unittest_querier.py
branchstable
changeset 5782 8ff48d1a319f
parent 5701 41119f034735
child 5811 e77cea9721e7
equal deleted inserted replaced
5781:a3e60e0fb0f3 5782:8ff48d1a319f
   509                             'WHERE U eid %(x)s, X owned_by U '
   509                             'WHERE U eid %(x)s, X owned_by U '
   510                             'HAVING COUNT(X) > 10', {'x': self.ueid})
   510                             'HAVING COUNT(X) > 10', {'x': self.ueid})
   511         self.assertEquals(len(rset.rows), 1)
   511         self.assertEquals(len(rset.rows), 1)
   512         self.assertEquals(rset.rows[0][0], self.ueid)
   512         self.assertEquals(rset.rows[0][0], self.ueid)
   513 
   513 
       
   514     def test_select_having_non_aggregat_1(self):
       
   515         rset = self.execute('Any L WHERE X login L, X creation_date CD '
       
   516                             'HAVING YEAR(CD) = %s' % date.today().year)
       
   517         self.assertListEquals(rset.rows,
       
   518                               [[u'admin'],
       
   519                                [u'anon']])
       
   520 
       
   521     def test_select_having_non_aggregat_2(self):
       
   522         rset = self.execute('Any L GROUPBY L WHERE X login L, X in_group G, '
       
   523                             'X creation_date CD HAVING YEAR(CD) = %s OR COUNT(G) > 1'
       
   524                             % date.today().year)
       
   525         self.assertListEquals(rset.rows,
       
   526                               [[u'admin'],
       
   527                                [u'anon']])
       
   528 
   514     def test_select_complex_sort(self):
   529     def test_select_complex_sort(self):
   515         """need sqlite including http://www.sqlite.org/cvstrac/tktview?tn=3773 fix"""
   530         """need sqlite including http://www.sqlite.org/cvstrac/tktview?tn=3773 fix"""
   516         rset = self.execute('Any X ORDERBY X,D LIMIT 5 WHERE X creation_date D')
   531         rset = self.execute('Any X ORDERBY X,D LIMIT 5 WHERE X creation_date D')
   517         result = rset.rows
   532         result = rset.rows
   518         result.sort()
   533         result.sort()