Пример #1
0
def list_all_policy(**policy_parameter): #/v3/policies{?type,page,per_page} 1125
    method_name = 'listAllPolicy'
    request_parameter = []
    if policy_parameter is not None and len(policy_parameter) > 0 and isinstance(policy_parameter, dict):
        item = 0
        for (key, value) in policy_parameter.items():
            if item == 0:
                request_parameter.append('?'+key)
            else:
                request_parameter.append('&'+key)
            item += 1
            request_parameter.append('='+str(value))
    if len(request_parameter) > 0:
        logger.debug(method_name+'parameter:' + ''.join(request_parameter))
        req = Util.createRequest(KEY_STORE_URL+'/v3/policies%s' % ''.join(request_parameter), 'GET')
    else:
        req = Util.createRequest(KEY_STORE_URL+'/v3/policies', 'GET')
    try:
        response = urllib2.urlopen(req, timeout=TIME_OUT)
        obj = response.read()
        if obj and len(obj):
            content = json.loads(obj)
            code = response.code
            logger.debug(method_name+" code:" + str(code)+" content:" + str(content))
            return code, content
        logger.error(method_name+' Error code: '+response.code)
    except HTTPError, e:
            logger.error(method_name+' Error code: '+str(e.code))
            if 404 == e.code:
                raise APIError('Reason: not found the endPoint')
Пример #2
0
def update_tenant(**tenant):#1200 {'tenant_id':tenant_id,'teant':teant}
    method_name = 'update_tenant'
    parameter = ('tenant_id', 'teant')
    if Util.validate_parameter(*parameter, **tenant):
        # teant = {
        #             "tenant": {
        #                     "id": tenant.get('tenant_id'),
        #                     "name": "ACMExxx corp",
        #                     "description": "A description ...",
        #                     "enabled": True
        #             }
        #          }
        teant = tenant.get('teant')
        params = json.dumps(teant)
        req = Util.createRequest(KEY_STORE_URL+"v2.0/tenants/%s" % tenant.get('tenant_id'), 'POST')
        try:
            response = urllib2.urlopen(req, params, timeout=TIME_OUT)
            obj = response.read()
            if obj and len(obj):
                content = json.loads(obj)
                code = response.code
                logger.debug(method_name+" code:" + str(code)+" content:" + str(content))
                return content
            logger.error(method_name+' Error code: '+response.code)
        except HTTPError, e:
                logger.error(method_name+' Error code: '+str(e.message))
                if 409 == e.code:
                    raise APIError(method_name+'  Duplicated,please update the Tenant to create again')
        except URLError, e:
                logger.error(method_name+' URLError: '+str(e.reason))
                raise APIError(method_name+' URLError: ', e.reason)
Пример #3
0
def update_image(user,**image):#Attribute disk_format can be only replaced for a queued image
    method_name = 'update_image'
    parameter = ['image_id', 'image_content']
    if Util.validate_parameter(*parameter, **image):
        image_id = image.get('image_id')
        req = Util.createRequest(GLANCE_URL+'v2/images/%s' % image_id, 'PATCH', user, 'patch')
        try:
            image_content = image.get('image_content')
            response = urllib2.urlopen(req,  json.dumps(image_content), timeout=TIME_OUT)
            obj = response.read()

            if obj and len(obj):
                content = json.loads(obj)
                code = response.code
                if code == 200 or code == 204:
                    try:
                         update_cache(user,image_id,'update',image_content)
                    except Exception, e:
                        print e.code
                        delete_cache(image_id, user)

                logger.debug(method_name+" code:" + str(code)+" content:" + str(content))
                return code, content
            logger.error(method_name+' Error code: '+response.code)
        except HTTPError, e:
                logger.error(method_name+' Error code: '+str(e.code))
                if 404 == e.code:
                    raise APIError(method_name+' failed.Reason: not found the image')
Пример #4
0
def create_project(user,**project):  #1045 {'project':project}
    method_name = 'create_project'
    parameter = ['project']
    import pdb
    pdb.set_trace()
    if Util.validate_parameter(*parameter, **project):
        req = Util.createRequest(KEY_STORE_URL+"/v3/projects", 'POST',user)
        try:
            response = urllib2.urlopen(req, json.dumps(project), timeout=TIME_OUT)
            obj = response.read()
            if obj and len(obj):
                 content = json.loads(obj)
                 project_id = content['project'].get('id')
                 code = response.code
                 logger.debug(method_name+" code:" + str(code)+" content:" + str(content))
                 user_id=content['project'].get('project_user_id')
                 # if code ==201 and user_id is not None:
                 #     role_id="31fd1d2bb7e741218637e230c13df800"#Need to change roleId
                 #     add_user_to_project(user,project_id,user_id,role_id)
                 return code,content
            logger.error(method_name+' Error code: '+response.code)

        except HTTPError, e:
                logger.error(method_name+":"+str(e.message))
                if 409 == e.code:
                    raise APIError('create project failed', 'Project  Duplicated')
                else:
                    raise APIError('HttpError,please contact the admin')
        except URLError, e:
                logger.error(method_name+"URLError:"+e.message)
                raise APIError('URLError',e.reason)
Пример #5
0
def create_user(userObject,**user_entity):#{'user',user}
    method_name = 'create_user'
    # if Util.validate_parameter(*parameter, **user):
    print 'user_entityxxxxxx',user_entity
    req = Util.createRequest(KEY_STORE_URL+"/v3/users", 'POST',userObject)
    if user_entity.get('user').get('role') is not None:
         role_id = user_entity.get('user')['role']
         del user_entity.get('user')['role']
    try:
        response = urllib2.urlopen(req, json.dumps(user_entity), timeout=TIME_OUT)
        obj = response.read()
        if obj and len(obj):
            content = json.loads(obj)
            code = response.code
            logger.debug(method_name+" code:" + str(code)+" content:" + str(content))
            if code == 201:
                user = content.get('user')
                role_assign = {'project_id':user['default_project_id'],'user_id':user["id"], 'role_id':role_id}
                code = assign_role_to_user(userObject,**role_assign)
            return code, content
        else:
            logger.error(method_name+' Error code: '+response.code)
    except HTTPError, e:
                logger.error(method_name+' Error code: '+str(e.message))
                if 409 == e.code:
                    raise APIError('create tenant failed', 'User  Duplicated')
                else:
                    raise APIError('HttpError,please contact the admin')
Пример #6
0
def put_image_data(image_id, path,user):
    method_name = 'put_image_data'
    import requests
    # user = {"username":'******',"password":'******'}
    code,x_token = Util._get_token(user)
    if code == 201:
        token = x_token['token']
        head = {
                "Content-Type": "application/octet-stream",
                "X-Auth-Token": token
               }
        # requests.head(head)
        url = GLANCE_URL+"v2/images/%s/file" % image_id
        if 'http:' in path:
            f = requests.get(path)
            try:
                r = requests.put(url, data=f, headers=head)
                return r.status_code
            except Exception as e:
                print e
        else:
            with open(path, 'rb') as f2:
                try:
                    print 'begin write data',f2
                    r = requests.put(url, data=f2, headers=head)
                    print 'statusCode',r.status_code
                    return r.status_code
                except Exception as e:
                    print e
Пример #7
0
def delete_tenant(**tenant):#1201 Normal response codes: 204 {'tenant_id':tenantId}
    method_name = 'delete_tenant'
    parameter = ['tenant_id']
    if Util.validate_parameter(*parameter, **tenant):
        req = Util.createRequest(KEY_STORE_URL+"v2.0/tenants/%s" % tenant.get('tenant_id'), 'DELETE')
        try:
            response = urllib2.urlopen(req, json.dumps({}), timeout=TIME_OUT)
            obj = response.read()
            if obj and len(obj):
                code = response.code
                logger.debug(method_name+" code:" + str(code))
                return code
            logger.error(method_name+' Error code: '+response.code)
        except HTTPError, e:
                logger.error(method_name+' Error code: '+str(e.code))
                if 404 == e.code:
                    raise APIError(method_name+' failed.Reason: not found the Tenant')
        except URLError, e:
                logger.error(method_name+' URLError: '+str(e.reason))
                raise APIError(' URLError: ', e.reason)
Пример #8
0
def delete_project(user, project_ids):#1046
    method_name = 'delete_project'
    req = Util.createRequest(KEY_STORE_URL+"v3/projects/" + project_ids, 'DELETE', user)
    try:
        response = urllib2.urlopen(req, timeout=TIME_OUT)
        code = response.code
        logger.debug(method_name+" code:" + str(code))
        return code
    except HTTPError, e:
            logger.error(method_name+' Error code: '+str(e.code))
            raise APIError('HttpError,please contact the admin')
Пример #9
0
def share_image(user,**image):#1273 {'image_id':image_id,'members':members}
    method_name = 'share_image'
    parameter = ('image_id', 'members')
    if Util.validate_parameter(*parameter, **image):
        req = Util.createRequest(GLANCE_URL+"/v2/images/%s/members" % image.get('image_id'), 'POST')
        try:
            response = urllib2.urlopen(req, json.dumps(image.get('members')), timeout=TIME_OUT)
            obj = response.read()
            if obj and len(obj):
                content = json.loads(obj)
                code = response.code
                logger.debug(method_name+" code:" + str(code)+" content:" + str(content))
                return code, content
            logger.error(method_name+' Error code: '+response.code)
        except HTTPError, e:
                logger.error(method_name+' Error code: '+str(e.code))
                raise APIError(method_name+' Error code: '+str(e.code))
        except URLError, e:
                logger.error(method_name+' URLError: '+str(e.code))
                raise APIError(method_name+' URLError: '+str(e.reason))
Пример #10
0
def get_policy_by_id(**policy):#{'policy_id':policy_id}
    method_name = 'get_policy_by_id'
    parameter = ('policy_id')
    if Util.validate_parameter(*parameter, **policy):
        req = Util.createRequest(KEY_STORE_URL+'v3/policies/%s'+'/topologies/%d/node/%s' % policy.get('policy_id'), 'GET')
        try:
            response = urllib2.urlopen(req, json.dumps({}), timeout=TIME_OUT)
            obj = response.read()
            if obj and len(obj):
                content = json.loads(obj)
                code = response.code
                logger.debug(method_name+" code:" + str(code)+" content:" + str(content))
                return code, content
            logger.error(method_name+' Error code: '+response.code)
        except HTTPError, e:
                logger.error(method_name+' Error code: '+str(e.code))
                if 404 == e.code:
                    raise APIError(' failed.Reason: not found the policy')
        except URLError, e:
                logger.error(method_name,' URLError: '+str(e.reason))
                raise APIError(' URLError: ', e.reason)
Пример #11
0
def delete_user(user,user_id):#1201 Normal response codes: 204 {'tenant_id':tenantId}
    method_name = 'delete_user'
    req = Util.createRequest(KEY_STORE_URL+"/v3/users/%s" % user_id, 'DELETE',user)
    try:
        response = urllib2.urlopen(req, timeout=TIME_OUT)
        code = response.code
        logger.debug(method_name+" code:" + str(code))
        return code
    except HTTPError, e:
        logger.error(method_name+' Error code: '+str(e.code))
        if 404 == e.code:
            raise APIError(method_name+' failed.Reason: not found the User')
Пример #12
0
def update_user(**user):#1200 {'tenant_id':tenant_id,'teant':teant}
    method_name = 'update_user'
    parameter = ('user_id', 'user')
    if Util.validate_parameter(*parameter, **user):
        user = user.get('user')
        params = json.dumps(teant)
        req = Util.createRequest(KEY_STORE_URL+"v2.0/users/%s" % user.get('tenant_id'), 'POST')
        try:
            response = urllib2.urlopen(req, params, timeout=TIME_OUT)
            obj = response.read()
            if obj and len(obj):
                content = json.loads(obj)
                code = response.code
                logger.debug(method_name+" code:" + str(code)+" content:" + str(content))
                return content
            logger.error(method_name+' Error code: '+response.code)
        except HTTPError, e:
                logger.error(method_name+' Error code: '+str(e.message))
                if 409 == e.code:
                    raise APIError(method_name+'  Duplicated,please update the Tenant to create again')
        except URLError, e:
                logger.error(method_name+' URLError: '+str(e.reason))
                raise APIError(method_name+' URLError: ', e.reason)
Пример #13
0
def create_tenant(**teant):  #1199{'teant':teant}
    method_name = 'create_tenant'
    parameter = ('teant')
    if Util.validate_parameter(*parameter, **teant):
        req = Util.createRequest(KEY_STORE_URL+"v2.0/tenants/", 'POST')
        try:
            response = urllib2.urlopen(req, json.dumps(teant.get('teant')), timeout=TIME_OUT)
            obj = response.read()
            if obj and len(obj):
                content = json.loads(obj)
                code = response.code
                logger.debug(method_name+" code:" + str(code)+" content:" + str(content))
                return content
            logger.error(method_name+' Error code: '+response.code)
        except HTTPError, e:
                logger.error(method_name+' Error code: '+str(e.code))
                if 409 == e.code:
                    raise APIError('create tenant failed', 'Tenant  Duplicated,please update the Tenant to create again')
                else:
                    raise APIError('HttpError,please contact the admin')
        except URLError, e:
                logger.error(method_name+' URLError: ', e.reason)
                raise APIError('URLError:'+e.reason)
