18 |
18 |
19 from yams.constraints import UniqueConstraint |
19 from yams.constraints import UniqueConstraint |
20 |
20 |
21 from cubicweb import BadConnectionId, RepositoryError, ValidationError, UnknownEid, AuthenticationError |
21 from cubicweb import BadConnectionId, RepositoryError, ValidationError, UnknownEid, AuthenticationError |
22 from cubicweb.schema import CubicWebSchema, RQLConstraint |
22 from cubicweb.schema import CubicWebSchema, RQLConstraint |
23 from cubicweb.dbapi import connect, repo_connect |
23 from cubicweb.dbapi import connect, repo_connect, multiple_connections_unfix |
24 from cubicweb.devtools.apptest import RepositoryBasedTC |
24 from cubicweb.devtools.apptest import RepositoryBasedTC |
25 from cubicweb.devtools.repotest import tuplify |
25 from cubicweb.devtools.repotest import tuplify |
26 from cubicweb.server import repository |
26 from cubicweb.server import repository |
27 from cubicweb.server.sqlutils import SQL_PREFIX |
27 from cubicweb.server.sqlutils import SQL_PREFIX |
28 |
28 |
274 finally: |
274 finally: |
275 repository.pyro_unregister(self.repo.config) |
275 repository.pyro_unregister(self.repo.config) |
276 |
276 |
277 def _pyro_client(self, done): |
277 def _pyro_client(self, done): |
278 cnx = connect(self.repo.config.appid, u'admin', 'gingkow') |
278 cnx = connect(self.repo.config.appid, u'admin', 'gingkow') |
279 # check we can get the schema |
279 try: |
280 schema = cnx.get_schema() |
280 # check we can get the schema |
281 self.assertEquals(schema.__hashmode__, None) |
281 schema = cnx.get_schema() |
282 cu = cnx.cursor() |
282 self.assertEquals(schema.__hashmode__, None) |
283 rset = cu.execute('Any U,G WHERE U in_group G') |
283 cu = cnx.cursor() |
284 cnx.close() |
284 rset = cu.execute('Any U,G WHERE U in_group G') |
285 done.append(True) |
285 cnx.close() |
|
286 done.append(True) |
|
287 finally: |
|
288 # connect monkey path some method by default, remove them |
|
289 multiple_connections_unfix() |
286 |
290 |
287 def test_internal_api(self): |
291 def test_internal_api(self): |
288 repo = self.repo |
292 repo = self.repo |
289 cnxid = repo.connect(*self.default_user_password()) |
293 cnxid = repo.connect(*self.default_user_password()) |
290 session = repo._get_session(cnxid, setpool=True) |
294 session = repo._get_session(cnxid, setpool=True) |
365 |
369 |
366 def test_type_from_eid_raise(self): |
370 def test_type_from_eid_raise(self): |
367 self.assertRaises(UnknownEid, self.repo.type_from_eid, -2, self.session) |
371 self.assertRaises(UnknownEid, self.repo.type_from_eid, -2, self.session) |
368 |
372 |
369 def test_add_delete_info(self): |
373 def test_add_delete_info(self): |
370 entity = self.repo.vreg.etype_class('Personne')(self.session, None, None) |
374 entity = self.repo.vreg['etypes'].etype_class('Personne')(self.session) |
371 entity.eid = -1 |
375 entity.eid = -1 |
372 entity.complete = lambda x: None |
376 entity.complete = lambda x: None |
373 self.repo.add_info(self.session, entity, self.repo.sources_by_uri['system']) |
377 self.repo.add_info(self.session, entity, self.repo.sources_by_uri['system']) |
374 cu = self.session.system_sql('SELECT * FROM entities WHERE eid = -1') |
378 cu = self.session.system_sql('SELECT * FROM entities WHERE eid = -1') |
375 data = cu.fetchall() |
379 data = cu.fetchall() |