server/test/unittest_multisources.py
changeset 7791 31bb51ea5485
parent 7771 59ddc2dbe7e0
child 7979 8bd5031e2201
equal deleted inserted replaced
7790:7e16e056eecb 7791:31bb51ea5485
   178         rset = self.sexecute('Any W,X ORDERBY W,X LIMIT 2 OFFSET 2 WHERE X wikiid W')
   178         rset = self.sexecute('Any W,X ORDERBY W,X LIMIT 2 OFFSET 2 WHERE X wikiid W')
   179         self.assertEqual(rset.rows, rsetbase.rows[2:4])
   179         self.assertEqual(rset.rows, rsetbase.rows[2:4])
   180 
   180 
   181     def test_has_text(self):
   181     def test_has_text(self):
   182         self.repo.sources_by_uri['extern'].synchronize(MTIME) # in case fti_update has been run before
   182         self.repo.sources_by_uri['extern'].synchronize(MTIME) # in case fti_update has been run before
   183         self.failUnless(self.sexecute('Any X WHERE X has_text "affref"'))
   183         self.assertTrue(self.sexecute('Any X WHERE X has_text "affref"'))
   184         self.failUnless(self.sexecute('Affaire X WHERE X has_text "affref"'))
   184         self.assertTrue(self.sexecute('Affaire X WHERE X has_text "affref"'))
   185         self.failUnless(self.sexecute('Any X ORDERBY FTIRANK(X) WHERE X has_text "affref"'))
   185         self.assertTrue(self.sexecute('Any X ORDERBY FTIRANK(X) WHERE X has_text "affref"'))
   186         self.failUnless(self.sexecute('Affaire X ORDERBY FTIRANK(X) WHERE X has_text "affref"'))
   186         self.assertTrue(self.sexecute('Affaire X ORDERBY FTIRANK(X) WHERE X has_text "affref"'))
   187 
   187 
   188     def test_anon_has_text(self):
   188     def test_anon_has_text(self):
   189         self.repo.sources_by_uri['extern'].synchronize(MTIME) # in case fti_update has been run before
   189         self.repo.sources_by_uri['extern'].synchronize(MTIME) # in case fti_update has been run before
   190         self.sexecute('INSERT Affaire X: X ref "no readable card"')[0][0]
   190         self.sexecute('INSERT Affaire X: X ref "no readable card"')[0][0]
   191         aff1 = self.sexecute('INSERT Affaire X: X ref "card"')[0][0]
   191         aff1 = self.sexecute('INSERT Affaire X: X ref "card"')[0][0]
   208         aff2 = cu.execute('INSERT Affaire X: X ref "AFFREUX"')[0][0]
   208         aff2 = cu.execute('INSERT Affaire X: X ref "AFFREUX"')[0][0]
   209         self.cnx2.commit()
   209         self.cnx2.commit()
   210         try:
   210         try:
   211             # force sync
   211             # force sync
   212             self.repo.sources_by_uri['extern'].synchronize(MTIME)
   212             self.repo.sources_by_uri['extern'].synchronize(MTIME)
   213             self.failUnless(self.sexecute('Any X WHERE X has_text "blah"'))
   213             self.assertTrue(self.sexecute('Any X WHERE X has_text "blah"'))
   214             self.failUnless(self.sexecute('Any X WHERE X has_text "affreux"'))
   214             self.assertTrue(self.sexecute('Any X WHERE X has_text "affreux"'))
   215             cu.execute('DELETE Affaire X WHERE X eid %(x)s', {'x': aff2})
   215             cu.execute('DELETE Affaire X WHERE X eid %(x)s', {'x': aff2})
   216             self.cnx2.commit()
   216             self.cnx2.commit()
   217             self.repo.sources_by_uri['extern'].synchronize(MTIME)
   217             self.repo.sources_by_uri['extern'].synchronize(MTIME)
   218             rset = self.sexecute('Any X WHERE X has_text "affreux"')
   218             rset = self.sexecute('Any X WHERE X has_text "affreux"')
   219             self.failIf(rset)
   219             self.assertFalse(rset)
   220         finally:
   220         finally:
   221             # restore state
   221             # restore state
   222             cu.execute('SET X ref "AFFREF" WHERE X eid %(x)s', {'x': self.aff1})
   222             cu.execute('SET X ref "AFFREF" WHERE X eid %(x)s', {'x': self.aff1})
   223             self.cnx2.commit()
   223             self.cnx2.commit()
   224 
   224 
   387     def test_delete_source(self):
   387     def test_delete_source(self):
   388         req = self.request()
   388         req = self.request()
   389         req.execute('DELETE CWSource S WHERE S name "extern"')
   389         req.execute('DELETE CWSource S WHERE S name "extern"')
   390         self.commit()
   390         self.commit()
   391         cu = self.session.system_sql("SELECT * FROM entities WHERE source='extern'")
   391         cu = self.session.system_sql("SELECT * FROM entities WHERE source='extern'")
   392         self.failIf(cu.fetchall())
   392         self.assertFalse(cu.fetchall())
   393 
   393 
   394 if __name__ == '__main__':
   394 if __name__ == '__main__':
   395     from logilab.common.testlib import unittest_main
   395     from logilab.common.testlib import unittest_main
   396     unittest_main()
   396     unittest_main()