Пример #14
0
def list_project(user):#1046
    method_name = 'list_project'
    req = Util.createRequest(KEY_STORE_URL+"/v3/projects", 'GET',user)
    try:
        response = urllib2.urlopen(req, timeout=TIME_OUT)
        obj = response.read()
        if obj and len(obj):
            content = json.loads(obj)
            code = response.code
            logger.debug(method_name+" code:" + str(response.code)+" content:" + str(content))
        return code, content
    except HTTPError, e:
            logger.error(method_name+' Error code: '+str(e.code))
            raise APIError('HttpError,please contact the admin')
Пример #15
0
def list_project_quota(user, admin_project_id , project_id):#10460d40d7dffdc84e97856358ec02f3917d
    method_name = 'list_project_quota'
    req = Util.createRequest(CINDER_URL+"v2/%s/os-quota-sets/%s" %(admin_project_id,project_id),'GET',user)
    try:
        response = urllib2.urlopen(req, timeout=TIME_OUT)
        obj = response.read()
        if obj and len(obj):
            content = json.loads(obj)
            code = response.code
            logger.debug(method_name+" code:" + str(response.code)+" content:" + str(content))
        return code, content
    except HTTPError, e:
            logger.error(method_name+' Error code: '+str(e.code))
            raise APIError('HttpError,please contact the admin')
Пример #16
0
def delete_image(user,**image):#1265 {'image_id':imageId}
    method_name = 'delete_image'
    #You can delete an image in all status except deleted.
    # You must first set the 'protected' attribute to false (boolean) and then perform the delete.
    parameter = ['image_id']
    if Util.validate_parameter(*parameter, **image):
        image_id = image.get('image_id')
        req = Util.createRequest(GLANCE_URL+'v2/images/%s' % image_id, 'DELETE',user)
        try:
            response = urllib2.urlopen(req, timeout=TIME_OUT)
            code = response.code
            logger.debug(method_name+" code:" + str(code))
            # update cache failed, delete the whole cache table data
            try:
                update_cache(user,image_id, 'delete')
            except Exception, e:
                print e.code
                delete_cache(image_id, user)
            return code
        except HTTPError, e:
                logging.error(method_name+' Error code: '+str(e.code))
                if 404 == e.code:
                    raise APIError('not found the image')
Пример #17
0
def download_image(image_dict):#1270 {'image_id':image_id, 'file_name':file_name}
    method_name = 'download_image'
    parameter = ['image_id', 'file_name']
    if Util.validate_parameter(*parameter, **image):
        req = Util.createRequest(GLANCE_URL+'v2/images/%s/file' % image.get('image_id'), 'GET', 'stream')
        try:
            response = urllib2.urlopen(req, timeout=TIME_OUT)
            with open(image.get('file_name'), 'wb') as f:
                while True:
                    tmp = response.read(1024)
                    if not tmp:
                        break
                    f.write(tmp)
            code = response.getcode()
            logger.debug(method_name+" code:" + str(code))
            return code
        except HTTPError, e:
                logger.error(method_name+' Error code: '+str(e.code))
                if 404 == e.code:
                    raise APIError(method_name+' failed.Reason: not found the image')
        except URLError, e:
                logger.error(method_name+' URLError: '+str(e.code))
                raise APIError(method_name+' URLError: '+str(e.reason))
Пример #18
0
def get_service_list(user):#1201 Normal response codes: 204 {'tenant_id':tenantId}
    method_name = 'get_service_list'
    req = Util.createRequest(KEY_STORE_URL+"/v3/services", 'GET', user)
    try:
        response = urllib2.urlopen(req,  timeout=TIME_OUT)
        obj = response.read()
        if obj and len(obj):
            code = response.code
            content = json.loads(obj)
            logger.debug(method_name+" code:" + str(code))
            return code,content
    except HTTPError, e:
                logger.error(method_name+' Error code: '+str(e.code))
                if 404 == e.code:
                    raise APIError(method_name+' failed.Reason: not found the Endpoint')
Пример #19
0
def assign_role_to_user(user,**kargs):#{'project_id':project_id,'user_id':user_id, 'role_id':role_id}
    method_name = 'assign_role_to_user'
    url = KEY_STORE_URL+"v3/projects/%s/users/%s/roles/%s" % (kargs.get('project_id'), kargs.get('user_id'), kargs.get('role_id'))
    req = Util.createRequest(url, 'PUT',user)
    try:
        response = urllib2.urlopen(req, timeout=TIME_OUT)
        obj = response.read()
        if obj is not None:
            code = response.code
            logger.debug(method_name+" code:" + str(code))
            return code

    except HTTPError, e:
            logger.error(method_name+' Error code: '+str(e.code))
            raise APIError('HttpError,please contact the admin')
Пример #20
0
def update_project_quota(user,admin_project_id,project_id,**quota):#1046
    method_name = 'update_project_quota'
    req = Util.createRequest(NOVA_URL+"v2/%s/os-quota-sets/%s" %(admin_project_id,project_id),'PUT',user)
    ## cinder /network/nova all need to update the Quota separatelly
    try:
        response = urllib2.urlopen(req,json.dumps(quota), timeout=TIME_OUT)
        obj = response.read()
        if obj and len(obj):
            content = json.loads(obj)
            code = response.code
            logger.debug(method_name+" code:" + str(response.code)+" content:" + str(content))
        return code, content
    except HTTPError, e:
            logger.error(method_name+' Error code: '+str(e.code))
            raise APIError('HttpError,please contact the admin')
Пример #21
0
def get_end_point(user):#Lists endpoints for a tenant 1217 {'tenant_id':tenant_id,'endpoint_id':endpoint_id}
    method_name = 'get_end_point'
    req = Util.createRequest(KEY_STORE_URL+"/v3/endpoints", 'GET',user)
    try:
            response = urllib2.urlopen(req, timeout=TIME_OUT)
            obj = response.read()
            if obj and len(obj):
                content = json.loads(obj)
                code = response.code
                logger.debug(method_name+" code:" + str(code)+" content:" + str(content))
                return code,content
            logger.error(method_name+' Error code: '+response.code)
    except HTTPError, e:
                logger.error(method_name+' Error code: '+str(e.code))
                if 404 == e.code:
                    raise APIError('Reason: not found the endPoint')
