RestConfCollector CSIT test cases

Issue-ID: DCAEGEN2-1055 
Change-Id: I70dc5d957e49abc4adcaa5a0ecd5e4c0ca7526dd
Signed-off-by: sharath <sharathkumarboyanapally@gmail.com>
diff --git a/tests/dcaegen2-collectors-restconf/testcases/__init__.robot b/tests/dcaegen2-collectors-restconf/testcases/__init__.robot
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/tests/dcaegen2-collectors-restconf/testcases/__init__.robot
diff --git a/tests/dcaegen2-collectors-restconf/testcases/dcae_rcc.robot b/tests/dcaegen2-collectors-restconf/testcases/dcae_rcc.robot
new file mode 100644
index 0000000..7417147
--- /dev/null
+++ b/tests/dcaegen2-collectors-restconf/testcases/dcae_rcc.robot
@@ -0,0 +1,23 @@
+*** Settings ***
+Documentation	  Testing DCAE Restconf Listener with various event feeds from VoLTE, vDNS, vFW and cCPE use scenarios
+Library 	  RequestsLibrary   
+Library           OperatingSystem
+Library           Collections
+Library           DcaeLibrary
+Resource          ./resources/dcae_keywords.robot
+Resource          ../../common.robot
+Test Setup        Init RCC
+Suite Setup       Run keywords  Create rcc sessions  Create rcc header
+Suite Teardown    teardown rcc
+
+*** Variables ***
+${RCC_URL_HTTPS}                        https://%{RCC_IP}:8443
+${RCC_URL}                              http://%{RCC_IP}:8080
+
+*** Test Cases ***
+Restconf Collector Health Check
+    [Tags]    DCAE-RCC-R1
+    [Documentation]   Restconf Collector Health Check
+    ${headers}=  Create Dictionary     Accept=*/*
+    ${resp}= 	Get Request 	${suite_dcae_rcc_url_session} 	/healthcheck        headers=${headers}
+    Should Be Equal As Strings 	${resp.status_code} 	200  
diff --git a/tests/dcaegen2-collectors-restconf/testcases/resources/DcaeLibrary.py b/tests/dcaegen2-collectors-restconf/testcases/resources/DcaeLibrary.py
new file mode 100644
index 0000000..d484874
--- /dev/null
+++ b/tests/dcaegen2-collectors-restconf/testcases/resources/DcaeLibrary.py
@@ -0,0 +1,20 @@
+from robot.api import logger
+import time
+
+class DcaeLibrary(object):
+    
+    def __init__(self):
+        pass
+
+    @staticmethod
+    def init_rcc():
+        logger.console("RestConf collector init and cleanup are done")
+        return "true"
+
+    @staticmethod
+    def teardown_rcc():
+        logger.console("RestConf collector teardown done")
+        return "true"
+
+if __name__ == '__main__':
+    time.sleep(100000)
diff --git a/tests/dcaegen2-collectors-restconf/testcases/resources/dcae_keywords.robot b/tests/dcaegen2-collectors-restconf/testcases/resources/dcae_keywords.robot
new file mode 100644
index 0000000..172210f
--- /dev/null
+++ b/tests/dcaegen2-collectors-restconf/testcases/resources/dcae_keywords.robot
@@ -0,0 +1,23 @@
+*** Settings ***
+Documentation     The main interface for interacting with DCAE. It handles low level stuff like managing the http request library and DCAE required fields
+Library 	      RequestsLibrary
+Library	          DcaeLibrary   
+Library           OperatingSystem
+Library           Collections
+Resource          ../resources/dcae_properties.robot
+
+*** Variables ***
+${DCAE_HEALTH_CHECK_BODY}    %{WORKSPACE}/tests/dcae/testcases/assets/json_events/dcae_healthcheck.json
+
+*** Keywords ***
+Create rcc sessions
+    [Documentation]  Create all required sessions
+    Create Session    dcae_rcc_url    ${RCC_URL}
+    Set Suite Variable    ${suite_dcae_rcc_url_session}    dcae_rcc_url
+    ${auth}=  Create List  ${RCC_HTTPS_USER}   ${RCC_HTTPS_PD}
+    Create Session    dcae_rcc_url_https    ${RCC_URL_HTTPS}  auth=${auth}  disable_warnings=1
+    Set Suite Variable    ${suite_dcae_rcc_url_https_session}    dcae_rcc_url_https
+
+Create rcc header
+    ${headers}=    Create Dictionary    Content-Type=application/json
+    Set Suite Variable    ${suite_headers}    ${headers}
diff --git a/tests/dcaegen2-collectors-restconf/testcases/resources/dcae_properties.robot b/tests/dcaegen2-collectors-restconf/testcases/resources/dcae_properties.robot
new file mode 100644
index 0000000..3ba7690
--- /dev/null
+++ b/tests/dcaegen2-collectors-restconf/testcases/resources/dcae_properties.robot
@@ -0,0 +1,14 @@
+*** Settings ***
+Documentation        store all properties that can change or are used in multiple places here
+...                    format is all caps with underscores between words and prepended with GLOBAL
+...                   make sure you prepend them with GLOBAL so that other files can easily see it is from this file.
+
+*** Variables ***
+${GLOBAL_APPLICATION_ID}           robot-dcaegen2
+${GLOBAL_DCAE_CONSUL_URL}          http://135.205.228.129:8500
+${GLOBAL_DCAE_CONSUL_URL1}         http://135.205.228.170:8500
+${GLOBAL_DCAE_VES_URL}             http://localhost:8443/eventlistener/v5
+${GLOBAL_DCAE_USERNAME}            console
+${GLOBAL_DCAE_PASSWORD}            ZjJkYjllMjljMTI2M2Iz
+${RCC_HTTPS_USER}                 sample1
+${RCC_HTTPS_PD}                   sample1
diff --git a/tests/dcaegen2-collectors-restconf/testcases/resources/index.htm b/tests/dcaegen2-collectors-restconf/testcases/resources/index.htm
new file mode 100644
index 0000000..5ab2f8a
--- /dev/null
+++ b/tests/dcaegen2-collectors-restconf/testcases/resources/index.htm
@@ -0,0 +1 @@
+Hello
\ No newline at end of file