988 |
988 |
989 def test_update_1(self): |
989 def test_update_1(self): |
990 peid = self.execute("INSERT Personne Y: Y nom 'toto'")[0][0] |
990 peid = self.execute("INSERT Personne Y: Y nom 'toto'")[0][0] |
991 rset = self.execute('Personne X WHERE X nom "toto"') |
991 rset = self.execute('Personne X WHERE X nom "toto"') |
992 self.assertEqual(len(rset.rows), 1) |
992 self.assertEqual(len(rset.rows), 1) |
993 self.execute("SET X nom 'tutu', X prenom 'original' WHERE X is Personne, X nom 'toto'") |
993 rset = self.execute("SET X nom 'tutu', X prenom 'original' WHERE X is Personne, X nom 'toto'") |
|
994 self.assertEqual(tuplify(rset.rows), [(peid, 'tutu', 'original')]) |
994 rset = self.execute('Any Y, Z WHERE X is Personne, X nom Y, X prenom Z') |
995 rset = self.execute('Any Y, Z WHERE X is Personne, X nom Y, X prenom Z') |
995 self.assertEqual(tuplify(rset.rows), [('tutu', 'original')]) |
996 self.assertEqual(tuplify(rset.rows), [('tutu', 'original')]) |
996 |
997 |
997 def test_update_2(self): |
998 def test_update_2(self): |
998 self.execute("INSERT Personne X, Societe Y: X nom 'bidule', Y nom 'toto'") |
999 peid, seid = self.execute("INSERT Personne X, Societe Y: X nom 'bidule', Y nom 'toto'")[0] |
999 #rset = self.execute('Any X, Y WHERE X nom "bidule", Y nom "toto"') |
1000 rset = self.execute("SET X travaille Y WHERE X nom 'bidule', Y nom 'toto'") |
1000 #self.assertEqual(len(rset.rows), 1) |
1001 self.assertEquals(tuplify(rset.rows), [(peid, seid)]) |
1001 #rset = self.execute('Any X, Y WHERE X travaille Y') |
|
1002 #self.assertEqual(len(rset.rows), 0) |
|
1003 self.execute("SET X travaille Y WHERE X nom 'bidule', Y nom 'toto'") |
|
1004 rset = self.execute('Any X, Y WHERE X travaille Y') |
1002 rset = self.execute('Any X, Y WHERE X travaille Y') |
1005 self.assertEqual(len(rset.rows), 1) |
1003 self.assertEqual(len(rset.rows), 1) |
1006 |
1004 |
1007 def test_update_2bis(self): |
1005 def test_update_2bis(self): |
1008 rset = self.execute("INSERT Personne X, Societe Y: X nom 'bidule', Y nom 'toto'") |
1006 rset = self.execute("INSERT Personne X, Societe Y: X nom 'bidule', Y nom 'toto'") |
1017 eid1, eid2 = rset[0][0], rset[0][1] |
1015 eid1, eid2 = rset[0][0], rset[0][1] |
1018 self.execute("SET X travaille Y WHERE X eid %(x)s, Y eid %(y)s", |
1016 self.execute("SET X travaille Y WHERE X eid %(x)s, Y eid %(y)s", |
1019 {'x': unicode(eid1), 'y': unicode(eid2)}) |
1017 {'x': unicode(eid1), 'y': unicode(eid2)}) |
1020 rset = self.execute('Any X, Y WHERE X travaille Y') |
1018 rset = self.execute('Any X, Y WHERE X travaille Y') |
1021 self.assertEqual(len(rset.rows), 1) |
1019 self.assertEqual(len(rset.rows), 1) |
1022 |
|
1023 ## def test_update_4(self): |
|
1024 ## self.execute("SET X know Y WHERE X ami Y") |
|
1025 |
1020 |
1026 def test_update_multiple1(self): |
1021 def test_update_multiple1(self): |
1027 peid1 = self.execute("INSERT Personne Y: Y nom 'tutu'")[0][0] |
1022 peid1 = self.execute("INSERT Personne Y: Y nom 'tutu'")[0][0] |
1028 peid2 = self.execute("INSERT Personne Y: Y nom 'toto'")[0][0] |
1023 peid2 = self.execute("INSERT Personne Y: Y nom 'toto'")[0][0] |
1029 self.execute("SET X nom 'tutu', Y nom 'toto' WHERE X nom 'toto', Y nom 'tutu'") |
1024 self.execute("SET X nom 'tutu', Y nom 'toto' WHERE X nom 'toto', Y nom 'tutu'") |