Beispiel #1
0
 def setUpClass(cls):
     Log.info('TestUpLoadFileHK START HK端')
     cls.node = 1
     cls.dh = DataHandle()
     # 香港端
     cls.L = Login(node=cls.node)
     cls.admin_cookies = cls.L.get_cookie()
     cls.fh = FileHandle(node=cls.node)
Beispiel #2
0
    def base_compute_vcf(self,
                         para_id,
                         data_id,
                         cookies,
                         flag,
                         calType=1,
                         maxFile=0):
        """vcf协同计算  calType:1 随机查找vcf task ; 2 查找基因协同计算任务 3 GWAS 0 查找最大id+6666"""
        # 获取请求url
        url_compute_vcf = self.domain + Base.dh.get_path(para_id)
        Log.info('compute_vcf request url : {}'.format(url_compute_vcf))
        # 获取请求数据
        data_source = self.dh.get_data(data_id)
        req_para = Base.get_req_para(para_id=para_id, data_id=data_id)
        # 登录态判断
        if cookies is not None:
            # 不存在的fileid
            if maxFile:
                req_para['fileId'] = self.get_max_file_id()
            else:
                # file文件上传获取fileId
                req_para['fileId'] = self.gene_file_id(req_para['fileId'],
                                                       cookies)

        # id不存在
        if not calType:
            req_para['taskId'] = self.get_max_task_id()
        else:
            req_para['taskId'] = self.get_task_id(calType)

        data_source[0][5] = req_para['taskId']
        data_source[0][6] = req_para['fileId']
        Log.info('compute_vcf request data is {}'.format(req_para))
        # 请求
        res = requests.post(url=url_compute_vcf,
                            headers=Base.headers,
                            cookies=cookies,
                            data=Base.sign(req_para)).json()
        Log.info('compute_vcf response data is {}'.format(res))
        # 结果检查
        actual = self.vcf_check(res, flag)
        # 结果写入
        DataHandle.set_data(data_source[0], actual)
        self.dh.write_data(data_source)
        # 结果检查
        return self.dh.check_result(data_source)
Beispiel #3
0
    def base_compute_mul(self,
                         para_id,
                         data_id,
                         cookies,
                         flag,
                         maxId=0,
                         maxFile=0):
        """vcf  批量计算"""
        # 获取请求url
        url_compute_mul = self.domain + Base.dh.get_path(para_id)
        Log.info('compute_mul request url : {}'.format(url_compute_mul))
        # 获取请求数据
        data_source = self.dh.get_data(data_id)
        req_para = Base.get_req_para(para_id=para_id, data_id=data_id)
        # 登录态判断
        if cookies is not None:
            # 不存在的fileid
            if maxFile:
                req_para['fileId'] = self.get_max_file_id()
            else:
                # file文件上传获取fileId
                req_para['fileId'] = self.gene_file_id(req_para['fileId'],
                                                       cookies)

        # taskId
        if maxId:
            req_para['taskId'] = self.get_vcf_max_task_id()
        else:
            req_para['taskId'] = self.get_vcf_task_id_list()

        data_source[0][5] = req_para['taskId']
        data_source[0][7] = req_para['fileId']
        Log.info('compute_vcf request data is {}'.format(req_para))
        # 请求
        res = requests.post(url=url_compute_mul,
                            headers=Base.headers,
                            cookies=cookies,
                            data=Base.sign(req_para)).json()
        Log.info('compute_vcf response data is {}'.format(res))
        # 结果检查
        actual = self.vcf_check(res, flag)
        # 结果写入
        DataHandle.set_data(data_source[0], actual)
        self.dh.write_data(data_source)
        # 结果检查
        return self.dh.check_result(data_source)
 def setUpClass(cls):
     Log.info('TestDownloadTaskHK START HK端')
     cls.node = 1
     cls.dh = DataHandle()
     # 香港端
     cls.L = Login(node=cls.node)
     cls.admin_cookies = cls.L.get_cookie()
     cls.df = DownloadFile(node=cls.node)
Beispiel #5
0
 def setUpClass(cls):
     Log.info('TestQueryUpdateFlagHK START HK端')
     cls.node = 1
     cls.dh = DataHandle()
     # 香港端
     cls.L = Login(node=cls.node)
     cls.admin_cookies = cls.L.get_cookie()
     cls.cancel_task = CancelTask(node=cls.node)
 def setUpClass(cls):
     Log.info('TestQueryInStatusBB START BB端')
     cls.node = 2
     cls.dh = DataHandle()
     # 香港端
     cls.L = Login(node=cls.node)
     cls.admin_cookies = cls.L.get_cookie()
     cls.ui = UserInfo(node=cls.node)
Beispiel #7
0
 def setUpClass(cls):
     Log.info('TestCancelTaskBB START BB端')
     cls.node = 2
     cls.dh = DataHandle()
     # 布里端
     cls.L = Login(node=cls.node)
     cls.admin_cookies = cls.L.get_cookie()
     cls.cancel_task = CancelTask(node=cls.node)
Beispiel #8
0
 def setUpClass(cls):
     Log.info('TestGetListByAcceptHK START HK端')
     cls.node = 1
     cls.dh = DataHandle()
     # 香港端
     cls.L = Login(node=cls.node)
     cls.admin_cookies = cls.L.get_cookie()
     cls.cal_get = CalGet(node=cls.node)
 def setUpClass(cls):
     Log.info('TestGetErrorResultBB START BB端')
     cls.node = 2
     cls.dh = DataHandle()
     # 布里端
     cls.L = Login(node=cls.node)
     cls.admin_cookies = cls.L.get_cookie()
     cls.h_g = HistoryGWAS(node=cls.node)
Beispiel #10
0
 def setUpClass(cls):
     Log.info('TestDownloadPublicTaskBB START BB端')
     cls.node = 2
     cls.dh = DataHandle()
     # 布里端
     cls.L = Login(node=cls.node)
     cls.admin_cookies = cls.L.get_cookie()
     cls.df = DownloadFile(node=cls.node)
Beispiel #11
0
 def setUpClass(cls):
     Log.info('TestComputeMulBB START BB端')
     cls.node = 2
     cls.dh = DataHandle()
     # 布里端
     cls.L = Login(node=cls.node)
     cls.admin_cookies = cls.L.get_cookie()
     cls.comp_vcf = ComputeVcf(node=cls.node)
Beispiel #12
0
 def setUpClass(cls):
     Log.info('TestGetServerBB START BB端')
     cls.node = 2
     cls.dh = DataHandle()
     # 布里端
     cls.L = Login(node=cls.node)
     cls.admin_cookies = cls.L.get_cookie()
     cls.cal_get = CalGet(node=cls.node)
Beispiel #13
0
    def base_gen_start(self, para_id, data_id, cookies, isChange=0, maxFile=0):
        """gen start gen计算发起. isChange:0读取请求数据,1 请求数据重复100遍"""
        # 获取请求url
        url_gen_start = self.domain + Base.dh.get_path(para_id)
        Log.info('gen_start request url : {}'.format(url_gen_start))
        # 获取请求数据
        data_source = self.dh.get_data(data_id)
        req_para = Base.get_req_para(para_id=para_id, data_id=data_id)
        # 登录态判断
        if cookies is not None:
            # 不存在的fileid
            if maxFile:
                req_para['fileList'] = self.get_max_file_id()
                data_source[0][5] = req_para['fileList']
            else:
                # fileList 字符串转列表
                req_para['fileList'] = eval(req_para['fileList'])
                # fileList 文件上传,获取文件id,如果文件列表为空,则跳过上传文件操作
                if len(req_para['fileList']) > 0:
                    req_para['fileList'] = self.gene_file_id_list(
                        req_para['fileList'], cookies)
                    data_source[0][5] = req_para['fileList']
                else:
                    pass
        # remark 内容
        if isChange:
            req_para['remark'] = req_para['remark'] * 100
            data_source[0][7] = req_para['remark']

        # top 数据转换
        req_para['top'] = eval(req_para['top'])
        req_para['isPrint'] = eval(req_para['isPrint'])
        Log.info('gen_start request data is {}'.format(req_para))
        # 请求
        res = requests.post(url=url_gen_start,
                            headers=Base.headers,
                            cookies=cookies,
                            data=Base.sign(req_para)).json()
        Log.info('gen_start response data is {}'.format(res))
        # 结果检查
        actual = self.gen_check(res)
        # 结果写入
        DataHandle.set_data(data_source[0], actual)
        self.dh.write_data(data_source)
        # 结果检查
        return self.dh.check_result(data_source)
