def test_list(request, id): """ 用例列表 :param request: :param id: str or int:当前页 :return: """ account = request.session["now_account"] if request.is_ajax(): test_info = json.loads(request.body.decode('utf-8')) if test_info.get('mode') == 'del': msg = del_test_data(test_info.pop('id')) return HttpResponse(get_ajax_msg(msg, 'ok')) if test_info.get('mode') == 'copy': msg = copy_test_data( test_info.get('data').pop('index'), test_info.get('data').pop('name')) return HttpResponse(get_ajax_msg(msg, 'ok')) # 新增ajax(查询用例)逻辑处理 filter_query = set_filter_session(request) test_list = get_pager_info(TestCaseInfo, filter_query, '/api/test_list/', id) result_list = list() results = serializers.serialize('json', test_list[1], ensure_ascii=False) # 数据库对象转化json result = [result.get('fields') for result in json.loads(results)] # 提取数据库字段 testcase_id = [i.get('pk') for i in json.loads(results)] for num, i in enumerate(result): # 将id字段添加到字段中 i['id'] = testcase_id[num] i['url'] = convert_eval_url(i.get('request')) i['belong_module_name'] = ModuleInfo.objects.get_module_name( i.get('belong_module'), type=False).module_name result_list.append(result) result_list.append(str(test_list[0])) return JsonResponse(result_list, safe=False) else: filter_query = set_filter_session(request) test_list = get_pager_info(TestCaseInfo, filter_query, '/api/test_list/', id) # 获取被引用用例id列表 manage_info = { 'account': account, 'test': test_list[1], 'page_list': test_list[0], 'info': filter_query, 'env': EnvInfo.objects.all().order_by('-create_time'), 'project': ProjectInfo.objects.all().order_by('-update_time') } return render_to_response('test_list.html', manage_info)
def interface_list(request, id): """ 接口列表 :param request: :param id: str or int:当前页 :return: """ if request.session.get('login_status'): acount = request.session["now_account"] filter_query = set_filter_session(request) if request.method == 'GET': if request.GET.get('interface_name') is None: test_list = get_pager_info(TestCaseInfo, filter_query, '/api/interface_list/', id) manage_info = { 'account': acount, 'test': test_list[1], 'page_list': test_list[0], 'info': filter_query, 'env': EnvInfo.objects.all().order_by('-create_time') } return render_to_response('interface_list.html', manage_info) else: filter_query['interface_name'] = request.GET.get( 'interface_name') test_list = get_pager_info(TestCaseInfo, filter_query, '/api/test_list/', id) manage_info = { 'account': acount, 'test': test_list[1], 'page_list': test_list[0], 'info': filter_query, 'env': EnvInfo.objects.all().order_by('-create_time') } return render_to_response('test_list.html', manage_info) else: if request.POST.get('interface_name') is not None: filter_query['interface_name'] = request.POST.get( 'interface_name') test_list = get_pager_info(TestCaseInfo, filter_query, '/api/interface_list/', id) manage_info = { 'account': acount, 'test': test_list[1], 'page_list': test_list[0], 'info': filter_query, 'env': EnvInfo.objects.all().order_by('-create_time') } return render_to_response('interface_list.html', manage_info) else: return HttpResponseRedirect("/api/login/")
def data_list(request, id=None): ''' 数据列表 :param request: :param id: :return: ''' account = request.session["now_account"] if request.method == 'GET': if request.is_ajax(): mes = deleteData(id) return HttpResponse(mes) else: filter_query = {'belong_project': 'All', 'fileName': ''} data_list = get_pager_info(DataInfo, filter_query, '/api/data_list/', id) manage_info = { 'account': account, 'dataList': data_list[1], 'page_list': data_list[0], 'info': filter_query, 'sum': data_list[2], 'project_all': ProjectInfo.objects.all().order_by('-update_time'), 'page_info': data_list[3] } return render_to_response('data_list.html', manage_info) # 修改文件和查询 elif request.method == 'POST': if request.is_ajax(): fileObj = request.FILES.get('file') dataInfo = json.loads(request.POST.get('info')) mes = updateFile(fileObj, dataInfo, account) return HttpResponse(mes) else: filter_query = set_filter_session(request) data_list = get_pager_info(DataInfo, filter_query, '/api/data_list/', id) manage_info = { 'account': account, 'dataList': data_list[1], 'page_list': data_list[0], 'info': filter_query, 'sum': data_list[2], 'project_all': ProjectInfo.objects.all().order_by('-update_time'), 'page_info': data_list[3] } return render_to_response('data_list.html', manage_info)
def ca_list(request, id): account = request.session["now_account"] #ca operation if request.is_ajax(): kwargs = json.loads(request.body.decode('utf-8')) kwargs['author'] = account if kwargs.get('mode') == 'del': msg = del_ca_data(kwargs.pop('id')) elif kwargs.get('mode') == 'add': msg = add_ca_data(**kwargs) elif kwargs.get('mode') == 'get': msg = get_ca_data(**kwargs) elif kwargs.get('mode') == 'refresh': msg = refresh_ca_data(**kwargs) elif kwargs.get('mode') == 'cacfg': msg = get_cacfg(**kwargs) #operation failed, return error message return HttpResponse(get_ajax_msg(msg, 'ok')) #show ca list else: filter_query = set_filter_session(request) pro_list = get_pager_info(CaInfo, filter_query, '/api/ca_list/', id) ca_cfg_obj = CaCFG.objects.get(ca_type='dev') manage_info = { "ca_url": ca_cfg_obj.ca_url, "ca_loginurl": ca_cfg_obj.ca_loginurl, 'account': account, 'page_list': pro_list[0], 'ca_list': pro_list[1], 'info': filter_query, 'projects': ProjectInfo.objects.all().order_by('-update_time'), } return render_to_response('ca_list.html', manage_info)
def sdk_test_list(request, id): account = request.session["now_account"] if request.is_ajax(): kwargs = json.loads(request.body.decode('utf-8')) kwargs["author"] = account if kwargs.get('mode') == 'del': msg = del_sdk_test_data(kwargs.pop('id')) else: msg = add_sdk_test_data(**kwargs) return HttpResponse(get_ajax_msg(msg, 'ok')) elif request.method == 'GET': filter_query = set_filter_session(request) pro_list = get_pager_info(SDKTestInfo, filter_query, '/api/sdk_test/', id) if "msg" in request.session.keys(): msg = request.session.pop("msg") else: msg = "" manage_info = { 'account': account, 'sdk_test_list': pro_list[1], 'page_list': pro_list[0], 'info': filter_query, 'projects': ProjectInfo.objects.all().order_by('-update_time'), 'msg': msg } return render_to_response('sdk_test_list.html', manage_info)
def config_list(request, id): """ 配置列表 :param request: :param id: str or int:当前页 :return: """ if request.session.get('login_status'): acount = request.session["now_account"] if request.is_ajax(): try: test_info = json.loads(request.body.decode('utf-8')) except ValueError: logging.error('配置信息解析异常:{test_info}'.format(test_info=test_info)) return HttpResponse('配置信息解析异常') if test_info.get('mode') == 'del': msg = del_test_data(test_info.pop('id')) elif test_info.get('mode') == 'copy': msg = copy_test_data(test_info.get('data').pop('index'), test_info.get('data').pop('name')) return HttpResponse(get_ajax_msg(msg, 'ok')) else: filter_query = set_filter_session(request) test_list = get_pager_info( TestCaseInfo, filter_query, '/api/config_list/', id) manage_info = { 'account': acount, 'test': test_list[1], 'page_list': test_list[0], 'info': filter_query } return render_to_response('config_list.html', manage_info) else: return HttpResponseRedirect("/api/login/")
def periodictask(request, id): if request.session.get('login_status'): if request.is_ajax(): try: kwargs = json.loads(request.body.decode('utf-8')) except ValueError: logging.error('定时任务信息解析异常: {kwargs}'.format(kwargs=kwargs)) return HttpResponse('定时任务信息解析异常,请重试') mode = kwargs.pop('mode') id = kwargs.pop('id') msg = delete_task(id) if mode == 'del' else change_task_status( id, mode) return HttpResponse(get_ajax_msg(msg, 'ok')) else: filter_query = set_filter_session(request) task_list = get_pager_info(PeriodicTask, filter_query, '/api/periodictask/', id) manage_info = { 'account': request.session["now_account"], 'task': task_list[1], 'page_list': task_list[0], 'info': filter_query } return render_to_response('periodictask_list.html', manage_info) else: return HttpResponseRedirect("/api/login/")
def report_list(request, id): """ 报告列表 :param request: :param id: str or int:当前页 :return: """ if request.session.get('login_status'): if request.is_ajax(): try: report_info = json.loads(request.body.decode('utf-8')) except ValueError: logging.error( '报告信息解析异常:{report_info}'.format(report_info=report_info)) return HttpResponse('报告信息解析异常') if report_info.get('mode') == 'del': msg = del_report_data(report_info.pop('id')) return HttpResponse(get_ajax_msg(msg, 'ok')) else: filter_query = set_filter_session(request) report_list = get_pager_info(TestReports, filter_query, '/api/report_list/', id) manage_info = { 'account': request.session["now_account"], 'report': report_list[1], 'page_list': report_list[0], 'info': filter_query } return render_to_response('report_list.html', manage_info) else: return HttpResponseRedirect("/api/login/")
def module_list(request, id): """ 模块列表 :param request: :param id: str or int:当前页 :return: """ account = request.session["now_account"] if request.is_ajax(): module_info = json.loads(request.body.decode('utf-8')) if 'mode' in module_info.keys(): # del module msg = del_module_data(module_info.pop('id')) else: msg = module_info_logic(type=False, **module_info) return HttpResponse(get_ajax_msg(msg, 'ok')) else: filter_query = set_filter_session(request) module_list = get_pager_info( ModuleInfo, filter_query, '/api/module_list/', id) manage_info = { 'account': account, 'module': module_list[1], 'page_list': module_list[0], 'info': filter_query, 'sum': module_list[2], 'env': EnvInfo.objects.all().order_by('-create_time'), 'project': ProjectInfo.objects.all().order_by('-update_time') } return render_to_response('module_list.html', manage_info)
def report_list(request, id): """ 报告列表 :param request: :param id: str or int:当前页 :return: """ if request.is_ajax(): report_info = json.loads(request.body.decode('utf-8')) if report_info.get('mode') == 'del': msg = del_report_data(report_info.pop('id')) return HttpResponse(get_ajax_msg(msg, 'ok')) else: filter_query = set_filter_session(request) report_list = get_pager_info( TestReports, filter_query, '/api/report_list/', id) manage_info = { 'account': request.session["now_account"], 'report': report_list[1], 'page_list': report_list[0], 'info': filter_query } return render_to_response('report_list.html', manage_info)
def config_list(request, id): """ 配置列表 :param request: :param id: str or int:当前页 :return: """ account = request.session["now_account"] if request.is_ajax(): test_info = json.loads(request.body.decode('utf-8')) if test_info.get('mode') == 'del': msg = del_test_data(test_info.pop('id')) elif test_info.get('mode') == 'copy': msg = copy_test_data(test_info.get('data').pop('index'), test_info.get('data').pop('name')) return HttpResponse(get_ajax_msg(msg, 'ok')) else: filter_query = set_filter_session(request) test_list = get_pager_info( TestCaseInfo, filter_query, '/api/config_list/', id) manage_info = { 'account': account, 'test': test_list[1], 'page_list': test_list[0], 'info': filter_query, 'project': ProjectInfo.objects.all().order_by('-update_time') } return render_to_response('config_list.html', manage_info)
def module_list(request, id): if request.session.get('login_status'): if request.is_ajax(): try: module_info = json.loads(request.body.decode('utf-8')) except ValueError: logging.error( '模块信息解析异常:{module_info}'.format(module_info=module_info)) return HttpResponse('模块信息解析异常') if 'mode' in module_info.keys(): # del module msg = del_module_data(module_info.pop('id')) else: msg = module_info_logic(type=False, **module_info) return HttpResponse(get_ajax_msg(msg, 'ok')) else: filter_query = set_filter_session(request) module_list = get_pager_info(ModuleInfo, filter_query, '/api/module_list/', id) manage_info = { 'account': request.session["now_account"], 'module': module_list[1], 'page_list': module_list[0], 'info': filter_query, 'sum': module_list[2], 'env': EnvInfo.objects.all().order_by('-create_time') } return render_to_response('module_list.html', manage_info) else: return HttpResponseRedirect("/api/login/")
def periodictask(request, id): """ 定时任务列表 :param request: :param id: str or int:当前页 :return: """ account = request.session["now_account"] if request.is_ajax(): kwargs = json.loads(request.body.decode('utf-8')) mode = kwargs.pop('mode') id = kwargs.pop('id') msg = delete_task(id) if mode == 'del' else change_task_status(id, mode) return HttpResponse(get_ajax_msg(msg, 'ok')) else: filter_query = set_filter_session(request) task_list = get_pager_info( PeriodicTask, filter_query, '/api/periodictask/', id) manage_info = { 'account': account, 'task': task_list[1], 'page_list': task_list[0], 'info': filter_query } return render_to_response('periodictask_list.html', manage_info)
def project_list(request, id): if request.session.get('login_status'): if request.is_ajax(): try: project_info = json.loads(request.body.decode('utf-8')) except ValueError: logging.debug('项目信息解析异常:{project_info}'.format( project_info=project_info)) return HttpResponse('项目信息解析异常') if 'mode' in project_info.keys(): msg = del_project_data(project_info.pop('id')) else: msg = project_info_logic(type=False, **project_info) return HttpResponse(get_ajax_msg(msg, 'ok')) else: filter_query = set_filter_session(request) pro_list = get_pager_info(ProjectInfo, filter_query, '/api/project_list/', id) manage_info = { 'account': request.session["now_account"], 'project': pro_list[1], 'page_list': pro_list[0], 'info': filter_query, 'sum': pro_list[2] } return render_to_response('project_list.html', manage_info) else: return HttpResponseRedirect("/api/login/")
def webhook_list(request, id): """ :param request: :param id: :return: """ if request.session.get('login_status'): account = request.session["now_account"] if request.is_ajax(): webhook_info = json.loads(request.body.decode('utf-8')) pro_id = webhook_info.get('webhook').get('pro_id') res = generate_webhook_token(pro_id) manage_info = {"token": ['ok', res.get('msg')]} return HttpResponse( get_ajax_msg( manage_info.get('token')[0], manage_info.get('token')[1])) else: filter_query = set_filter_session(request) test_list = get_pager_info(WebHooKInfo, filter_query, '/api/webhook_list/', id) manage_info = { 'account': account, 'test': test_list[1], 'page_list': test_list[0], 'info': filter_query, 'env': EnvInfo.objects.all().order_by('-create_time') } return render_to_response('webhook_list.html', manage_info) else: return HttpResponseRedirect("/api/login/")
def config_list(request, id): if request.session.get('login_status'): if request.is_ajax(): try: test_info = json.loads(request.body.decode('utf-8')) except ValueError: logging.error( '配置信息解析异常:{test_info}'.format(test_info=test_info)) return HttpResponse('配置信息解析异常') if 'mode' in test_info.keys(): msg = del_test_data(test_info.pop('id')) return HttpResponse(get_ajax_msg(msg, 'ok')) else: filter_query = set_filter_session(request) test_list = get_pager_info(TestCaseInfo, filter_query, '/api/config_list/', id) manage_info = { 'account': request.session["now_account"], 'test': test_list[1], 'page_list': test_list[0], 'info': filter_query } return render_to_response('config_list.html', manage_info) else: return HttpResponseRedirect("/api/login/")
def suite_list(request, id): account = request.session["now_account"] if request.is_ajax(): suite_info = json.loads(request.body.decode('utf-8')) if suite_info.get('mode') == 'del': msg = del_suite_data(suite_info.pop('id')) elif suite_info.get('mode') == 'copy': msg = copy_suite_data( suite_info.get('data').pop('index'), suite_info.get('data').pop('name')) return HttpResponse(get_ajax_msg(msg, 'ok')) else: filter_query = set_filter_session(request) pro_list = get_pager_info(TestSuite, filter_query, '/api/suite_list/', id) manage_info = { 'account': account, 'suite': pro_list[1], 'page_list': pro_list[0], 'info': filter_query, 'sum': pro_list[2], 'env': EnvInfo.objects.all().order_by('-create_time'), 'project': ProjectInfo.objects.all().order_by('-update_time') } return render_to_response('suite_list.html', manage_info)
def project_list(request, id): """ 项目列表 :param request: :param id: str or int:当前页 :return: """ if request.session.get('login_status'): account = request.session["now_account"] if request.is_ajax(): project_info = json.loads(request.body.decode('utf-8')) if 'mode' in project_info.keys(): msg = del_project_data(project_info.pop('id')) else: msg = project_info_logic(type=False, **project_info) return HttpResponse(get_ajax_msg(msg, 'ok')) else: filter_query = set_filter_session(request) pro_list = get_pager_info( ProjectInfo, filter_query, '/api/project_list/', id) manage_info = { 'account': account, 'project': pro_list[1], 'page_list': pro_list[0], 'info': filter_query, 'sum': pro_list[2], 'env': EnvInfo.objects.all().order_by('-create_time') } return render_to_response('project_list.html', manage_info) else: return HttpResponseRedirect("/api/login/")
def env_list(request, id): if request.session.get('login_status'): if request.method == 'GET': env_lists = get_pager_info(EnvInfo, None, '/api/env_list/', id) manage_info = { 'account': request.session["now_account"], 'env': env_lists[1], 'page_list': env_lists[0], } return render_to_response('env_list.html', manage_info) else: return HttpResponseRedirect('/api/login/')
def report_list(request, id): if request.session.get('login_status'): filter_query = set_filter_session(request) report_list = get_pager_info(TestReports, filter_query, '/api/report_list/', id) manage_info = { 'account': request.session["now_account"], 'report': report_list[1], 'page_list': report_list[0], 'info': filter_query } return render_to_response('report_list.html', manage_info) else: return HttpResponseRedirect("/api/login/")
def service_config_list(request, id): filter_query = { 'service_name': request.POST.get('service_name', ''), 'service_version': request.POST.get('service_version', '') } service_list = get_pager_info(ServiceConfig, filter_query, '/api/service_config_list/', id) manage_info = { 'account': request.session["now_account"], 'service': service_list[1], 'page_list': service_list[0], 'info': filter_query } return render_to_response('service_config_list.html', manage_info)
def debugtalk_list(request, id): """ debugtalk.py列表 :param request: :param id: str or int:当前页 :return: """ account = request.session["now_account"] debugtalk = get_pager_info(DebugTalk, None, '/api/debugtalk_list/', id) manage_info = { 'account': account, 'debugtalk': debugtalk[1], 'page_list': debugtalk[0], } return render_to_response('debugtalk_list.html', manage_info)
def test_list(request, id): """ 用例列表 :param request: :param id: str or int:当前页 :return: """ account = request.session["now_account"] user_type = request.session['user_type'] if request.is_ajax(): test_info = json.loads(request.body.decode('utf-8')) if test_info.get('mode') == 'del': msg = del_test_data(test_info.pop('id'), account, user_type) elif test_info.get('mode') == 'copy': msg = copy_test_data(test_info.get('data').pop('index'), test_info.get('data').pop('name'), account) return HttpResponse(get_ajax_msg(msg, 'ok')) else: filter_query = set_filter_session(request) if 'case_id' in request.POST.keys(): filter_query['case_id'] = request.POST.get('case_id') if 'service_name' in request.POST.keys(): filter_query['service_name'] = request.POST.get('service_name') test_list = get_pager_info( TestCaseInfo, filter_query, '/api/test_list/', id) manage_info = { 'account': account, 'test': test_list[1], 'page_list': test_list[0], 'info': filter_query, 'env': EnvInfo.objects.all().order_by('-create_time'), 'projects': ProjectInfo.objects.all().order_by('-update_time') } # 添加模块下拉 modules = [] if filter_query.get('belong_project') != 'All': modules = ModuleInfo.objects.filter( belong_project__project_name=filter_query.get('belong_project')).order_by('-create_time') manage_info['modules'] = modules return render_to_response('test_list.html', manage_info)
def env_list(request, id): """ 环境列表 :param request: :param id: str or int:当前页 :return: """ account = request.session["now_account"] if request.method == 'GET': env_lists = get_pager_info(EnvInfo, None, '/api/env_list/', id) manage_info = { 'account': account, 'env': env_lists[1], 'page_list': env_lists[0], } return render_to_response('env_list.html', manage_info)
def debugtalk_list(request, id): """ debugtalk.py列表 :param request: :param id: str or int:当前页 :return: """ if request.session.get('login_status'): account = request.session["now_account"] debugtalk = get_pager_info(DebugTalk, None, '/api/debugtalk_list/', id) manage_info = { 'account': account, 'debugtalk': debugtalk[1], 'page_list': debugtalk[0], } return render_to_response('debugtalk_list.html', manage_info) else: return HttpResponseRedirect("/api/login/")
def config_list(request, id): if request.session.get('login_status'): if request.is_ajax(): test_info = json.loads(request.body.decode('utf-8')) if 'status' in test_info.keys(): msg = change_status(TestCaseInfo, **test_info) return HttpResponse(get_ajax_msg(msg, '配置已更改!')) else: filter_query = set_filter_session(request) test_list = get_pager_info(TestCaseInfo, filter_query, '/api/config_list/', id) manage_info = { 'account': request.session["now_account"], 'test': test_list[1], 'page_list': test_list[0], 'info': filter_query } return render_to_response('config_list.html', manage_info) else: return HttpResponseRedirect("/api/login/")
def file_upload(request, id): ret = {} info = {} account = request.session["now_account"] if request.is_ajax(): info = json.loads(request.body.decode('utf-8')) if info.get('mode') == 'del': msg = del_file_data(info.pop('id')) return HttpResponse(get_ajax_msg(msg, 'ok')) else: filter_query = set_filter_session(request) pro_list = get_pager_info(FileInfo, filter_query, '/api/file_upload/', id) manage_info = { 'account': account, 'file_list': pro_list[1], 'page_list': pro_list[0], 'info': filter_query, 'project': ProjectInfo.objects.all().order_by('-update_time') } return render_to_response('uploadedfile_list.html', manage_info)
def test_list(request, id): """ 用例列表 :param request: :param id: str or int:当前页 :return: """ account = request.session["now_account"] if request.is_ajax(): test_info = json.loads(request.body.decode('utf-8')) if test_info.get('mode') == 'del': msg = del_test_data(test_info.pop('id')) elif test_info.get('mode') == 'copy': index = test_info.get('data').pop('index') name = test_info.get('data').pop('name') project = test_info.get('data').pop('project') module = test_info.get('data').pop('belong_module') author = account msg = copy_test_data(index, name, project, module, author) return HttpResponse(get_ajax_msg(msg, 'ok')) else: filter_query = set_filter_session(request) test_list = get_pager_info(TestCaseInfo, filter_query, '/api/test_list/', id) manage_info = { 'account': account, 'test': test_list[1], 'page_list': test_list[0], 'info': filter_query, 'env': EnvInfo.objects.all().order_by('env_name'), 'env_session': request.session.get('base_url', ''), 'cfg': TestCaseInfo.objects.filter(type=2).order_by('name'), 'cfg_session': int(request.session.get('cfg_id', -1)), 'project': ProjectInfo.objects.all().order_by('-update_time'), 'ca_list': CaInfo.objects.all().order_by('user_name') } return render_to_response('test_list.html', manage_info)
def project_list(request, id): """ 项目列表 :param request: :param id: str or int:当前页 :return: """ account = request.session["now_account"] user_type = request.session['user_type'] if request.is_ajax(): project_info = json.loads(request.body.decode('utf-8')) project_info['account'] = account project_info['user_type'] = user_type if 'mode' in project_info.keys(): msg = del_project_data(project_info.pop('id'), account, user_type) else: msg = project_info_logic(type=False, **project_info) return HttpResponse(get_ajax_msg(msg, 'ok')) else: filter_query = set_filter_session(request) project_name = request.POST.get('project_name') if project_name is None: project_name = '' filter_query['project_name'] = project_name pro_list = get_pager_info( ProjectInfo, filter_query, '/api/project_list/', id) manage_info = { 'account': account, 'project': pro_list[1], 'projects': ProjectInfo.objects.all().order_by('-update_time'), 'page_list': pro_list[0], 'info': filter_query, 'sum': pro_list[2], 'env': EnvInfo.objects.all().order_by('-create_time'), 'project_all': ProjectInfo.objects.all().order_by('-update_time'), 'configs': TestCaseInfo.objects.filter(type=2).order_by('-create_time') } return render_to_response('project_list.html', manage_info)
def test_list(request, id): """ 用例列表 :param request: :param id: str or int:当前页 :return: """ if request.session.get('login_status'): account = request.session["now_account"] if request.is_ajax(): test_info = json.loads(request.body.decode('utf-8')) if test_info.get('mode') == 'del': msg = del_test_data(test_info.pop('id')) elif test_info.get('mode') == 'copy': msg = copy_test_data( test_info.get('data').pop('index'), test_info.get('data').pop('name')) return HttpResponse(get_ajax_msg(msg, 'ok')) else: filter_query = set_filter_session(request) if request.POST.get('level') is not None: filter_query['level'] = request.POST.get('level') test_list = get_pager_info(TestCaseInfo, filter_query, '/api/test_list/', id) manage_info = { 'account': account, 'test': test_list[1], 'page_list': test_list[0], 'info': filter_query, 'env': EnvInfo.objects.all().order_by('-create_time') } return render_to_response('test_list.html', manage_info) else: return HttpResponseRedirect("/api/login/")