289 lines
14 KiB
Plaintext
289 lines
14 KiB
Plaintext
*** Settings ***
|
||
Resource ../../03-Variable/BifangApiVariable.txt
|
||
Resource ../tsg_common/ManagePolicyBody.robot
|
||
Resource ../tsg_common/ManageObjectBody.robot
|
||
Resource ../../02-Keyword/tsg_bfapi/policy_file_interface/FunctionalKeywords.robot
|
||
Resource ../../02-Keyword/tsg_bfapi/policy_object/Object.robot
|
||
Library REST http://${host}:${port}
|
||
Library Collections
|
||
Library RequestsLibrary
|
||
Resource Common.robot
|
||
|
||
*** Keywords ***
|
||
AddLocalIPObject
|
||
|
||
#创建对象IP
|
||
log to_AddLocalIPObject
|
||
# ${localIP} set variable {"opAction":"add","returnData":1,"objectList":{"objectType":"ip","objectSubType":"endpoint","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"autotestLocalIPObject_${testClentIP}","objectDesc":"LocalIPObject_${testClentIP}自动化测试机IP","subObjectIds":[],"addItemList":[{"addrType":4,"protocol":0,"direction":0,"isSession":"endpoint","clientIp1":"${testClentIP}","clientIp2":"${testClentIP}","clientIpFormat":"range","clientPortFormat":"range","clientPort1":0,"clientPort2":0,"serverIpFormat":"range","serverIp1":"","serverIp2":"","serverPortFormat":"range","serverPort1":0,"serverPort2":0}],"updateItemList":[],"deleteItemIds":[]}}
|
||
# ${rescodeip} ${objidip} AddObject ${localIP}
|
||
# ${localSubIP} set variable {"opAction":"add","returnData":1,"objectList":{"objectType":"subscriberid","objectSubType":"","isValid":1,"isInitialize":0,"isExclusion":0,"objectName":"test57","objectDesc":"${testSubscriberID}","subObjectIds":[],"addItemList":[{"keywordArray":["${testSubscriberID}"],"itemId":"","isHexbin":0}],"updateItemList":[],"deleteItemIds":[]}}
|
||
# ${rescodesub} ${subiid} AddObject ${localSubIP}
|
||
# 创建对象-IP
|
||
# Create Dictionary
|
||
|
||
# ${objectDict} Create Dictionary
|
||
# ... objectType=ip
|
||
# ... objectSubType=${Default_ObjectSubType}
|
||
# ... isInitialize=${Default_IsInitialize}
|
||
# ... isExclusion=${Default_IsExclusion}
|
||
# ... objectName=autotest_localIP_${testClentIP}
|
||
# ... objectDesc=${Default_ObjectDesc}
|
||
# ... subObjectIds=${Default_SubObjectIds}
|
||
# ... isValid=${1}
|
||
# ... addItemList=range|${testClentIP}|${testClentIP}|0/0&${Default_AddItem_ServerIpFormat}|${Default_AddItem_ServerIp1}|${Default_AddItem_ServerIp2}|${Default_AddItem_ServerPort}|${Default_AddItem_IsInitialize}|${Default_AddItem_ItemName}|${Default_AddItem_ItemDesc}
|
||
# ${rescode} ${objectId} AddObject2 ${1} ${objectDict}
|
||
# #log ${rescodeip}
|
||
# log LocalIP:${objectId}
|
||
|
||
|
||
Comment 创建IP
|
||
#object为IP→endpoint时的addItemList单个对象
|
||
${addItemList1} Create Dictionary isSession=endpoint ip=${testClentIP}-${testClentIP} port=0-0 direction=0 protocol=0 isInitialize=0
|
||
#可以添加多个
|
||
${addItemLists} Create list ${addItemList1}
|
||
#objectList对象
|
||
${objectDict} Create Dictionary objectType=ip isValid=${1} addItemList=${addItemLists}
|
||
${rescode} ${objectId1} AddObjects ${1} ${objectDict}
|
||
SET GLOBAL VARIABLE ${testClentID} ${objectId1}
|
||
log to_AddLocalSubidObject
|
||
${objectDict} Create Dictionary
|
||
... objectType=subscriberid
|
||
... objectSubType=${Default_ObjectSubType}
|
||
... isInitialize=${Default_IsInitialize}
|
||
... isExclusion=${Default_IsExclusion}
|
||
... objectName=autotest_localSubId_${testSubscriberID}
|
||
... objectDesc=${Default_ObjectDesc}
|
||
... subObjectIds=${Default_SubObjectIds}
|
||
... isValid=${1}
|
||
... addItemList=${testSubscriberID}|${Default_AddItem_IsHexbin}|${Default_AddItem_IsInitialize}|${Default_AddItem_ItemName}|${Default_AddItem_ItemDesc}
|
||
${rescode} ${subiid} AddObject2 ${1} ${objectDict}
|
||
#log ${subiid}
|
||
log LocalSubIP:${subiid}
|
||
SET GLOBAL VARIABLE ${testClentSubID} ${subiid}
|
||
|
||
DelLocalIPObject
|
||
log to_DelLocalIPObject
|
||
${response} BaseDeleteRequest /${version}/policy/object {"objectIds":[${testClentID}]}
|
||
#${response_code} Get From Dictionary ${response} code
|
||
#Should Be Equal As Strings ${response} {'code': 200, 'msg': 'Success', 'success': True}
|
||
SET GLOBAL VARIABLE ${testClentID} ${EMPTY}
|
||
${response} BaseDeleteRequest /${version}/policy/object {"objectIds":[${testClentSubID}]}
|
||
SET GLOBAL VARIABLE ${testClentSubID} ${EMPTY}
|
||
|
||
AddObject
|
||
[Arguments] ${body}
|
||
#addIPobject#################################################################################
|
||
${response} BasePostRequest /${version}/policy/object body=${body}
|
||
log 11111111111111${response}
|
||
${objectId} Set Variable ${response['data']['objectList'][0]['objectId']}
|
||
${rescodeReturn} Set Variable ${response['code']}
|
||
[Return] ${rescodeReturn} ${objectId}
|
||
|
||
AddObject2
|
||
[Arguments] ${returnData} ${objectList}
|
||
${body} ObjectParamsOpertion ${returnData} ${objectList} add
|
||
|
||
${response} BasePostRequest /${version}/policy/object body=${body}
|
||
${objectId} Set Variable ${response['data']['objectList'][0]['objectId']}
|
||
${rescodeReturn} Set Variable ${response['code']}
|
||
[Return] ${rescodeReturn} ${objectId}
|
||
|
||
AddWanVpn
|
||
[Arguments] ${wan_vpnList}
|
||
${body} WanVpn ${wan_vpnList}
|
||
${response} BasePostRequest /${version}/policy/profile/wannat/vpn/account ${body}
|
||
log ${response}
|
||
${rescodeReturn} Set Variable ${response['code']}
|
||
[Return] ${rescodeReturn}
|
||
|
||
DeleteWanVpn
|
||
[Arguments] ${vpnlist}
|
||
#删除Vpn
|
||
${body} Create Dictionary ids=${vpnlist}
|
||
log 删除vpn
|
||
${response} BaseDeleteRequest /${version}/policy/profile/wannat/vpn/account ${body}
|
||
${response_code} Get From Dictionary ${response} code
|
||
Should Be Equal As Strings ${response_code} 200
|
||
${response} Convert to String ${response}
|
||
log ${response}
|
||
|
||
|
||
EditObject
|
||
[Arguments] ${objectList} ${opAction}
|
||
${body} ObjectParamsOpertion ${0} ${objectList} ${opAction}
|
||
${response} BaseEditRequest /${version}/policy/object ${body}
|
||
${rescodeReturn} Set Variable ${response['code']}
|
||
[Return] ${rescodeReturn}
|
||
|
||
DeleteObjectbak
|
||
[Arguments] ${objectids}
|
||
${body} String {"objectIds":[${objectids}]}
|
||
DELETE /policy/object body=${body} headers=${headers}
|
||
Object response body
|
||
log DeleteObject
|
||
log dxytestOUtputstart
|
||
Output response body
|
||
log dxytestOUtputstart
|
||
${rescode} Integer $.code
|
||
${rescodeReturn} Get From List ${rescode} 0
|
||
[Return] ${rescodeReturn}
|
||
|
||
AddPolicy
|
||
[Arguments] ${body}
|
||
# ${response} BasePostRequest /${version}/policy/compile body=${body}
|
||
${response} BasePostRequest /${version2}/policy/compile body=${body}
|
||
#log ${response}
|
||
${policyId} Set Variable ${response['data']['policyList'][0]['policyId']}
|
||
${rescode} Set Variable ${response['code']}
|
||
[Return] ${rescode} ${policyId}
|
||
QueryPolicy
|
||
[Arguments] ${body}
|
||
${response} BaseGetRequest /${version}/policy/compile body=${body}
|
||
#log ${response}
|
||
${rescode} Set Variable ${response['code']}
|
||
[Return] ${rescode} ${response}
|
||
AddPolicy2
|
||
[Arguments] ${returnData} ${policyList}
|
||
${body} PolicyParamsOpertion ${returnData} ${policyList} add
|
||
|
||
${response} BasePostRequest /${version}/policy/compile body=${body}
|
||
${policyId} Set Variable ${response['data']['policyList'][0]['policyId']}
|
||
${rescode} Set Variable ${response['code']}
|
||
[Return] ${rescode} ${policyId}
|
||
AddPolicy2006
|
||
[Arguments] ${returnData} ${policyList}
|
||
${objectDict} Jsoneditmanu ${policyall} ${policyList}
|
||
#${body} Convert To String ${objectDict}
|
||
${body} json.Dumps ${objectDict}
|
||
#${body} PolicyParamsOpertion ${returnData} ${policyList} add
|
||
|
||
${response} BasePostRequest /${version}/policy/compile body=${body}
|
||
${policyId} Set Variable ${response['data']['policyList'][0]['policyId']}
|
||
${rescode} Set Variable ${response['code']}
|
||
[Return] ${rescode} ${policyId}
|
||
|
||
EditPolicy
|
||
[Arguments] ${policyList} ${opAction}
|
||
|
||
#add:表示新增
|
||
#update:表示修改策略内容,包括策略名称,策略动作,策略动作参数,引用的策略文件,引用的策略对象等有修改时
|
||
#disable:表示停用,只修改isValid属性为0
|
||
#enable:表示启用,只修改isValid属性为1
|
||
${body} PolicyParamsOpertion ${0} ${policyList} ${opAction}
|
||
${response} BaseEditRequest /${version}/policy/compile ${body}
|
||
${rescode} Set Variable ${response['code']}
|
||
[Return] ${rescode} ${response}
|
||
|
||
DeletePolicybak
|
||
[Arguments] ${policyids}
|
||
${body} String {"policyType":"tsg_security","policyIds":[${policyids}]}
|
||
DELETE /${version}/policy/compile body=${body} headers=${headers}
|
||
Object response body
|
||
log DeletePolicy
|
||
Output response body
|
||
${rescode} Integer $.code
|
||
${rescodeReturn} Get From List ${rescode} 0
|
||
[Return] ${rescodeReturn}
|
||
|
||
DeletePolicy
|
||
[Arguments] ${body}
|
||
#删除策略
|
||
log toDeletePolicy_DeletePolicyDeletePolicy
|
||
${response} BaseDeleteRequest /${version}/policy/compile ${body}
|
||
#{"policyType":"tsg_security","policyIds":[${policyids}]}
|
||
${response_code} Get From Dictionary ${response} code
|
||
Should Be Equal As Strings ${response_code} 200
|
||
${response} Convert to String ${response}
|
||
log ${response}
|
||
#Should Be Equal As Strings ${response} {'code': 200, 'msg': 'Success', 'success': True}
|
||
|
||
DeleteObject
|
||
[Arguments] ${objectids}
|
||
#删除对象
|
||
log todeleteobj
|
||
${response} BaseDeleteRequest /${version}/policy/object {"objectIds":[${objectids}]}
|
||
${response_code} Get From Dictionary ${response} code
|
||
#log aaaaaaaaaa:${response_code}
|
||
Should Be Equal As Strings ${response_code} 200
|
||
#Integer ${response_code} 200
|
||
${response} Convert to String ${response}
|
||
log ${response}
|
||
#Should Be Equal As Strings ${response} {'code': 200, 'msg': 'Success', 'success': True}
|
||
|
||
DeleteProfile
|
||
[Arguments] ${typeUrl} ${profileIds}
|
||
#删除对象
|
||
log DeleteProfile
|
||
${response} BaseDeleteRequest /${version}/policy/profile/${typeUrl} {"profileIds":[${profileIds}]}
|
||
${response_code} Get From Dictionary ${response} code
|
||
#log aaaaaaaaaa:${response_code}
|
||
Should Be Equal As Strings ${response_code} 200
|
||
#Integer ${response_code} 200
|
||
${response} Convert to String ${response}
|
||
log ${response}
|
||
#Should Be Equal As Strings ${response} {'code': 200, 'msg': 'Success', 'success': True}
|
||
|
||
# DeleteProfile_defeated
|
||
# [Arguments] ${typeUrl} ${profileIds}
|
||
# #删除对象
|
||
# log DeleteProfile
|
||
# ${response} BaseDeleteRequest /${version}/policy/profile/${typeUrl} {"profileIds":[${profileIds}]}
|
||
# ${response_code} Get From Dictionary ${response} code
|
||
# #log aaaaaaaaaa:${response_code}
|
||
# Should Be Equal As Strings ${response_code} 40090030
|
||
# #Integer ${response_code} 200
|
||
# ${response} Convert to String ${response}
|
||
# log ${response}
|
||
# #Should Be Equal As Strings ${response} {'code': 200, 'msg': 'Success', 'success': True}
|
||
|
||
|
||
|
||
DeleteProfiles
|
||
[Arguments] ${profiles}
|
||
FOR ${profile} IN @{profiles}
|
||
Run Keyword If "${profile}"!="" and ${profile}!="${EMPTY}" DeleteProfile ${profile}[typeUrl] ${profile}[profileIds]
|
||
END
|
||
DeletePolicyAndObject
|
||
[Arguments] ${policyids} ${objectids} ${group}
|
||
#删除和对象
|
||
#删除策略
|
||
log toDeletePolicy_DeletePolicyAndObject
|
||
${listlenth}= Get Length ${policyids}
|
||
FOR ${var} IN RANGE ${listlenth}
|
||
#log dxytest111111
|
||
log ${var}
|
||
DeletePolicy ${policyids}[${var}]
|
||
#Should Contain ${commandreturn} ${ca}
|
||
END
|
||
#删除对象
|
||
log todeleteobj_DeletePolicyAndObject
|
||
Run Keyword If "${group}"=="${EMPTY}" log no obj to del
|
||
... ELSE DeleteObject ${group}
|
||
Run Keyword If "${objectids}"=="${EMPTY}" log no obj to del
|
||
... ELSE DeleteObject ${objectids}
|
||
|
||
DeletePolicyAndObjectAndProfile
|
||
[Arguments] ${policyids} ${objectids} ${profiles}
|
||
DeletePolicyAndObject ${policyids} ${objectids}
|
||
DeleteProfiles ${profiles}
|
||
DeleteAfterCase
|
||
[Arguments] ${policyids} ${objectids}
|
||
Run Keyword If '${testPart}'=='all' or '${testPart}'=='3' DeletePolicyAndObject ${policyids} ${objectids}
|
||
DeletePolicyAndObject1
|
||
[Arguments] ${policyids} ${objectids} ${url} ${profiledId}
|
||
#删除策略
|
||
log toDeletePolicy_DeletePolicyAndObject
|
||
${listlenth}= Get Length ${policyids}
|
||
FOR ${var} IN RANGE ${listlenth}
|
||
log ${var}
|
||
DeletePolicy ${policyids}[${var}]
|
||
END
|
||
#删除对象
|
||
log todeleteobj_DeletePolicyAndObject
|
||
Run Keyword If "${objectids}"=="${EMPTY}" log no obj to del
|
||
... ELSE DeleteObject ${objectids}
|
||
#删除文件
|
||
log todeleteobj_DeletePolicyAndObject
|
||
Run Keyword If "${profiledId}"=="${EMPTY}" log no file to del
|
||
... ELSE DeletePolicyFile1 ${url} ${profiledId}
|