devtools/testlib.py
changeset 10259 2be01bb6f9de
parent 10112 ff7f86d8393d
child 10301 729f36a1bcfa
equal deleted inserted replaced
10258:61dfc689830a 10259:2be01bb6f9de
   313 
   313 
   314     def new_access(self, login):
   314     def new_access(self, login):
   315         """provide a new RepoAccess object for a given user
   315         """provide a new RepoAccess object for a given user
   316 
   316 
   317         The access is automatically closed at the end of the test."""
   317         The access is automatically closed at the end of the test."""
       
   318         login = unicode(login)
   318         access = RepoAccess(self.repo, login, self.requestcls)
   319         access = RepoAccess(self.repo, login, self.requestcls)
   319         self._open_access.add(access)
   320         self._open_access.add(access)
   320         return access
   321         return access
   321 
   322 
   322     def _close_access(self):
   323     def _close_access(self):
   644             elif isinstance(login, tuple):
   645             elif isinstance(login, tuple):
   645                 groups = login
   646                 groups = login
   646             login = req
   647             login = req
   647             assert not isinstance(self, type)
   648             assert not isinstance(self, type)
   648             req = self._admin_clt_cnx
   649             req = self._admin_clt_cnx
       
   650         if login is not None:
       
   651             login = unicode(login)
   649         if password is None:
   652         if password is None:
   650             password = login.encode('utf8')
   653             password = login
   651         user = req.create_entity('CWUser', login=unicode(login),
   654         user = req.create_entity('CWUser', login=login,
   652                                  upassword=password, **kwargs)
   655                                  upassword=password, **kwargs)
   653         req.execute('SET X in_group G WHERE X eid %%(x)s, G name IN(%s)'
   656         req.execute('SET X in_group G WHERE X eid %%(x)s, G name IN(%s)'
   654                     % ','.join(repr(str(g)) for g in groups),
   657                     % ','.join(repr(str(g)) for g in groups),
   655                     {'x': user.eid})
   658                     {'x': user.eid})
   656         if email is not None:
   659         if email is not None: