Move CSIT to integration/csit repo

To facilite branching of CSIT tests, all CSIT test
code and scripts are relocated to the integration/csit
repo.

Change-Id: I1e4c0eff44691f73f8098b3c52764107f6b8b8df
Issue-ID: INT-671
Signed-off-by: Gary Wu <gary.i.wu@huawei.com>
diff --git a/tests/dcaegen2/testcases/dcae_ves.robot b/tests/dcaegen2/testcases/dcae_ves.robot
new file mode 100644
index 0000000..daed35f
--- /dev/null
+++ b/tests/dcaegen2/testcases/dcae_ves.robot
@@ -0,0 +1,171 @@
+*** Settings ***
+Documentation	  Testing DCAE VES 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        Cleanup VES Events
+Suite Setup       Run keywords  VES Collector Suite Setup DMaaP  Create sessions  Create header
+Suite Teardown    VES Collector Suite Shutdown DMaaP    
+
+*** Variables ***
+${VESC_URL_HTTPS}                        https://%{VESC_IP}:8443
+${VESC_URL}                              http://%{VESC_IP}:8080 
+${VES_ANY_EVENT_PATH}                    /eventListener/v5
+${VES_BATCH_EVENT_PATH}             	 /eventListener/v5/eventBatch
+${VES_THROTTLE_STATE_EVENT_PATH}         /eventListener/v5/clientThrottlingState
+${EVENT_DATA_FILE}                       %{WORKSPACE}/test/csit/tests/dcaegen2/testcases/assets/json_events/ves_volte_single_fault_event.json
+${EVENT_MEASURE_FILE}                    %{WORKSPACE}/test/csit/tests/dcaegen2/testcases/assets/json_events/ves_vfirewall_measurement.json
+${EVENT_DATA_FILE_BAD}                   %{WORKSPACE}/test/csit/tests/dcaegen2/testcases/assets/json_events/ves_volte_single_fault_event_bad.json
+${EVENT_BATCH_DATA_FILE}                 %{WORKSPACE}/test/csit/tests/dcaegen2/testcases/assets/json_events/ves_volte_fault_eventlist_batch.json
+${EVENT_THROTTLING_STATE_DATA_FILE}      %{WORKSPACE}/test/csit/tests/dcaegen2/testcases/assets/json_events/ves_volte_fault_provide_throttle_state.json
+${EVENT_PNF_REGISTRATION}                %{WORKSPACE}/test/csit/tests/dcaegen2/testcases/assets/json_events/ves_pnf_registration_event.json
+
+#DCAE Health Check
+${CONFIG_BINDING_URL}                    http://localhost:8443
+${CB_HEALTHCHECK_PATH}                   /healthcheck
+${CB_SERVICE_COMPONENT_PATH}             /service_component/
+${VES_Service_Name1}                     dcae-controller-ves-collector
+${VES_Service_Name2}                     ves-collector-not-exist
+
+*** Test Cases ***
+VES Collector Health Check
+    [Tags]    DCAE-VESC-R1
+    [Documentation]   Ves Collector Health Check
+    ${uuid}=    Generate UUID
+    ${headers}=  Create Dictionary     Accept=*/*     X-TransactionId=${GLOBAL_APPLICATION_ID}-${uuid}    X-FromAppId=${GLOBAL_APPLICATION_ID}
+    ${resp}= 	Get Request 	${suite_dcae_vesc_url_session} 	/healthcheck        headers=${headers}
+    Should Be Equal As Strings 	${resp.status_code} 	200  
+
+Publish Single VES VoLTE Fault Event
+    [Tags]    DCAE-VESC-R1
+    [Documentation]   Post single event and expect 200 Response 
+    ${evtdata}=   Get Data From File   ${EVENT_DATA_FILE}
+    ${resp}=  Publish Event To VES Collector No Auth    ${VES_ANY_EVENT_PATH}  ${evtdata}
+    Log    Receive HTTP Status code ${resp.status_code}
+    Should Be Equal As Strings 	${resp.status_code} 	200
+    ${isEmpty}=   Is Json Empty    ${resp}
+    Run Keyword If   '${isEmpty}' == False   Log  ${resp.json()}
+    ${ret}=  DMaaP Message Receive    ab305d54-85b4-a31b-7db2-fb6b9e546015
+    Should Be Equal As Strings    ${ret}    true
+
+Publish Single VES VNF Measurement Event
+    [Tags]    DCAE-VESC-R1
+    [Documentation]   Post single event and expect 200 Response 
+    ${evtdata}=   Get Data From File   ${EVENT_MEASURE_FILE}
+    ${resp}=  Publish Event To VES Collector No Auth    ${VES_ANY_EVENT_PATH}  ${evtdata}
+    Log    Receive HTTP Status code ${resp.status_code}
+    Should Be Equal As Strings 	${resp.status_code} 	200
+    ${isEmpty}=   Is Json Empty    ${resp}
+    Run Keyword If   '${isEmpty}' == False   Log  ${resp.json()}
+    ${ret}=  DMaaP Message Receive    0b2b5790-3673-480a-a4bd-5a00b88e5af6
+    Should Be Equal As Strings    ${ret}    true
+
+Publish VES VoLTE Fault Batch Events
+    [Tags]    DCAE-VESC-R1
+    [Documentation]   Post batched events and expect 200 Response 
+    ${evtdata}=   Get Data From File   ${EVENT_BATCH_DATA_FILE}
+    ${resp}=  Publish Event To VES Collector No Auth    ${VES_BATCH_EVENT_PATH}  ${evtdata}
+    Should Be Equal As Strings 	${resp.status_code} 	200
+    #${ret}=  DMaaP Message Receive    ab305d54-85b4-a31b-7db2-fb6b9e546016
+    ${ret}=  DMaaP Message Receive    ab305d54-85b4-a31b-7db2-fb6b9e546025
+    Should Be Equal As Strings    ${ret}    true      
+    
+Publish Single VES VoLTE Fault Event With Bad Data
+    [Tags]    DCAE-VESC-R1
+    [Documentation]    Run with JSON Envent with missing comma to expect 400 response
+    ${evtdata}=   Get Data From File   ${EVENT_DATA_FILE_BAD}
+    Log   Send HTTP Request with invalid Json Event Data
+    ${resp}=  Publish Event To VES Collector No Auth    ${VES_ANY_EVENT_PATH}  ${evtdata}
+    Log    Receive HTTP Status code ${resp.status_code}
+    Should Be Equal As Strings 	${resp.status_code} 	400
+    ${isEmpty}=   Is Json Empty    ${resp}
+    Run Keyword If   '${isEmpty}' == False   Log  ${resp.json()}
+    
+Publish VES Event With Invalid Method
+    [Tags]    DCAE-VESC-R1
+    [Documentation]    Use invalid Put instead of Post method to expect 405 response
+    ${evtdata}=   Get Data From File   ${EVENT_DATA_FILE}
+    Log   Send HTTP Request with invalid method Put instead of Post
+    ${resp}=  Publish Event To VES Collector With Put Method No Auth  ${VES_ANY_EVENT_PATH}  ${evtdata}
+    Log    Receive HTTP Status code ${resp.status_code}
+    Should Be Equal As Strings 	${resp.status_code} 	404 
+    
+Publish VES Event With Invalid URL Path
+    [Tags]    DCAE-VESC-R1
+    [Documentation]    Use invalid url path to expect 404 response
+    ${evtdata}=   Get Data From File   ${EVENT_DATA_FILE}
+    Log   Send HTTP Request with invalid /listener/v5/ instead of /eventListener/v5 path
+    ${resp}=  Publish Event To VES Collector No Auth    /listener/v5/  ${evtdata}
+    Log    Receive HTTP Status code ${resp.status_code}
+    Should Be Equal As Strings 	${resp.status_code} 	404    
+    
+#Enable VESC HTTPS And Basic Auth
+    #[Tags]    DCAE-VESC-R1
+    #[Documentation]    Enable VESC Https and Authentication, Disable Http and Run Health Check
+    #Enable VESC Https Auth
+    #
+    #${auth}=  Create List  ${VESC_HTTPS_USER}   ${VESC_HTTPS_PD}
+    #${session}=    Create Session 	dcaegen2-r1 	${VESC_URL_HTTPS}    auth=${auth}   disable_warnings=1
+    #${headers}=  Create Dictionary     Accept=*/*    X-FromAppId=${GLOBAL_APPLICATION_ID}
+    #${resp}= 	Get Request 	dcaegen2-r1 	/healthcheck        headers=${headers}
+    #Should Be Equal As Strings 	${resp.status_code} 	200
+
+Publish Single VES Fault Event Over HTTPS
+    [Tags]    DCAE-VESC-R1
+    [Documentation]   Post single event and expect 200 Response 
+    ${evtdata}=   Get Data From File   ${EVENT_DATA_FILE}
+    Log  Login User=${VESC_HTTPS_USER}, Pd=${VESC_HTTPS_PD}
+    ${resp}=  Publish Event To VES Collector    ${VES_ANY_EVENT_PATH}  ${evtdata}
+    Log    Receive HTTP Status code ${resp.status_code}
+    Should Be Equal As Strings 	${resp.status_code} 	200
+    ${isEmpty}=   Is Json Empty    ${resp}
+    Run Keyword If   '${isEmpty}' == False   Log  ${resp.json()}
+    ${ret}=  DMaaP Message Receive    ab305d54-85b4-a31b-7db2-fb6b9e546015
+    Should Be Equal As Strings    ${ret}    true 
+    
+Publish Single VES Measurement Event Over HTTPS
+    [Tags]    DCAE-VESC-R1
+    [Documentation]   Post single event and expect 200 Response 
+    ${evtdata}=   Get Data From File   ${EVENT_MEASURE_FILE}
+    ${resp}=  Publish Event To VES Collector  ${VES_ANY_EVENT_PATH}  ${evtdata}
+    Log    Receive HTTP Status code ${resp.status_code}
+    Should Be Equal As Strings 	${resp.status_code} 	200
+    ${isEmpty}=   Is Json Empty    ${resp}
+    Run Keyword If   '${isEmpty}' == False   Log  ${resp.json()}
+    ${ret}=  DMaaP Message Receive    0b2b5790-3673-480a-a4bd-5a00b88e5af6
+    Should Be Equal As Strings    ${ret}    true
+
+Publish VES Fault Batch Events Over HTTPS
+    [Tags]    DCAE-VESC-R1
+    [Documentation]   Post batched events and expect 202 Response 
+    ${evtdata}=   Get Data From File   ${EVENT_BATCH_DATA_FILE}
+    ${resp}=  Publish Event To VES Collector  ${VES_BATCH_EVENT_PATH}  ${evtdata}
+    Should Be Equal As Strings 	${resp.status_code} 	200
+    #${ret}=  DMaaP Message Receive    ab305d54-85b4-a31b-7db2-fb6b9e546016
+    ${ret}=  DMaaP Message Receive    ab305d54-85b4-a31b-7db2-fb6b9e546025
+    Should Be Equal As Strings    ${ret}    true
+
+Publish VES Event With Invalid URL Path HTTPS
+    [Tags]    DCAE-VESC-R1
+    [Documentation]    Use invalid url path to expect 404 response
+    ${evtdata}=   Get Data From File   ${EVENT_DATA_FILE}
+    Log   Send HTTP Request with invalid /eventlistener/v5/ instead of /eventListener/v5 path
+    ${resp}=  Publish Event To VES Collector  /eventlistener/v5  ${evtdata}
+    Log    Receive HTTP Status code ${resp.status_code}
+    Should Be Equal As Strings 	${resp.status_code} 	404
+    
+Publish PNF Registration Event  
+    [Tags]    DCAE-VESC-R1
+    [Documentation]   Post PNF registration event and expect 200 Response 
+    ${evtdata}=   Get Data From File   ${EVENT_PNF_REGISTRATION}
+    ${resp}=  Publish Event To VES Collector No Auth    ${VES_ANY_EVENT_PATH}  ${evtdata}
+    Log    Receive HTTP Status code ${resp.status_code}
+    Should Be Equal As Strings 	${resp.status_code} 	200
+    ${isEmpty}=   Is Json Empty    ${resp}
+    Run Keyword If   '${isEmpty}' == False   Log  ${resp.json()}
+    ${ret}=  DMaaP Message Receive    QTFCOC540002E-reg
+    Should Be Equal As Strings    ${ret}    true
+    
\ No newline at end of file