Пример #22
0
def add_user_to_project(user,project_id,user_id,role_id):  #1045 {'project':project}
    method_name = 'add_user_to_project'
    req = Util.createRequest(KEY_STORE_URL+"/v3/projects/%s/users/%s/roles/%s" %(project_id,user_id,role_id), 'PUT',user)
    try:
            response = urllib2.urlopen(req,  timeout=TIME_OUT)
            obj = response.read()
            if obj and len(obj):
                 code = response.code
                 logger.debug(method_name+" code:" + str(code))
                 return code
    except HTTPError, e:
                logger.error(method_name+":"+str(e.message))
                if 409 == e.code:
                    raise APIError('create project failed', 'Project  Duplicated')
                else:
                    raise APIError('HttpError,please contact the admin')
Пример #23
0
def upload_image(user,**image):#1269 {'image':image}
    method_name = 'upload_image'
    req = Util.createRequest(GLANCE_URL+'v2/images', 'POST',user)
    fileName = None
    image_content = image.get('image')
    if image_content['fileName'] is not None:
         fileName = image_content['fileName']
         del image_content['fileName']

    try:
            response = urllib2.urlopen(req, json.dumps(image_content), timeout=TIME_OUT)
            obj = response.read()

            if obj and len(obj):
                content = json.loads(obj)
                code = response.code
                logger.debug(method_name+" code:" + str(code)+" content:" + str(content))
                image_id = content['id']

                response_code = put_image_data(image_id,fileName,user)
                #add image to cache
                if response_code == 204:
                    try:
                        # image_content ={"protected": False, "name": "portal002", "container_format": "bare", "disk_format": "qcow2", "uri": "1", "visibility": "public", "description": "desc",
                        #          "fileName":"E:\portal_training\cirros-0.3.4-x86_64-disk.img"}
                        image_obj = {}

                        image_obj['name'] = image_content.get('name')
                        image_obj['description'] = image_content.get('description')
                        image_obj['container_format'] = image_content.get('container_format')
                        image_obj['protected'] = image_content.get('protected')
                        image_obj['disk_format'] = image_content.get('disk_format')
                        image_obj['visibility'] = image_content.get('visibility')
                        image_obj['owner'] = user.get('projectid')
                        image_obj['size'] = os.path.getsize(fileName)
                        now_time_eightHoursAgo = (datetime.datetime.now() - datetime.timedelta(hours = 8))
                        now_time = now_time_eightHoursAgo.strftime('%Y-%m-%d %H:%M:%S')
                        image_obj['created_at'] = str(now_time)
                        image_obj['id'] = image_id
                        update_cache(user,image_id, 'add',image_obj)
                    except Exception, e:
                        print e.code
                        delete_cache(image_id, user)
                else:
                    delete_cache(image_id, user)
                return response_code, content
            else:
Пример #24
0
def list_role(user,filter=None):
    method_name = 'list_role'
    url = KEY_STORE_URL+"/v3/roles"
    if filter is not None:
        url = KEY_STORE_URL+"/v3/roles?"+str(filter)
    req = Util.createRequest(url, 'GET',user)
    try:
        response = urllib2.urlopen(req, timeout=TIME_OUT)
        obj = response.read()
        if obj is not None and len(obj):
            content = json.loads(obj)
            code = response.code
            logger.debug(method_name+" code:" + str(code)+" content:" + str(content))
            return code,content
        logger.error(method_name+' Error code: '+response.code)
    except HTTPError, e:
            logger.error(method_name+' Error code: '+str(e.code))
            raise APIError('HttpError,please contact the admin')
Пример #25
0
def show_image_detail_by_id(user,image_id):
    method_name = 'show_image_detail_by_id'
    req = Util.createRequest(GLANCE_URL+'v2/images/%s' % image_id, 'GET',user)
    code = 500
    try:
        response = urllib2.urlopen(req, timeout=TIME_OUT)
        obj = response.read()
        if obj and len(obj):
            content = json.loads(obj)
            code = response.code
            # logger.debug(method_name+" code:" + str(code)+" content:" + str(content))
            return code, content
        else:
            logger.error(method_name+' Error code: '+response.code)
            return code, {"error":"error"}
    except HTTPError, e:
            logger.error(method_name+' Error code: '+str(e.code))
            if 404 == e.code:
                logger.error(method_name+'show image failed.Reason: not found the image')
            return e.code,  {"error":"error"}
Пример #26
0
def list_image(user,parameter='/v2/images'):#1258
    opcache = []
    opcache = Opcache.objects.filter(user=user.get('username')).filter(params=parameter).filter(category='list_image')
    if opcache is not None and len(opcache) >0:
    	obj = opcache[0].content
        if obj and len(obj):
            content = json.loads(obj)
            for image in content['images']:
                image_type = image.get('image_type')
                if image_type  is  None or image_type!='snapshot':
                    del image_type
                    image['image_type']='image'
            # logger.debug(method_name+" code:" + str(code)+" content:" + str(content))
        return 200, content
    method_name = 'list_image'
    req = Util.createRequest(GLANCE_URL+parameter, 'GET',user)
    try:
        response = urllib2.urlopen(req, timeout=TIME_OUT)
        obj = response.read()
        o = Opcache()
        o.user = user.get('username')
        o.category = 'list_image'
	o.params = parameter
        o.content = obj 
        o.save()
        if obj and len(obj):
            content = json.loads(obj)
            code = response.code
            for image in content['images']:
                image_type = image.get('image_type')
                if image_type  is  None or image_type!='snapshot':
                    del image_type
                    image['image_type']='image'
            # logger.debug(method_name+" code:" + str(code)+" content:" + str(content))
        return code, content
    except HTTPError, e:
            logger.error(method_name+' Error code: '+str(e.code))
            if 404 == e.code:
                raise APIError(method_name+' failed.Reason: not found the image')
Пример #27
0
 def activation_code(self, code):
     data = {"code": code}
     url = self.host + 'activation_code'
     LOG.info("请求url:%s" % url)
     req = requests.post(url=url, json=data, headers=Util().get_token())
     return req.json()
Пример #28
0
 def _task_get_brand_callback(self, results, code):
     return Util.to_simple_dict_list(results)
Пример #29
0
 def natification(self, pn_id):
     data = {"pn_id": pn_id}
     url = self.host + 'owner/notification'
     LOG.info("请求url:%s" % url)
     req = requests.post(url=url, json=data, headers=Util().get_token())
     return req.json()
