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