def change_password(self, new_password): global DBSession hashed_pwd = hashlib.sha512(self.salt + new_password).hexdigest() self.password = hashed_pwd DBSession.add(self) DBSession.flush() logger.info('user %s password changed' % self.user_name) return (True, None)
def fin(): model = DBSession.query(group_table).filter(group_table.group_id == group.group_id).scalar() if model: DBSession.delete(model) DBSession.flush() transaction.commit() print '(A_group fixture) delete' if DBSession.dirty: transaction.commit()
def fin(): model = DBSession.query(user_table).filter(user_table.user_id == user.user_id).scalar() if model: DBSession.delete(model) DBSession.flush() transaction.commit() print '(A_user fixture)=> delete' if DBSession.dirty: transaction.commit()
def create(cls, user_name, password, activated, group_id, description=None): global DBSession salt = os.urandom(26).encode('hex') logger.debug('create salt: %s' % salt) hashed_pwd = hashlib.sha512(salt + password).hexdigest() model = cls(user_name=user_name, description=description, password=hashed_pwd, salt=salt, activated=activated, group_id=group_id) DBSession.add(model) DBSession.flush() logger.info('user %s created' % user_name) return (True, model)
def test_modify_user(engine_fixture, A_user): user_table = models.account.User_TB original_user_id = A_user.user_id new_user_name = id_generator(size=5).decode('utf-8') with transaction.manager as tm: A_user.user_name = new_user_name DBSession.flush() find_user = DBSession.query(user_table).filter(user_table.user_name == new_user_name).scalar() assert A_user.user_id == find_user.user_id
def test_modify_group(engine_fixture, A_group): group_table = models.account.Group_TB model = DBSession.query(group_table).filter(group_table.group_name == A_group.group_name).scalar() assert model.group_id == A_group.group_id original_group_id = model.group_id new_group_name = id_generator(size=5).decode('utf-8') with transaction.manager as tm: A_group.group_name = new_group_name DBSession.flush() find_group = DBSession.query(group_table).filter(group_table.group_name == new_group_name).scalar() assert find_group.group_id == original_group_id
def A_group(request, engine_fixture): group_table = models.account.Group_TB with transaction.manager as tm: group = group_table(group_name=id_generator(size=25).decode('utf-8')) DBSession.add(group) DBSession.flush() print "(A_group fixture) created" def fin(): model = DBSession.query(group_table).filter(group_table.group_id == group.group_id).scalar() if model: DBSession.delete(model) DBSession.flush() transaction.commit() print '(A_group fixture) delete' if DBSession.dirty: transaction.commit() request.addfinalizer(fin) return group
def test_delete_group(engine_fixture): group_table = models.account.Group_TB new_group_name = id_generator(size=25).decode('utf-8') with transaction.manager as tm: #create new_model = group_table(group_name=new_group_name) DBSession.add(new_model) DBSession.flush() model = DBSession.query(group_table).filter(group_table.group_name == new_group_name).scalar() assert model #delete DBSession.delete(model) DBSession.flush() model = DBSession.query(group_table).filter(group_table.group_name == new_group_name).first() assert model == None
def test_delete_user(engine_fixture, A_group): user_table = models.account.User_TB user_name=id_generator(size=25).decode('utf-8') salt = os.urandom(26).encode('hex') password = os.urandom(10).encode('hex') with transaction.manager as tm: success, user = user_table.create( user_name = user_name, password=password, activated=True, group_id=A_group.group_id ) assert success == True #delete DBSession.delete(user) DBSession.flush() model = DBSession.query(user_table).filter(user_table.user_id == user.user_id).first() assert model == None