72 lines
3.4 KiB
Plaintext
72 lines
3.4 KiB
Plaintext
*** Settings ***
|
||
Library Collections
|
||
Library RequestsLibrary
|
||
Resource ../../../03-Variable/BifangApiVariable.txt
|
||
Resource ../../../02-Keyword/tsg_bfapi/policy_file_interface/FunctionalKeywords.robot
|
||
Resource ProcessObjectBody.robot
|
||
Library Collections
|
||
Resource ../Common.robot
|
||
*** Variables ***
|
||
${objectUrl} /policy/object
|
||
*** Keywords ***
|
||
AddObjects
|
||
[Documentation]
|
||
... 新增策略对象
|
||
... objectList,策略对象,可为list类型与dict类型
|
||
... returnData,是否返回数据,固定为1
|
||
[Arguments] ${returnData} ${objectList}
|
||
${returnData}= Run Keyword If '${returnData}' == '${EMPTY}' Set Variable 1
|
||
... ELSE Set Variable ${returnData}
|
||
|
||
#必选参数判定
|
||
Should Not Be Empty ${objectList}
|
||
${dictType} = Evaluate type(${objectList})
|
||
${body} Run Keyword If "${dictType}" == "<class 'list'>" ObjectListOperation ${returnData} ${objectList} add
|
||
... ELSE IF "${dictType}" == "<class 'dict'>" ObjectOperation ${returnData} ${objectList} add
|
||
... ELSE Set Variable ${EMPTY}
|
||
|
||
${response} BasePostRequestForV2 ${objectUrl} ${body} ${version}
|
||
${objectIds} Run Keyword If "${returnData}" == "1" Get-ObjectIds ${response}
|
||
... ELSE Create List
|
||
${rescode} Set Variable ${response['code']}
|
||
Should Be Equal As Strings ${rescode} 200
|
||
[Return] ${rescode} ${objectIds}
|
||
UpdateObjects
|
||
[Documentation]
|
||
... 更新策略对象
|
||
... objectList,策略对象,可为list类型与dict类型
|
||
... returnData,是否返回数据,固定为1
|
||
... opAction,可为update,enable,disable
|
||
[Arguments] ${returnData} ${objectList} ${opAction}
|
||
${returnData}= Run Keyword If '${returnData}' == '${EMPTY}' Set Variable 1
|
||
... ELSE Set Variable ${returnData}
|
||
|
||
#必选参数判定
|
||
Should Not Be Empty ${objectList}
|
||
${dictType} = Evaluate type(${objectList})
|
||
${body} Run Keyword If "${dictType}" == "<class 'list'>" ObjectListOperation ${returnData} ${objectList} ${opAction}
|
||
... ELSE IF "${dictType}" == "<class 'dict'>" ObjectOperation ${returnData} ${objectList} ${opAction}
|
||
... ELSE Set Variable ${EMPTY}
|
||
|
||
${response} BaseEditRequestForV2 ${objectUrl} ${body} ${version}
|
||
${rescode} Set Variable ${response['code']}
|
||
Should Be Equal As Strings ${rescode} 200
|
||
[Return] ${rescode}
|
||
GetObjectItems
|
||
[Documentation]
|
||
... 获取策略对象中的item,策略对象单元
|
||
... 当updateItemList中有需要传入数据时
|
||
... 调用此关键字
|
||
[Arguments] ${params}
|
||
#必选参数判定
|
||
Should Not Be Empty ${params}
|
||
${paramsStr} Dictionary-To-QueryParams ${params}
|
||
${response} BaseFormRequest /policy/items ${paramsStr} ${version}
|
||
${rescode} Set Variable ${response['code']}
|
||
Should Be Equal As Strings ${rescode} 200
|
||
${data} Set Variable ${response['data']}
|
||
${itemIds} Create List
|
||
FOR ${item} IN @{data['list']}
|
||
Append To List ${itemIds} ${item['itemId']}
|
||
END
|
||
[Return] ${rescode} ${itemIds} ${data['list']} |