Beispiel #14
0
 def setUpClass(cls):
     Log.info('TestGetListBB START BB端')
     cls.node = 2
     cls.dh = DataHandle()
     # 布里端
     cls.L = Login(node=cls.node)
     cls.admin_cookies = cls.L.get_cookie()
     cls.h_t = HistoryTest(node=cls.node)
Beispiel #15
0
 def setUpClass(cls):
     Log.info('TestGetGenResultHK START HK端')
     cls.node = 1
     cls.dh = DataHandle()
     # 香港端
     cls.L = Login(node=cls.node)
     cls.admin_cookies = cls.L.get_cookie()
     cls.h_t = HistoryTest(node=cls.node)
 def setUpClass(cls):
     Log.info('TestGwasStartBB START BB端')
     cls.node = 2
     cls.dh = DataHandle()
     # 布里端
     cls.L = Login(node=cls.node)
     cls.admin_cookies = cls.L.get_cookie()
     cls.cal_gwas = CalGwas(node=cls.node)
Beispiel #17
0
 def base_logout(self, para_id, data_id, cookies=None):
     """退出登录公共方法"""
     Log.info('logout url is %s' % self.url)
     # 获取请求数据
     data_source = self.dh.get_data(data_id)
     req_para = Base.get_req_para(para_id=para_id, data_id=data_id)
     Log.info('request data is %s' % req_para)
     # 请求接口
     res = requests.post(url=self.url, headers=Base.headers, cookies=cookies,
                         data=Base.sign(req_para)).json()
     Log.info('logout response data is {}'.format(res))
     # 结果检查
     actual = self.check(res)
     # 结果写入
     DataHandle.set_data(data_source[0], actual)
     self.dh.write_data(data_source)
     # 结果检查
     return self.dh.check_result(data_source)
Beispiel #18
0
    def base_upload(self, para_id, data_id, cookies, isChange=0, noFile=0):
        """isChange:0 不变更文件名,1 变更文件名
            noFile:0 上传文件,1 无文件
        """
        # 获取请求url
        url_upload = self.domain + Base.dh.get_path(para_id)
        Log.info('upload request url : {}'.format(url_upload))
        # 获取请求数据
        data_source = self.dh.get_data(data_id)
        req_para = Base.get_req_para(para_id=para_id, data_id=data_id)
        # 是否含上传文件
        Log.debug('文件绝对路径:{}'.format(self.gene_file(req_para['fileName'])))
        Log.debug('********:{}'.format(
            type(self.gene_file(req_para['fileName']))))

        if not noFile:
            f = open(self.gene_file(req_para['fileName']), 'rb')
            Log.debug('*********{}****'.format(type(f)))
            files = {'file': f}
            Log.info('要上传的文件是 :{}'.format(f.name))
        else:
            files = {}
            Log.info('上传文件为空')
        # 是否更改文件名
        if isChange:
            req_para['fileName'] = self.change_name(req_para['fileName'])
            data_source[0][5] = req_para['fileName']
        # 接口数据类型转换
        req_para['fileType'] = eval(req_para['fileType'])
        req_para['fileSize'] = eval(req_para['fileSize'])
        Log.info('upload request data is {}'.format(json.dumps(req_para)))
        # 请求接口
        res = requests.post(url=url_upload,
                            cookies=cookies,
                            data=req_para,
                            files=files).json()
        Log.info('upload response data is {}'.format(res))
        # 结果检查
        actual = self.upload_check(res)
        # 结果写入
        DataHandle.set_data(data_source[0], actual)
        self.dh.write_data(data_source)
        # 结果检查
        return self.dh.check_result(data_source)
Beispiel #19
0
 def setUpClass(cls):
     Log.info('TestComputeVcfHK START HK端')
     cls.node = 1
     # 计算类型  vcf;1
     cls.calType = 1
     cls.dh = DataHandle()
     # 香港端
     cls.L = Login(node=cls.node)
     cls.admin_cookies = cls.L.get_cookie()
     cls.comp_vcf = ComputeVcf(node=cls.node)
Beispiel #20
0
 def setUpClass(cls):
     Log.info('TestComputeGwasBB START BB端')
     cls.node = 2
     # 计算类型  gwas;3
     cls.calType = 3
     cls.dh = DataHandle()
     # 布里端
     cls.L = Login(node=cls.node)
     cls.admin_cookies = cls.L.get_cookie()
     cls.comp_gwas = ComputeGwas(node=cls.node)
