def test_role(self): """ verify save and find operations """ role_admin = self.get_role(ROLE_ADMIN) role_tech = self.get_role(ROLE_TECHNICIAN) db.session.add(role_admin) # before commit the primary key does not exist self.assertIsNone(role_admin.id) # after commit the primary key is generated db.session.commit() assert 1 == role_admin.id roles = RoleEntity.query.all() assert len(roles) == 1 # test usage of CRUDMixin.get_by_id() and create() role_tech = RoleEntity.save(role_tech) assert 2 == role_tech.id ordered = RoleEntity.query.order_by(RoleEntity.name).all() # verify that we have two rows now assert 2 == len(ordered) # verify that the attribute is saved first = ordered[0] assert ROLE_ADMIN == first.name # verify that sorting worked first = RoleEntity.query.order_by(db.desc(RoleEntity.name)).first() assert ROLE_TECHNICIAN == first.name
def api_list_users(): """ Retrieve the users cached in the local database :rtype: Response :return """ if "POST" == request.method: per_page = utils.get_safe_int(request.form.get("per_page")) page_num = utils.get_safe_int(request.form.get("page_num")) else: per_page = utils.get_safe_int(request.args.get("per_page")) page_num = utils.get_safe_int(request.args.get("page_num")) pagination = UserEntity.query.order_by(db.desc(UserEntity.id)).paginate(page_num, per_page, False) items = [i.serialize() for i in pagination.items] return utils.jsonify_success({"total_pages": pagination.pages, "list_of_users": items})
def api_list_users(): """ Retrieve the users cached in the local database :rtype: Response :return """ if 'POST' == request.method: per_page = utils.get_safe_int(request.form.get('per_page')) page_num = utils.get_safe_int(request.form.get('page_num')) else: per_page = utils.get_safe_int(request.args.get('per_page')) page_num = utils.get_safe_int(request.args.get('page_num')) pagination = UserEntity.query.order_by( db.desc(UserEntity.id)).paginate(page_num, per_page, False) items = [i.serialize() for i in pagination.items] return utils.jsonify_success( {"total_pages": pagination.pages, "list_of_users": items})