Add PMSH CSITs

Signed-off-by: AndyWalshe <andy.walshe@est.tech>
Issue-ID: DCAEGEN2-1842
Change-Id: I69e824f9ed74137f217285381ab5efe55010f4dc
diff --git a/tests/dcaegen2-services-pmsh/testcases/__init__.robot b/tests/dcaegen2-services-pmsh/testcases/__init__.robot
new file mode 100644
index 0000000..47abe8b
--- /dev/null
+++ b/tests/dcaegen2-services-pmsh/testcases/__init__.robot
@@ -0,0 +1,2 @@
+*** Settings ***
+Documentation    PMSH Testcases
diff --git a/tests/dcaegen2-services-pmsh/testcases/pmsh.robot b/tests/dcaegen2-services-pmsh/testcases/pmsh.robot
new file mode 100644
index 0000000..74a575c
--- /dev/null
+++ b/tests/dcaegen2-services-pmsh/testcases/pmsh.robot
@@ -0,0 +1,38 @@
+*** Settings ***
+Documentation     Testing PMSH functionality
+Library           OperatingSystem
+Library           RequestsLibrary
+Library           String
+
+Test Setup        Create Session  pmsh_session  ${PMSH_BASE_URL}
+Test Teardown     Delete All Sessions
+
+
+*** Variables ***
+${PMSH_BASE_URL}                    https://${PMSH_IP}:8443
+${HEALTHCHECK_ENDPOINT}             /healthcheck
+
+
+*** Test Cases ***
+Verify Health Check returns 200 when a REST GET request to healthcheck url
+    [Tags]                          PMSH_01
+    [Documentation]                 Verify Health Check returns 200 when a REST GET request to healthcheck url
+    [Timeout]                       1 minute
+    ${resp}=                        Get Request                      pmsh_session  ${HEALTHCHECK_ENDPOINT}
+    VerifyResponse                  ${resp.status_code}              200
+
+Verify Health Check response includes healthy status
+    [Tags]                          PMSH_02
+    [Documentation]                 Verify Health Check response includes healthy status
+    [Timeout]                       1 minute
+    ${resp}=                        Get Request                      pmsh_session  ${HEALTHCHECK_ENDPOINT}
+    VerifyResponseContains          ${resp.text}                  healthy
+
+*** Keywords ***
+VerifyResponse
+    [Arguments]                     ${actual_response_value}         ${expected_response_value}
+    Should Be Equal As Strings      ${actual_response_value}         ${expected_response_value}
+
+VerifyResponseContains
+    [Arguments]                     ${response_content}             ${string_to_check_for}
+    Should Contain                  ${response_content}             ${string_to_check_for}