server/test/unittest_querier.py
changeset 10600 180aa08cad48
parent 10591 8e46ed1a0b8a
child 10613 8d9fe02387e3
equal deleted inserted replaced
10599:99e9fe1e633f 10600:180aa08cad48
  1015     def test_insert_1(self):
  1015     def test_insert_1(self):
  1016         rset = self.qexecute("INSERT Personne X: X nom 'bidule'")
  1016         rset = self.qexecute("INSERT Personne X: X nom 'bidule'")
  1017         self.assertEqual(len(rset.rows), 1)
  1017         self.assertEqual(len(rset.rows), 1)
  1018         self.assertEqual(rset.description, [('Personne',)])
  1018         self.assertEqual(rset.description, [('Personne',)])
  1019         rset = self.qexecute('Personne X WHERE X nom "bidule"')
  1019         rset = self.qexecute('Personne X WHERE X nom "bidule"')
  1020         self.assert_(rset.rows)
  1020         self.assertTrue(rset.rows)
  1021         self.assertEqual(rset.description, [('Personne',)])
  1021         self.assertEqual(rset.description, [('Personne',)])
  1022 
  1022 
  1023     def test_insert_1_multiple(self):
  1023     def test_insert_1_multiple(self):
  1024         self.qexecute("INSERT Personne X: X nom 'bidule'")
  1024         self.qexecute("INSERT Personne X: X nom 'bidule'")
  1025         self.qexecute("INSERT Personne X: X nom 'chouette'")
  1025         self.qexecute("INSERT Personne X: X nom 'chouette'")
  1029 
  1029 
  1030     def test_insert_2(self):
  1030     def test_insert_2(self):
  1031         rset = self.qexecute("INSERT Personne X, Personne Y: X nom 'bidule', Y nom 'tutu'")
  1031         rset = self.qexecute("INSERT Personne X, Personne Y: X nom 'bidule', Y nom 'tutu'")
  1032         self.assertEqual(rset.description, [('Personne', 'Personne')])
  1032         self.assertEqual(rset.description, [('Personne', 'Personne')])
  1033         rset = self.qexecute('Personne X WHERE X nom "bidule" or X nom "tutu"')
  1033         rset = self.qexecute('Personne X WHERE X nom "bidule" or X nom "tutu"')
  1034         self.assert_(rset.rows)
  1034         self.assertTrue(rset.rows)
  1035         self.assertEqual(rset.description, [('Personne',), ('Personne',)])
  1035         self.assertEqual(rset.description, [('Personne',), ('Personne',)])
  1036 
  1036 
  1037     def test_insert_3(self):
  1037     def test_insert_3(self):
  1038         self.qexecute("INSERT Personne X: X nom Y WHERE U login 'admin', U login Y")
  1038         self.qexecute("INSERT Personne X: X nom Y WHERE U login 'admin', U login Y")
  1039         rset = self.qexecute('Personne X WHERE X nom "admin"')
  1039         rset = self.qexecute('Personne X WHERE X nom "admin"')
  1040         self.assert_(rset.rows)
  1040         self.assertTrue(rset.rows)
  1041         self.assertEqual(rset.description, [('Personne',)])
  1041         self.assertEqual(rset.description, [('Personne',)])
  1042 
  1042 
  1043     def test_insert_4(self):
  1043     def test_insert_4(self):
  1044         self.qexecute("INSERT Societe Y: Y nom 'toto'")
  1044         self.qexecute("INSERT Societe Y: Y nom 'toto'")
  1045         self.qexecute("INSERT Personne X: X nom 'bidule', X travaille Y WHERE Y nom 'toto'")
  1045         self.qexecute("INSERT Personne X: X nom 'bidule', X travaille Y WHERE Y nom 'toto'")
  1046         rset = self.qexecute('Any X, Y WHERE X nom "bidule", Y nom "toto", X travaille Y')
  1046         rset = self.qexecute('Any X, Y WHERE X nom "bidule", Y nom "toto", X travaille Y')
  1047         self.assert_(rset.rows)
  1047         self.assertTrue(rset.rows)
  1048         self.assertEqual(rset.description, [('Personne', 'Societe',)])
  1048         self.assertEqual(rset.description, [('Personne', 'Societe',)])
  1049 
  1049 
  1050     def test_insert_4bis(self):
  1050     def test_insert_4bis(self):
  1051         peid = self.qexecute("INSERT Personne X: X nom 'bidule'")[0][0]
  1051         peid = self.qexecute("INSERT Personne X: X nom 'bidule'")[0][0]
  1052         seid = self.qexecute("INSERT Societe Y: Y nom 'toto', X travaille Y WHERE X eid %(x)s",
  1052         seid = self.qexecute("INSERT Societe Y: Y nom 'toto', X travaille Y WHERE X eid %(x)s",
  1067 
  1067 
  1068     def test_insert_5(self):
  1068     def test_insert_5(self):
  1069         self.qexecute("INSERT Personne X: X nom 'bidule'")
  1069         self.qexecute("INSERT Personne X: X nom 'bidule'")
  1070         self.qexecute("INSERT Societe Y: Y nom 'toto', X travaille Y WHERE X nom 'bidule'")
  1070         self.qexecute("INSERT Societe Y: Y nom 'toto', X travaille Y WHERE X nom 'bidule'")
  1071         rset = self.qexecute('Any X, Y WHERE X nom "bidule", Y nom "toto", X travaille Y')
  1071         rset = self.qexecute('Any X, Y WHERE X nom "bidule", Y nom "toto", X travaille Y')
  1072         self.assert_(rset.rows)
  1072         self.assertTrue(rset.rows)
  1073         self.assertEqual(rset.description, [('Personne', 'Societe',)])
  1073         self.assertEqual(rset.description, [('Personne', 'Societe',)])
  1074 
  1074 
  1075     def test_insert_5bis(self):
  1075     def test_insert_5bis(self):
  1076         peid = self.qexecute("INSERT Personne X: X nom 'bidule'")[0][0]
  1076         peid = self.qexecute("INSERT Personne X: X nom 'bidule'")[0][0]
  1077         self.qexecute("INSERT Societe Y: Y nom 'toto', X travaille Y WHERE X eid %(x)s",
  1077         self.qexecute("INSERT Societe Y: Y nom 'toto', X travaille Y WHERE X eid %(x)s",
  1078                      {'x': peid})
  1078                      {'x': peid})
  1079         rset = self.qexecute('Any X, Y WHERE X nom "bidule", Y nom "toto", X travaille Y')
  1079         rset = self.qexecute('Any X, Y WHERE X nom "bidule", Y nom "toto", X travaille Y')
  1080         self.assert_(rset.rows)
  1080         self.assertTrue(rset.rows)
  1081         self.assertEqual(rset.description, [('Personne', 'Societe',)])
  1081         self.assertEqual(rset.description, [('Personne', 'Societe',)])
  1082 
  1082 
  1083     def test_insert_6(self):
  1083     def test_insert_6(self):
  1084         self.qexecute("INSERT Personne X, Societe Y: X nom 'bidule', Y nom 'toto', X travaille Y")
  1084         self.qexecute("INSERT Personne X, Societe Y: X nom 'bidule', Y nom 'toto', X travaille Y")
  1085         rset = self.qexecute('Any X, Y WHERE X nom "bidule", Y nom "toto", X travaille Y')
  1085         rset = self.qexecute('Any X, Y WHERE X nom "bidule", Y nom "toto", X travaille Y')
  1086         self.assert_(rset.rows)
  1086         self.assertTrue(rset.rows)
  1087         self.assertEqual(rset.description, [('Personne', 'Societe',)])
  1087         self.assertEqual(rset.description, [('Personne', 'Societe',)])
  1088 
  1088 
  1089     def test_insert_7(self):
  1089     def test_insert_7(self):
  1090         self.qexecute("INSERT Personne X, Societe Y: X nom N, Y nom 'toto', "
  1090         self.qexecute("INSERT Personne X, Societe Y: X nom N, Y nom 'toto', "
  1091                       "X travaille Y WHERE U login 'admin', U login N")
  1091                       "X travaille Y WHERE U login 'admin', U login N")
  1092         rset = self.qexecute('Any X, Y WHERE X nom "admin", Y nom "toto", X travaille Y')
  1092         rset = self.qexecute('Any X, Y WHERE X nom "admin", Y nom "toto", X travaille Y')
  1093         self.assert_(rset.rows)
  1093         self.assertTrue(rset.rows)
  1094         self.assertEqual(rset.description, [('Personne', 'Societe',)])
  1094         self.assertEqual(rset.description, [('Personne', 'Societe',)])
  1095 
  1095 
  1096     def test_insert_7_2(self):
  1096     def test_insert_7_2(self):
  1097         self.qexecute("INSERT Personne X, Societe Y: X nom N, Y nom 'toto', "
  1097         self.qexecute("INSERT Personne X, Societe Y: X nom N, Y nom 'toto', "
  1098                       "X travaille Y WHERE U login N")
  1098                       "X travaille Y WHERE U login N")
  1103 
  1103 
  1104     def test_insert_8(self):
  1104     def test_insert_8(self):
  1105         self.qexecute("INSERT Societe Y, Personne X: Y nom N, X nom 'toto', X travaille Y "
  1105         self.qexecute("INSERT Societe Y, Personne X: Y nom N, X nom 'toto', X travaille Y "
  1106                       "WHERE U login 'admin', U login N")
  1106                       "WHERE U login 'admin', U login N")
  1107         rset = self.qexecute('Any X, Y WHERE X nom "toto", Y nom "admin", X travaille Y')
  1107         rset = self.qexecute('Any X, Y WHERE X nom "toto", Y nom "admin", X travaille Y')
  1108         self.assert_(rset.rows)
  1108         self.assertTrue(rset.rows)
  1109         self.assertEqual(rset.description, [('Personne', 'Societe',)])
  1109         self.assertEqual(rset.description, [('Personne', 'Societe',)])
  1110 
  1110 
  1111     def test_insert_9(self):
  1111     def test_insert_9(self):
  1112         self.qexecute("INSERT Societe X: X nom  'Lo'")
  1112         self.qexecute("INSERT Societe X: X nom  'Lo'")
  1113         self.qexecute("INSERT Societe X: X nom  'Gi'")
  1113         self.qexecute("INSERT Societe X: X nom  'Gi'")