Пример #30
0
from PyQt5 import QtWidgets, uic
from common.util import Util
import socket
import threading

Ui_MainWindow, QtBaseClass = uic.loadUiType(Util.find_file("chatUI.ui"))


def pack_message(message):
    return message + '\n'


class NewChatController(QtWidgets.QMainWindow, Ui_MainWindow):

    def __init__(self):
        QtWidgets.QMainWindow.__init__(self)
        Ui_MainWindow.__init__(self)
        self.setupUi(self)
        self.user = ''
        self.data = ''

        self.HEADER = 64
        self.PORT = 5555
        self.FORMAT = 'utf-8'
        self.DISCONNECT_MESSAGE = "!DISCONNECT!"
        self.SERVER = "192.168.0.15"
        self.ADDRESS = (self.SERVER, self.PORT)

        self.client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        self.client_socket.connect(self.ADDRESS)
        self.pushButtonSend.setEnabled(False)
Пример #31
0
 def __load(self):
     try:
         with open(Util.find_file('data.db'), 'r') as file:
             self.__model.task = json.load(file)
     except Exception:
         pass
Пример #32
0
 def subscription(self):
     data = {}
     url = self.host + 'user/' + str(Util().get_user_id()) + '/subscription'
     LOG.info("请求url:%s" % url)
     req = requests.get(url=url, json=data, headers=Util().get_token())
     return req.json()
Пример #33
0
 def sort_by_name(self):
   Util.print_list(self.__stats_controller.sort_by_name())
Пример #34
0
 def test_get_month_measurements_data(self):
     result = self.monthmeasurements(Util().get_user_id())
     self.assertOkResult(result)
Пример #35
0
 def sort_by_name(self):
     Util.print_list(self.__stats_controller.sort_by_name())
Пример #36
0
 def subscription(self):
     data = {}
     url = self.host + 'res/getUrl'
     LOG.info("请求url:%s" % url)
     req = requests.post(url=url, json=data, headers=Util().get_token())
     return req.json()
Пример #37
0
 def list(self):
   Util.print_list(self.__movie_controller.list_movies())
Пример #38
0
 def local_natification(self):
     data = {}
     url = self.host + 'configuration/local_notification'
     LOG.info("请求url:%s" % url)
     req = requests.post(url=url, json=data, headers=Util().get_token())
     return req.json()
Пример #39
0
 def list(self):
   Util.print_list(self.__rent_return_controller.rented_movies())
Пример #40
0
    def holder_rate_status(self, t, search_row):
        """所有者別状況"""
        # gov: 政府及び地方公共団体, fin: 金融機関, sec: 金融商品取引業者, cop: その他法人
        # frc: 外国法人, frp: 外国個人, otp:個人その他, tot: 計, lwu: 単元未満株式
        col_flg = OrderedDict({
            'gov': False,
            'fin': False,
            'sec': False,
            'cop': False,
            'frc': False,
            'frp': False,
            'otp': False,
            'tot': False,
            'lwu': False
        })
        ret = {
            'gov': [],
            'fin': [],
            'sec': [],
            'cop': [],
            'frc': [],
            'frp': [],
            'otp': [],
            'tot': [],
            'lwu': []
        }
        reach_kabunushi_su = False

        for r in t['table']:
            td_cnt = r.count('<td>')
            if td_cnt > 0:
                m = re.search('<td>(.*?)</td>' * td_cnt, r)
                if m:
                    if not reach_kabunushi_su:
                        for i in range(td_cnt):
                            row = self.tag_remove(m.group(i + 1)).replace(
                                ' ', '')
                            if not col_flg['gov'] and '政府及び地方公共団体' in row:
                                col_flg['gov'] = True
                            if not col_flg['fin'] and '金融機関' in row:
                                col_flg['fin'] = True
                            if not col_flg['sec'] and ('金融商品取扱業者' in row
                                                       or '金融商品取引業者' in row):
                                col_flg['sec'] = True
                            if not col_flg['cop'] and 'その他の法人' in row:
                                col_flg['cop'] = True
                            if not col_flg['frc'] and '個人以外' in row:
                                col_flg['frc'] = True
                            if not col_flg['frp'] and '個人' == row:
                                col_flg['frp'] = True
                            if not col_flg['otp'] and '個人その他' in row:
                                col_flg['otp'] = True
                            if not col_flg['tot'] and '計' in row:
                                col_flg['tot'] = True
                            if not col_flg['lwu'] and '単元未満株式の状況' in row:
                                col_flg['lwu'] = True

                            if '株主数' in row:
                                reach_kabunushi_su = True
                                break

                    if reach_kabunushi_su:
                        kbn = self.tag_remove(m.group(1))

                        if re.search(r'所有株式数\s*\(', kbn):
                            ret['unit'] = kbn.replace('所有株式数', '')

                        if '株主数' in kbn or '所有株式数' in kbn or kbn in '所有株式数の割合':
                            row_cnt = 2
                            for k, v in col_flg.items():
                                if v:
                                    if row_cnt < len(m.groups()):
                                        val = self.tag_remove(
                                            m.group(row_cnt)).replace(',', '')
                                        val = self.norm(val)
                                        val = '0' if val == '-' or val == '-' or val == '―' else val
                                        if Util.is_digit(val):
                                            ret[k].append(str(float(val)))
                                        else:
                                            ret[k].append(str(0))
                                        row_cnt = row_cnt + 1

        if 'dec_date' not in t:
            Log.warn('所有者別日付不正: {}'.format(search_row['company_name']))
            return '-'
        if 'unit' not in ret:
            Log.warn('株式単位不正: {}'.format(search_row['company_name']))
            return '-'

        ret['date'] = self.convert_date(t['dec_date'])
        return ret
Пример #41
0
 def get_token(self):
     data = {}
     url = self.host + "owner/measurements/" + Util().get_record_id() + "/token"
     LOG.info("请求url:%s" % url)
     res = requests.get(url=url, json=data, headers=Util().get_token())
     return res.json()
Пример #42
0
 def sort_by_borrow(self):
     Util.print_list(self.__stats_controller.sort_by_borrow())