Beispiel #21
0
 def setUpClass(cls):
     Log.info('TestComputeGenHK START HK端')
     cls.node = 1
     # 计算类型  gen;2
     cls.calType = 2
     cls.dh = DataHandle()
     # 香港端
     cls.L = Login(node=cls.node)
     cls.admin_cookies = cls.L.get_cookie()
     cls.comp_gen = ComputeGen(node=cls.node)
Beispiel #22
0
 def setUpClass(cls):
     Log.info('TestUpdateUserHK START HK端')
     cls.node = 1
     cls.dh = DataHandle()
     # 香港端
     cls.L = Login(node=cls.node)
     cls.admin_cookies = cls.L.get_cookie()
     cls.ui = UserInfo(node=cls.node)
     # cls.url = cls.lc.get_domain() + cls.dh.get_path(1)
     # auto登录cookie
     cls.AUTO_cookies = cls.ui.modify_cookies(data_id=3001, node=cls.node)
 def setUpClass(cls):
     Log.info('TestDownloadLogFileBB START BB端')
     cls.node = 2
     cls.dh = DataHandle()
     # 布里端
     cls.L = Login(node=cls.node)
     cls.admin_cookies = cls.L.get_cookie()
     cls.df = DownloadFile(node=cls.node)
     cls.ui = UserInfo(node=cls.node)
     # auto登录cookie
     cls.AUTO_cookies = cls.ui.modify_cookies(data_id=3001, node=cls.node)
Beispiel #24
0
    def base_query_update_flag(self, para_id, data_id, cookies, flag):
        """协同计算--数据更新"""
        # 获取请求url
        url_query_update_flag = self.domain + Base.dh.get_path(para_id)
        Log.info('query_update_flag request url : {}'.format(url_query_update_flag))
        # 获取请求数据
        data_source = self.dh.get_data(data_id)
        req_para = Base.get_req_para(para_id=para_id, data_id=data_id)

        Log.info('query_update_flag request data is {}'.format(req_para))
        # 请求
        res = requests.post(url=url_query_update_flag, headers=Base.headers, cookies=cookies,
                            data=Base.sign(req_para)).json()
        Log.info('query_update_flag response data is {}'.format(res))
        # 结果检查
        actual = self.query_check(res, flag)
        # 结果写入
        DataHandle.set_data(data_source[0], actual)
        self.dh.write_data(data_source)
        # 结果检查
        return self.dh.check_result(data_source)
Beispiel #25
0
 def base_logic_get_list(self, para_id, data_id, cookies, flag):
     """逻辑管理-查询列表"""
     # 获取请求url
     url_logic_get_list = self.domain + Base.dh.get_path(para_id)
     Log.info('logic_get_list request url : {}'.format(url_logic_get_list))
     # 获取请求数据
     data_source = self.dh.get_data(data_id)
     req_para = Base.get_req_para(para_id=para_id, data_id=data_id)
     Log.info('logic_get_list request data is {}'.format(req_para))
     # 请求
     res = requests.post(url=url_logic_get_list,
                         headers=Base.headers,
                         cookies=cookies,
                         data=Base.sign(req_para)).json()
     Log.info('logic_get_list response data is {}'.format(res))
     # 结果检查
     actual = self.get_logic_check(res, flag)
     # 结果写入
     DataHandle.set_data(data_source[0], actual)
     self.dh.write_data(data_source)
     # 结果检查
     return self.dh.check_result(data_source)
Beispiel #26
0
 def setUpClass(cls):
     Log.info('TestUserInfoBB START BB端')
     # cls.lc = LoadConfig()
     # cls.domain = cls.lc.get_domain()
     cls.node = 2
     cls.dh = DataHandle()
     # 布里端
     cls.L = Login(node=cls.node)
     cls.admin_cookies = cls.L.get_cookie()
     cls.ui = UserInfo(node=cls.node)
     # cls.url = cls.lc.get_domain() + cls.dh.get_path(1)
     # auto登录cookie
     cls.modify_cookie = cls.ui.modify_cookies(data_id=3001, node=cls.node)
