Initial checkin of EopenECOMP testsuite

Change-Id: I64a2b6d8cf66169829866b73b3d26a4ff59b0a42
Signed-off-by: DR695H <dr695h@att.com>
diff --git a/robot/resources/policy_interface.robot b/robot/resources/policy_interface.robot
new file mode 100644
index 0000000..3bd51f5
--- /dev/null
+++ b/robot/resources/policy_interface.robot
@@ -0,0 +1,58 @@
+*** Settings ***
+Documentation	  The main interface for interacting with Policy. It handles low level stuff like managing the http request library and Policy required fields
+Library	          RequestsClientCert
+Library 	      RequestsLibrary
+Library           String
+Library           JSONUtils
+Library           Collections      
+Resource          global_properties.robot
+
+*** Variables ***
+${POLICY_HEALTH_CHECK_PATH}        /healthcheck
+
+*** Keywords ***
+
+Run Policy Health Check
+     [Documentation]    Runs Policy Health check
+     ${auth}=    Create List    ${GLOBAL_POLICY_USERNAME}    ${GLOBAL_POLICY_PASSWORD}    
+     Log    Creating session ${GLOBAL_POLICY_SERVER_URL}
+     ${session}=    Create Session 	policy 	${GLOBAL_POLICY_HEALTHCHECK_URL}   auth=${auth}
+     ${headers}=  Create Dictionary     Accept=application/json    Content-Type=application/json
+     ${resp}= 	Get Request 	policy 	${POLICY_HEALTH_CHECK_PATH}     headers=${headers}
+     Log    Received response from policy ${resp.text}
+     Should Be Equal As Strings 	${resp.status_code} 	200
+     Should Be True 	${resp.json()['healthy']}
+     @{ITEMS}=    Copy List    ${resp.json()['details']}
+     :FOR    ${ELEMENT}    IN    @{ITEMS}
+     \    Should Be Equal As Strings 	${ELEMENT['code']} 	200
+     \    Should Be True    ${ELEMENT['healthy']}
+    
+Run Policy Put Request
+     [Documentation]    Runs Policy Put request
+     [Arguments]    ${data_path}  ${data}
+     Log    Creating session ${GLOBAL_POLICY_SERVER_URL}
+     ${session}=    Create Session 	policy 	${GLOBAL_POLICY_SERVER_URL}
+     ${headers}=  Create Dictionary     Accept=application/json    Content-Type=application/json    Authorization=Basic ${GLOBAL_POLICY_AUTH}   ClientAuth=${GLOBAL_POLICY_CLIENTAUTH}    Environment=TEST
+     ${resp}= 	Put Request 	policy 	${data_path}     data=${data}    headers=${headers}
+     Log    Received response from policy ${resp.text}
+     [Return]    ${resp}
+     
+Run Policy Delete Request
+     [Documentation]    Runs Policy Delete request
+     [Arguments]    ${data_path}  ${data}
+     Log    Creating session ${GLOBAL_POLICY_SERVER_URL}
+     ${session}=    Create Session 	policy 	${GLOBAL_POLICY_SERVER_URL}
+     ${headers}=    Create Dictionary     Accept=application/json    Content-Type=application/json    Authorization=Basic ${GLOBAL_POLICY_AUTH}   ClientAuth=${GLOBAL_POLICY_CLIENTAUTH}    Environment=TEST
+     ${resp}= 	Delete Request 	policy 	${data_path}    data=${data}    headers=${headers}
+     Log    Received response from policy ${resp.text}
+     [Return]    ${resp}
+     
+Run Policy Get Configs Request
+    [Documentation]    Runs Policy Get Configs request
+    [Arguments]    ${data_path}  ${data}
+    Log    Creating session ${GLOBAL_POLICY_SERVER_URL}
+    ${session}=    Create Session 	policy 	${GLOBAL_POLICY_SERVER_URL}
+    ${headers}=    Create Dictionary     Accept=application/json    Content-Type=application/json    Authorization=Basic ${GLOBAL_POLICY_AUTH}   ClientAuth=${GLOBAL_POLICY_CLIENTAUTH}    
+    ${resp}= 	Post Request 	policy 	${data_path}    data=${data}    headers=${headers}
+    Log    Received response from policy ${resp.text}
+    [Return]    ${resp}
\ No newline at end of file