Пример #43
0
class ValidateEmailVerificationCode(ApiTestCase):
    u'''验证邮箱验证码是否正确'''
    def setUp(self):
        LOG.info('测试用例开始执行')

    def tearDown(self):
        LOG.info('测试用例执行完毕')

    host = ReadConfig().get_http('url')
    # reset_serial_number = Util().get_email_reset_password_serial_number()
    modify_serial_number = Util(
    ).get_email_modify_secure_email_serial_number_old()
    verification_code = Util().email_verification_code()

    def validate_email_verification_code(self, email, verification_code,
                                         serial_number, verification_type):
        data = {
            "email": email,
            "verification_code": verification_code,
            "serial_number": serial_number,
            "verification_type": verification_type
        }
        url = self.host + "user/validate_email_verification_code"
        LOG.info("请求url:%s" % url)
        LOG.info("请求参数:%s" % data)
        req = requests.post(url=url,
                            json=data,
                            headers=Util().get_authorization())
        return req.json()

    def test_validate_email_correct_parameters_reset_password(self):
        u"""正确参数reset_password"""
        LOG.info("------验证邮箱验证码是否正确:start!---------")
        result = self.validate_email_verification_code(
            data.email, self.verification_code, self.reset_serial_number,
            'reset_password')
        LOG.info("获取测试结果:%s" % result)
        self.assertOkResult(result)
        LOG.info("------pass!---------")

    def test_validate_email_correct_parameters_modify_secure_email(self):
        u"""正确参数modify_secure_email"""
        LOG.info("------验证邮箱验证码是否正确:start!---------")
        result = self.validate_email_verification_code(
            data.email, self.verification_code, self.modify_serial_number,
            'modify_secure_email')
        LOG.info("获取测试结果:%s" % result)
        self.assertOkResult(result)
        LOG.info("------pass!---------")

    def test_validate_email_is_null(self):
        u"""email为空"""
        LOG.info("------验证邮箱验证码是否正确:start!---------")
        result = self.validate_email_verification_code(
            '', self.verification_code, self.modify_serial_number,
            'modify_secure_email')
        LOG.info("获取测试结果:%s" % result)
        self.assertErrorResult(result, const.ErrSecureEmailUsedByOthers)
        LOG.info("------pass!---------")

    def test_validate_email_not_exit(self):
        u"""email不存在"""
        LOG.info("------验证邮箱验证码是否正确:start!---------")
        result = self.validate_email_verification_code(
            data.email_not_exist, self.verification_code,
            self.modify_serial_number, 'modify_secure_email')
        LOG.info("获取测试结果:%s" % result)
        self.assertErrorResult(result, const.ErrSecureEmailUsedByOthers)
        LOG.info("------pass!---------")

    def test_validate_email_format(self):
        u"""email不存在"""
        LOG.info("------验证邮箱验证码是否正确:start!---------")
        result = self.validate_email_verification_code(
            '267026276', self.verification_code, self.modify_serial_number,
            'modify_secure_email')
        LOG.info("获取测试结果:%s" % result)
        self.assertErrorResult(result, const.ErrSecureEmailUsedByOthers)
        LOG.info("------pass!---------")

    def test_validate_email_serial_number_is_null(self):
        u"""serial_number为空"""
        LOG.info("------验证邮箱验证码是否正确:start!---------")
        result = self.validate_email_verification_code(data.email,
                                                       self.verification_code,
                                                       '',
                                                       'modify_secure_email')
        LOG.info("获取测试结果:%s" % result)
        self.assertOkResult(result)
        LOG.info("------pass!---------")

    def test_validate_email_verification_type_is_null(self):
        u"""verification_type为空"""
        LOG.info("------验证邮箱验证码是否正确:start!---------")
        result = self.validate_email_verification_code(
            data.email, self.verification_code, self.modify_serial_number, '')
        LOG.info("获取测试结果:%s" % result)
        self.assertOkResult(result)
        LOG.info("------pass!---------")
Пример #44
0
 def tweet_text_cleaning(self, t):
     t.text = Util.mask_twitter_name(Util.all_normalize(t.text))
Пример #45
0
class UserFindUsernameByEmail(ApiTestCase):
    u'''根据邮箱找回用户名'''
    def setUp(self):
        LOG.info('测试用例开始执行')

    def tearDown(self):
        LOG.info('测试用例执行完毕')

    host = ReadConfig().get_http('url')
    serial_number = Util().get_email_find_username_serial_number()
    verification_code = Util().email_verification_code()

    def find_username_by_email(self, verification_code, serial_number, email):
        data = {
            "verification_code": verification_code,
            "serial_number": serial_number,
            "email": email
        }
        url = self.host + "user/find_username_by_email"
        LOG.info("请求url:%s" % url)
        req = requests.post(url=url,
                            json=data,
                            headers=Util().get_authorization())
        LOG.info("请求参数:%s" % data)
        return req.json()

    def test_find_username_correct_parameters(self):
        u"""正确参数"""
        LOG.info("------根据邮箱找回用户名:start!---------")
        result = self.find_username_by_email(self.verification_code,
                                             self.serial_number, data.email)
        LOG.info("获取测试结果:%s" % result)
        self.assertOkResult(result)
        LOG.info("------pass!---------")

    def test_find_username_verification_code_is_null(self):
        u"""verification_code为空"""
        LOG.info("------根据邮箱找回用户名:start!---------")
        result = self.find_username_by_email('', self.serial_number,
                                             data.email)
        LOG.info("获取测试结果:%s" % result)
        self.assertErrorResult(result, const.ErrExpiredVcRecord)
        LOG.info("------pass!---------")

    def test_find_username_verification_code_is_error(self):
        u"""verification_code错误"""
        LOG.info("------根据邮箱找回用户名:start!---------")
        result = self.find_username_by_email('123456', self.serial_number,
                                             data.email)
        LOG.info("获取测试结果:%s" % result)
        self.assertErrorResult(result, const.ErrExpiredVcRecord)
        LOG.info("------pass!---------")

    def test_find_username_serial_number_is_null(self):
        u"""serial_number为空"""
        LOG.info("------根据邮箱找回用户名:start!---------")
        result = self.find_username_by_email(self.verification_code, '',
                                             data.email)
        LOG.info("获取测试结果:%s" % result)
        self.assertErrorResult(result, const.ErrExpiredVcRecord)
        LOG.info("------pass!---------")

    def test_find_username_email_is_null(self):
        u"""email为空"""
        LOG.info("------根据邮箱找回用户名:start!---------")
        result = self.find_username_by_email(self.verification_code,
                                             self.serial_number, '')
        LOG.info("获取测试结果:%s" % result)
        self.assertErrorResult(result, const.ErrExpiredVcRecord)
        LOG.info("------pass!---------")

    def test_find_username_email_is_error(self):
        u"""email错误"""
        LOG.info("------根据邮箱找回用户名:start!---------")
        result = self.find_username_by_email(self.verification_code,
                                             self.serial_number, '2270262765')
        LOG.info("获取测试结果:%s" % result)
        self.assertErrorResult(result, const.ErrExpiredVcRecord)
        LOG.info("------pass!---------")

    def test_find_username_email_is_not_eixt(self):
        u"""email不存在"""
        LOG.info("------根据邮箱找回用户名:start!---------")
        result = self.find_username_by_email(self.verification_code,
                                             self.serial_number,
                                             data.email_not_exist)
        LOG.info("获取测试结果:%s" % result)
        self.assertErrorResult(result, const.ErrExpiredVcRecord)
        LOG.info("------pass!---------")
