aboutsummaryrefslogtreecommitdiffstats
path: root/cmso-robot/robot/resources/optimizer_common.robot
diff options
context:
space:
mode:
authorJerry Flood <jflood@att.com>2019-03-28 06:46:34 -0400
committerJerry Flood <jflood@att.com>2019-03-28 06:47:04 -0400
commit8684696712cfe4120092b291cb124accc5712f62 (patch)
tree5333b80f6274917093e588109f148a60e1f1ffb6 /cmso-robot/robot/resources/optimizer_common.robot
parent0b477ebe952a088c278482f2d30b843559266a37 (diff)
Testsuie for Optimizer mS
Issue-ID: OPTFRA-430 Change-Id: I4c9f42517019a5b30dd3ecd744bf8f15c939da58 Signed-off-by: Jerry Flood <jflood@att.com>
Diffstat (limited to 'cmso-robot/robot/resources/optimizer_common.robot')
-rw-r--r--cmso-robot/robot/resources/optimizer_common.robot59
1 files changed, 59 insertions, 0 deletions
diff --git a/cmso-robot/robot/resources/optimizer_common.robot b/cmso-robot/robot/resources/optimizer_common.robot
new file mode 100644
index 0000000..81c0c75
--- /dev/null
+++ b/cmso-robot/robot/resources/optimizer_common.robot
@@ -0,0 +1,59 @@
+*** Settings ***
+Documentation The private interface for interacting with Openstack. It handles low level stuff like managing the authtoken and Openstack required fields
+
+Library Collections
+Library RequestsLibrary
+Library UUID
+Library HTTPUtils
+Library String
+Resource misc.robot
+*** Variables ***
+*** Variables ***
+${OPTIMIZER_PATH} /optimizer/v1
+${valid_status_codes} 200 202 400 404 204 409
+#**************** Test Case Variables ******************
+
+*** Keywords ***
+
+
+Post Optimizer
+ [Documentation] Runs a scheduler POST request
+ [Arguments] ${alias} ${resource} ${data}={}
+ ${data_path}= Catenate ${OPTIMIZER_PATH}/${resource}
+ ${url}= Catenate ${GLOBAL_OPTIMIZER_URL}
+ ${uuid}= Generate UUID
+ ${proxies}= Create Dictionary no=pass
+ ${session}= Create Session ${alias} ${url}
+ ${auth_string}= B64 Encode ${GLOBAL_OPTIMIZER_USER}:${GLOBAL_OPTIMIZER_PASSWORD}
+ ${headers}= Create Dictionary Accept=application/json Content-Type=application/json X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID} Authorization=Basic ${auth_string}
+ ${resp}= Post Request ${alias} ${data_path} headers=${headers} data=${data}
+ Log Received response from scheduler ${resp.text}
+ [Return] ${resp}
+
+Delete Optimizer
+ [Documentation] Runs a scheduler DELETE request (this may need to be changed for 1802 US change Delete schedule to Cancel Schedule)
+ [Arguments] ${alias} ${resource}
+ ${data_path}= Catenate ${OPTIMIZER_PATH}/${resource}
+ ${url}= Catenate ${GLOBAL_OPTIMIZER_URL}
+ ${uuid}= Generate UUID
+ ${proxies}= Create Dictionary no=pass
+ ${session}= Create Session ${alias} ${url}
+ ${auth_string}= B64 Encode ${GLOBAL_OPTIMIZER_USER}:${GLOBAL_OPTIMIZER_PASSWORD}
+ ${headers}= Create Dictionary Accept=application/json Content-Type=application/json X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID} Authorization=Basic ${auth_string}
+ ${resp}= Delete Request ${alias} ${data_path} headers=${headers}
+ Log Received response from scheduler ${resp.text}
+ [Return] ${resp}
+
+Get Optimizer
+ [Documentation] Runs a scheduler GET request
+ [Arguments] ${alias} ${resource}
+ ${data_path}= Catenate ${OPTIMIZER_PATH}/${resource}
+ ${url}= Catenate ${GLOBAL_OPTIMIZER_URL}
+ ${uuid}= Generate UUID
+ ${proxies}= Create Dictionary no=pass
+ ${session}= Create Session ${alias} ${url}
+ ${auth_string}= B64 Encode ${GLOBAL_OPTIMIZER_USER}:${GLOBAL_OPTIMIZER_PASSWORD}
+ ${headers}= Create Dictionary Accept=application/json Content-Type=application/json X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid} X-FromAppId=${GLOBAL_APPLICATION_ID} Authorization=Basic ${auth_string}
+ ${resp}= Get Request ${alias} ${data_path} headers=${headers}
+ Log Received response from scheduler ${resp.json()}
+ [Return] ${resp}