Beispiel #27
0
 def base_get_server(self, para_id, data_id, cookies):
     """协同计算--查询服务器公共方法"""
     # 获取请求url
     url_get_server = self.domain + Base.dh.get_path(para_id)
     Log.info('get_server request url : {}'.format(url_get_server))
     # 获取请求数据
     data_source = self.dh.get_data(data_id)
     req_para = Base.get_req_para(para_id=para_id, data_id=data_id)
     Log.info('get_server request data is {}'.format(req_para))
     # 请求
     res = requests.post(url=url_get_server,
                         headers=Base.headers,
                         cookies=cookies,
                         data=Base.sign(req_para)).json()
     Log.info('get_server response data is {}'.format(res))
     # 结果检查
     actual = self.get_server_check(res)
     # 结果写入
     DataHandle.set_data(data_source[0], actual)
     self.dh.write_data(data_source)
     # 结果检查
     return self.dh.check_result(data_source)
Beispiel #28
0
    def base_cancel_task(self, para_id, data_id, cookies, flag, task_modify=0, reason_modify=0):
        """协同计算--取消任务"""
        # 获取请求url
        url_vcf_start = self.domain + Base.dh.get_path(para_id)
        Log.info('cancel_task request url : {}'.format(url_vcf_start))
        # 获取请求数据
        data_source = self.dh.get_data(data_id)
        req_para = Base.get_req_para(para_id=para_id, data_id=data_id)

        req_para['type'] = eval(req_para['type'])

        # 不存在的taskId
        if task_modify:
            temp = {'taskId': None, 'startTaskId': None}
            req_para['taskId'] = self.get_max_task_id(req_para['type'])
        else:
            # 获取请求参数,temp存储id,startTaskId组成的字典
            temp = self.get_task_id(req_para['type'])
            req_para['taskId'] = temp['id']

        # reason 内容
        if reason_modify:
            req_para['reason'] = req_para['reason'] * 100

        data_source[0][5] = req_para['taskId']
        data_source[0][7] = req_para['reason']
        Log.info('cancel_task request data is {}'.format(req_para))
        # 请求
        res = requests.post(url=url_vcf_start, headers=Base.headers, cookies=cookies,
                            data=Base.sign(req_para)).json()
        Log.info('cancel_task response data is {}'.format(res))
        # 结果检查
        actual = self.cancel_check(res, temp, flag)
        # 结果写入
        DataHandle.set_data(data_source[0], actual)
        self.dh.write_data(data_source)
        # 结果检查
        return self.dh.check_result(data_source)
Beispiel #29
0
 def base_get_list_by_condition(self, para_id, data_id, cookies):
     """获取用户列表"""
     # 获取请求url
     url_get_list_by_condition = self.domain + Base.dh.get_path(para_id)
     Log.info('get_list_by_condition request url : {}'.format(
         url_get_list_by_condition))
     # 获取请求数据
     data_source = self.dh.get_data(data_id)
     req_para = Base.get_req_para(para_id=para_id, data_id=data_id)
     Log.info('get_list_by_condition request data is {}'.format(req_para))
     # 请求
     res = requests.post(url=url_get_list_by_condition,
                         headers=Base.headers,
                         cookies=cookies,
                         data=Base.sign(req_para)).json()
     Log.info('get_list_by_condition response data is {}'.format(res))
     # 结果检查
     actual = self.check(res)
     # 结果写入
     DataHandle.set_data(data_source[0], actual)
     self.dh.write_data(data_source)
     # 结果检查
     return self.dh.check_result(data_source)
Beispiel #30
0
    def base_query_in_status(self, para_id, data_id, cookies):
        """本地查询用户在线状态"""
        # 获取请求url
        url_get_user_by_id = self.domain + Base.dh.get_path(para_id)
        Log.info('query_in_status request url : {}'.format(url_get_user_by_id))

        # 获取请求数据
        data_source = self.dh.get_data(data_id)
        req_para = Base.get_req_para(para_id=para_id, data_id=data_id)
        # 请求
        res = requests.post(url=url_get_user_by_id,
                            headers=Base.headers,
                            cookies=cookies,
                            data=Base.sign(req_para),
                            timeout=10).json()
        Log.info('query_in_status response data is {}'.format(res))
        # 结果检查
        actual = self.check(res)
        # 结果写入
        DataHandle.set_data(data_source[0], actual)
        self.dh.write_data(data_source)
        # 结果检查
        return self.dh.check_result(data_source)