Пример #46
0
class UserModifySecureEmail(ApiTestCase):
    u'''修改安全邮箱'''
    def setUp(self):
        LOG.info('测试用例开始执行')

    def tearDown(self):
        LOG.info('测试用例执行完毕')

    host = ReadConfig().get_http('url')
    new_serial_number = Util().get_email_modify_secure_email_serial_number()
    new_verification_code = Util().email_verification_code_new()
    old_verification_number = Util(
    ).get_verification_number_email_modify_email()

    def modify_secure_email(self, new_email, new_verification_code,
                            new_serial_number, old_email,
                            old_verification_number):
        data = {
            "new_email": new_email,
            "new_verification_code": new_verification_code,
            "new_serial_number": new_serial_number,
            "old_email": old_email,
            "old_verification_number": old_verification_number
        }
        url = self.host + "user/" + str(
            Util().get_user_id()) + "/modify_secure_email"
        LOG.info("请求url:%s" % url)
        LOG.info("请求url:%s" % data)
        req = requests.post(url=url, json=data, headers=Util().get_token())
        return req.json()

    def test_modify_secure_email_correct_parameters(self):
        u"""正确参数"""
        LOG.info("------修改安全邮箱:start!---------")
        result = self.modify_secure_email(data.new_email,
                                          self.new_verification_code,
                                          self.new_serial_number, data.email,
                                          self.old_verification_number)
        LOG.info("获取测试结果:%s" % result)
        self.assertOkResult(result)
        LOG.info("------pass!---------")

    def test_modify_secure_email_new_email_is_null(self):
        u"""新邮箱为空"""
        LOG.info("------修改安全邮箱:start!---------")
        result = self.modify_secure_email('', self.new_verification_code,
                                          self.new_serial_number, data.email,
                                          self.old_verification_number)
        LOG.info("获取测试结果:%s" % result)
        self.assertErrorResult(result, const.ErrNotExistNewSecureEmail)
        LOG.info("------pass!---------")

    def test_modify_secure_email_new_verification_code_is_null(self):
        u"""新验证码为空"""
        LOG.info("------修改安全邮箱:start!---------")
        result = self.modify_secure_email(data.new_email, '',
                                          self.new_serial_number, data.email,
                                          self.old_verification_number)
        LOG.info("获取测试结果:%s" % result)
        self.assertErrorResult(result, const.ErrNotExistNewSecureEmail)
        LOG.info("------pass!---------")

    def test_modify_secure_email_new_serial_number_is_null(self):
        u"""serial_number为空"""
        LOG.info("------修改安全邮箱:start!---------")
        result = self.modify_secure_email(data.new_email,
                                          self.new_verification_code, '',
                                          data.email,
                                          self.old_verification_number)
        LOG.info("获取测试结果:%s" % result)
        self.assertErrorResult(result, const.ErrNotExistNewSecureEmail)
        LOG.info("------pass!---------")

    def test_modify_secure_email_old_email_is_null(self):
        u"""old_email为空"""
        LOG.info("------修改安全邮箱:start!---------")
        result = self.modify_secure_email(data.new_email,
                                          self.new_verification_code,
                                          self.new_serial_number, '',
                                          self.old_verification_number)
        LOG.info("获取测试结果:%s" % result)
        self.assertErrorResult(result, const.ErrSecureEmailNotSet)
        LOG.info("------pass!---------")

    def test_modify_secure_email_old_verification_number_is_null(self):
        u"""old_verification_number为空"""
        LOG.info("------修改安全邮箱:start!---------")
        result = self.modify_secure_email(data.new_email,
                                          self.new_verification_code,
                                          self.new_serial_number, data.email,
                                          '')
        LOG.info("获取测试结果:%s" % result)
        self.assertErrorResult(result, const.ErrSecureEmailNotSet)
        LOG.info("------pass!---------")

    def test_modify_secure_email_old_email_format(self):
        u"""old_email格式不正确"""
        LOG.info("------修改安全邮箱:start!---------")
        result = self.modify_secure_email(data.new_email,
                                          self.new_verification_code,
                                          self.new_serial_number, 'cuimin',
                                          self.old_verification_number)
        LOG.info("获取测试结果:%s" % result)
        self.assertErrorResult(result, const.ErrNotExistNewSecureEmail)
        LOG.info("------pass!---------")

    def test_modify_secure_email_old_email_not_exist(self):
        u"""old_email不存在"""
        LOG.info("------修改安全邮箱:start!---------")
        result = self.modify_secure_email('*****@*****.**',
                                          self.new_verification_code,
                                          self.new_serial_number,
                                          '*****@*****.**',
                                          self.old_verification_number)
        LOG.info("获取测试结果:%s" % result)
        self.assertErrorResult(result, const.ErrNotExistNewSecureEmail)
        LOG.info("------pass!---------")

    def test_modify_secure_email_new_email_format(self):
        u"""new_email格式不正确"""
        LOG.info("------修改安全邮箱:start!---------")
        result = self.modify_secure_email('60122446',
                                          self.new_verification_code,
                                          self.new_serial_number, data.email,
                                          self.old_verification_number)
        LOG.info("获取测试结果:%s" % result)
        self.assertErrorResult(result, const.ErrNotExistNewSecureEmail)

    def test_modify_secure_email_new_email_is_exist(self):
        u"""new_email已存在 """
        LOG.info("------修改安全邮箱:start!---------")
        result = self.modify_secure_email('*****@*****.**',
                                          self.new_verification_code,
                                          self.new_serial_number, data.email,
                                          self.old_verification_number)
        LOG.info("获取测试结果:%s" % result)
        self.assertErrorResult(result, const.ErrNotExistNewSecureEmail)

    def test_modify_secure_email_same(self):
        u"""新旧密码一致"""
        LOG.info("------修改安全邮箱:start!---------")
        result = self.modify_secure_email(data.email,
                                          self.new_verification_code,
                                          self.new_serial_number, data.email,
                                          self.old_verification_number)
        LOG.info("获取测试结果:%s" % result)
        self.assertErrorResult(result, const.ErrNotExistNewSecureEmail)
