devtools/testlib.py
changeset 3647 2941f4a0aab9
parent 3589 a5432f99f2d9
child 3657 706d7bf0ae3d
equal deleted inserted replaced
3646:3bba270202ef 3647:2941f4a0aab9
   293         user.clear_related_cache('in_group', 'subject')
   293         user.clear_related_cache('in_group', 'subject')
   294         if commit:
   294         if commit:
   295             self._orig_cnx.commit()
   295             self._orig_cnx.commit()
   296         return user
   296         return user
   297 
   297 
   298     def login(self, login, password=None):
   298     def login(self, login, **kwargs):
   299         """return a connection for the given login/password"""
   299         """return a connection for the given login/password"""
   300         if login == self.admlogin:
   300         if login == self.admlogin:
   301             self.restore_connection()
   301             self.restore_connection()
   302         else:
   302         else:
       
   303             if not kwargs:
       
   304                 kwargs['password'] = str(login)
   303             self.cnx = repo_connect(self.repo, unicode(login),
   305             self.cnx = repo_connect(self.repo, unicode(login),
   304                                     password or str(login),
   306                                     cnxprops=ConnectionProperties('inmemory'),
   305                                     ConnectionProperties('inmemory'))
   307                                     **kwargs)
   306         if login == self.vreg.config.anonymous_user()[0]:
   308         if login == self.vreg.config.anonymous_user()[0]:
   307             self.cnx.anonymous_connection = True
   309             self.cnx.anonymous_connection = True
   308         return self.cnx
   310         return self.cnx
   309 
   311 
   310     def restore_connection(self):
   312     def restore_connection(self):