Пример #47
0
 def sort_by_borrow(self):
   Util.print_list(self.__stats_controller.sort_by_borrow())
Пример #48
0
 def __init__(self,driver):
     self.driver=driver
     # self.data=Util().operateYaml('../data/pageData/page1.yaml')
     # self.data2=Util().operateYaml('../data/inputData/loginData.yaml')
     self.data= Util().operateYaml("../data/inputData/loginData.yaml")
Пример #49
0
 def __init__(self, driver):
     self.driver = driver
     # #调试
     # self.driver=webdriver.Firefox()
     self.data_page = Util().operateYaml("../data/pageData/page1.yaml")
     self.basecommon = BaseCommon(self.driver)
Пример #50
0
import json
from PyQt5 import QtCore, QtGui, QtWidgets, uic
from PyQt5.QtCore import Qt
from common.util import Util

Ui_MainWindow, QtBaseClass = uic.loadUiType(Util.find_file("taskManagerUI.ui"))
tick = QtGui.QImage(Util.find_file("tick.png"))


class TaskModel(QtCore.QAbstractListModel):
    def __init__(self, *args, task=None, **kwargs):
        super(TaskModel, self).__init__(*args, **kwargs)
        self.task = task or []

    def data(self, index, role):
        if role == Qt.DisplayRole:
            _, text = self.task[index.row()]
            return text

        if role == Qt.DecorationRole:
            status, _ = self.task[index.row()]
            if status:
                return tick

    def rowCount(self, index):
        return len(self.task)


class TaskManagerController(QtWidgets.QMainWindow, Ui_MainWindow):
    def __init__(self):
        QtWidgets.QMainWindow.__init__(self)
Пример #51
0
class ValidateSigninPhone(ApiTestCase):
    u'''验证登录手机号码'''
    def setUp(self):
        LOG.info('测试用例开始执行')

    def tearDown(self):
        LOG.info('测试用例执行完毕')

    host = ReadConfig().get_http('url')
    serial_number = Util().get_reset_password_serial_number()
    mvc = Util().phone_verification_code()

    def validate_signin_phone(self, phone, nation_code, mvc, serial_number):
        data = {
            "phone": phone,
            "nation_code": nation_code,
            "mvc": mvc,
            "serial_number": serial_number
        }
        url = self.host + 'validate_signin_phone'
        LOG.info("请求url:%s" % url)
        res = requests.post(url=url,
                            json=data,
                            headers=Util().get_authorization())
        LOG.info("请求参数:%s" % data)
        return res.json()

    def test_signin_phone_correct_parameters(self):
        u"""正确参数"""
        LOG.info("------验证登录手机号码:start!---------")
        result = self.validate_signin_phone(data.phone, data.nation_code,
                                            self.mvc, self.serial_number)
        LOG.info("获取测试结果:%s" % result)
        self.assertOkResult(result)
        LOG.info("------pass!---------")

    def test_signin_phone_phone_is_null(self):
        u"""手机号为空"""
        LOG.info("------验证登录手机号码:start!---------")
        result = self.validate_signin_phone('', data.nation_code, self.mvc,
                                            self.serial_number)
        LOG.info("获取测试结果:%s" % result)
        self.assertErrorResult(result, const.ErrInValidMVC)
        LOG.info("------pass!---------")

    def test_signin_phone_phone_not_exit(self):
        u"""手机号格式不正确"""
        LOG.info("------验证登录手机号码:start!---------")
        result = self.validate_signin_phone('13221058', data.nation_code,
                                            self.mvc, self.serial_number)
        LOG.info("获取测试结果:%s" % result)
        self.assertErrorResult(result, const.ErrInValidMVC)
        LOG.info("------pass!---------")

    def test_signin_phone_nation_code_is_null(self):
        u"""区号为空"""
        LOG.info("------验证登录手机号码:start!---------")
        result = self.validate_signin_phone(data.phone, '', self.mvc,
                                            self.serial_number)
        LOG.info("获取测试结果:%s" % result)
        self.assertErrorResult(result, const.ErrInValidMVC)
        LOG.info("------pass!---------")

    def test_signin_phone_mvc_is_null(self):
        u"""mvc为空"""
        LOG.info("------验证登录手机号码:start!---------")
        result = self.validate_signin_phone(data.phone, data.nation_code, '',
                                            self.serial_number)
        LOG.info("获取测试结果:%s" % result)
        self.assertErrorResult(result, const.ErrInValidMVC)
        LOG.info("------pass!---------")

    def test_signin_phone_serial_number_is_null(self):
        u"""serial_number为空"""
        LOG.info("------验证登录手机号码:start!---------")
        result = self.validate_signin_phone(data.phone, data.nation_code,
                                            self.mvc, '')
        LOG.info("获取测试结果:%s" % result)
        self.assertErrorResult(result, const.ErrInValidMVC)
        LOG.info("------pass!---------")

    def test_signin_phone_phone_not_correspond_nation_code(self):
        u"""手机号和区号不对应"""
        LOG.info("------验证登录手机号码:start!---------")
        result = self.validate_signin_phone(data.phone, '+1', self.mvc,
                                            self.serial_number)
        LOG.info("获取测试结果:%s" % result)
        self.assertErrorResult(result, const.ErrInValidMVC)
        LOG.info("------pass!---------")
Пример #52
0
 def test_get_monthly_report_data_error_language(self):
     result = self.monthlyreport(0, 0, 0, 0, 0, 0, 0, 0, "ch", Util().get_user_id())
     self.assertErrorResult(result, const.ErrRPCInternal)
Пример #53
0
 def test_get_monthly_report_data(self):
     result = self.monthlyreport(0, 0, 0, 0, 0, 0, 0, 0, "zh-Hans", Util().get_user_id())
     self.assertOkResult(result)
Пример #54
0
 def test_get_monthly_report_data_error_c7_less(self):
     result = self.monthlyreport(0, 0, 0, 0, 0, 0, 0, -20, "zh-Hans", Util().get_user_id())
     self.assertErrorResult(result, const.ErrRPCInternal)
Пример #55
0
 def __save(self):
     with open(Util.find_file('data.db'), 'w') as file:
         json.dump(self.__model.task, file)
Пример #56
0
 def test_get_week_measurements_data(self):
     result = self.weekmeasurements(Util().get_user_id())
     self.assertOkResult(result)