From 99ce6a7681a29f886e7849d4cc3d222078943b79 Mon Sep 17 00:00:00 2001 From: Krzysztof Gajewski Date: Tue, 29 Dec 2020 17:55:27 +0100 Subject: [PATCH] Add HTTP to DFC CSIT tests - use recently added http functionalities from integration - small ftp part refactoring - add compulsory variables to recent tests Issue-ID: DCAEGEN2-2527 Signed-off-by: Krzysztof Gajewski Change-Id: I4b805e99756cfb8197d0a082eb04cb19374ab0d0 --- .../Functional-suite/setup.sh | 2 + .../Functional-suite/testplan.txt | 3 +- .../FuncSingleFileFtp.robot} | 5 ++ .../__init__.robot | 2 + .../FuncSingleFileHttp.robot | 93 ++++++++++++++++++++++ .../__init__.robot | 2 +- .../StrictHostChecking.robot | 7 +- 7 files changed, 111 insertions(+), 3 deletions(-) rename tests/dcaegen2-collectors-datafile/testsuites/{Functional-Single-File-suite/FuncSingleFile.robot => Functional-Single-File-Ftp-suite/FuncSingleFileFtp.robot} (95%) create mode 100755 tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Ftp-suite/__init__.robot create mode 100755 tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Http-suite/FuncSingleFileHttp.robot rename tests/dcaegen2-collectors-datafile/testsuites/{Functional-Single-File-suite => Functional-Single-File-Http-suite}/__init__.robot (75%) diff --git a/plans/dcaegen2-collectors-datafile/Functional-suite/setup.sh b/plans/dcaegen2-collectors-datafile/Functional-suite/setup.sh index 7736d4a7..02572d2a 100644 --- a/plans/dcaegen2-collectors-datafile/Functional-suite/setup.sh +++ b/plans/dcaegen2-collectors-datafile/Functional-suite/setup.sh @@ -58,6 +58,8 @@ cp -r ../ftpes-sftp-server/tls . cd ../ftpes-sftp-server docker build -t ftpes_vsftpd:latest -f Dockerfile-ftpes . +cd ../http-https-server +docker build -t http_httpd:latest -f Dockerfile-http . #All containers will be started and stopped via the robot tests. diff --git a/plans/dcaegen2-collectors-datafile/Functional-suite/testplan.txt b/plans/dcaegen2-collectors-datafile/Functional-suite/testplan.txt index 052ab7c8..065deb10 100755 --- a/plans/dcaegen2-collectors-datafile/Functional-suite/testplan.txt +++ b/plans/dcaegen2-collectors-datafile/Functional-suite/testplan.txt @@ -1,4 +1,5 @@ # Test suites are relative paths under [integration/csit.git]/tests/. # Place the suites in run order. -dcaegen2-collectors-datafile/testsuites/Functional-Single-File-suite +dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Ftp-suite +dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Http-suite dcaegen2-collectors-datafile/testsuites/Strict-Host-Checking-suite diff --git a/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-suite/FuncSingleFile.robot b/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Ftp-suite/FuncSingleFileFtp.robot similarity index 95% rename from tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-suite/FuncSingleFile.robot rename to tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Ftp-suite/FuncSingleFileFtp.robot index 8213c702..7d8afbbd 100755 --- a/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-suite/FuncSingleFile.robot +++ b/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Ftp-suite/FuncSingleFileFtp.robot @@ -95,10 +95,15 @@ Set Default Environment Variables Set Environment Variable MR_FILE_PREFIX_MAPPING PM_MEAS_FILES:A Set Environment Variable DR_REDIR_FEEDS 2:A Set Environment Variable FTP_FILE_PREFIXES A + Set Environment Variable HTTP_FILE_PREFIXES A + Set Environment Variable HTTP_TYPE HTTP Set Environment Variable NUM_FTPFILES 1 + Set Environment Variable NUM_HTTPFILES 1 Set Environment Variable NUM_PNFS 1 Set Environment Variable NUM_FTP_SERVERS 1 + Set Environment Variable NUM_HTTP_SERVERS 1 Set Environment Variable DR_FEEDS 2:A Set Environment Variable DR_REDIR_SIM drsim_redir Set Environment Variable SFTP_SIMS sftp-server0:22 Set Environment Variable FTPES_SIMS ftpes-server-vsftpd0:21 + Set Environment Variable HTTP_SIMS http-server0:80 diff --git a/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Ftp-suite/__init__.robot b/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Ftp-suite/__init__.robot new file mode 100755 index 00000000..d99ffc36 --- /dev/null +++ b/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Ftp-suite/__init__.robot @@ -0,0 +1,2 @@ +*** Settings *** +Documentation DFC Functional test suite. Single event with single file - FTPES and SFTP protocols. diff --git a/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Http-suite/FuncSingleFileHttp.robot b/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Http-suite/FuncSingleFileHttp.robot new file mode 100755 index 00000000..e37a9106 --- /dev/null +++ b/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Http-suite/FuncSingleFileHttp.robot @@ -0,0 +1,93 @@ +*** Settings *** +Library OperatingSystem +Library RequestsLibrary +Library Process + +Resource ../../resources/common-keywords.robot + +*** Variables *** +${CONSUL_UPL_APP} /usr/bin/curl -v http://127.0.0.1:8500/v1/kv/dfc_app0?dc=dc1 -X PUT -H 'Accept: application/json' -H 'Content-Type: application/json' -H 'X-Requested-With: XMLHttpRequest' --data-binary @${SIMGROUP_ROOT}/consul/c12_feed2_PM_MEAS.json +${CONSUL_GET_APP} /usr/bin/curl -v http://127.0.0.1:8500/v1/kv/dfc_app0?raw +${CBS_GET_MERGED_CONFIG} /usr/bin/curl -v http://127.0.0.1:10000/service_component_all/dfc_app0 + +*** Test Cases *** + +######## Single file, HTTP + +Verify single event with single 1MB HTTP file. From event poll to published file + [TAGS] DFC_FUNCTIONAL_20 + [Documentation] Verify single event with single HTTP 1MB file from event poll to published file. + ${cli_cmd_output}= Run Process ${DFC_ROOT}/../dfc-containers-clean.sh stderr=STDOUT + Verify Single Event From Event Poll To Published File 1 --tc300 HTTP + + +Verify single event with single 5MB HTTP file. From event poll to published file + [TAGS] DFC_FUNCTIONAL_21 + [Documentation] Verify single event with single HTTP 5MB file from event poll to published file. + Verify Single Event From Event Poll To Published File 5 --tc301 HTTP + + +Verify single event with single 50MB HTTP file. From event poll to published file + [TAGS] DFC_FUNCTIONAL_22 + [Documentation] Verify single event with single HTTP 50MB file from event poll to published file. + Verify Single Event From Event Poll To Published File 50 --tc302 HTTP + + +*** Keywords *** +Verify Single Event From Event Poll To Published File + [Documentation] Keyword to verify single event with file with given parameters. + [Arguments] ${file_size_in_mb} ${mr_tc} ${http_type} + Set Environment Variable MR_TC ${mr_tc} + Set Environment Variable FILE_SIZE ${file_size_in_mb}MB + Set Environment Variable HTTP_TYPE ${http_type} + Set Default Environment Variables + + ${cli_cmd_output}= Run Process ./simulators-start.sh cwd=${SIMGROUP_ROOT} + Log To Console Simulator-start: + Log To Console ${cli_cmd_output.stdout} ${cli_cmd_output.stderr} + MR Sim Emitted Files Equal 0 #Verify 0 file emitted from MR sim + DR Sim Published Files Equal 0 #Verify 0 file published to DR sim + + ${cli_cmd_output}= Run Process ${CONSUL_UPL_APP} shell=yes + Log To Console Consul APP write: + Log To Console ${cli_cmd_output.stdout} ${cli_cmd_output.stderr} + + ${cli_cmd_output}= Run Process ${CONSUL_GET_APP} shell=yes + Log To Console Consul APP read: + Log To Console ${cli_cmd_output.stdout} ${cli_cmd_output.stderr} + + ${cli_cmd_output}= Run Process ${CBS_GET_MERGED_CONFIG} shell=yes + Log To Console CBS merged configuration: + Log To Console ${cli_cmd_output.stdout} ${cli_cmd_output.stderr} + + Sleep 10 + + Start DFC + + Wait Until Keyword Succeeds 1 minute 10 sec MR Sim Emitted Files Equal 1 #Verify 1 file emitted from MR sim + Wait Until Keyword Succeeds 1 minute 10 sec DR Sim Query Not Published Equal 1 #Verify 1 query response for not published files + Wait Until Keyword Succeeds 1 minute 10 sec DR Sim Published Files Equal 1 #Verify 1 file published to DR sim + DR Redir Sim Downloaded Volume Equal ${file_size_in_mb} 000 000 #Verify correct number of bytes published file data in DR redir sim + + [Teardown] Test Teardown + +Set Default Environment Variables + [Documentation] Set default environment variables for simulators setup + Set Environment Variable DR_TC --tc normal + Set Environment Variable DR_REDIR_TC --tc normal + Set Environment Variable MR_GROUPS OpenDcae-c12:PM_MEAS_FILES + Set Environment Variable MR_FILE_PREFIX_MAPPING PM_MEAS_FILES:A + Set Environment Variable DR_REDIR_FEEDS 2:A + Set Environment Variable FTP_FILE_PREFIXES A + Set Environment Variable FTP_TYPE SFTP + Set Environment Variable HTTP_FILE_PREFIXES A + Set Environment Variable NUM_FTPFILES 1 + Set Environment Variable NUM_HTTPFILES 1 + Set Environment Variable NUM_PNFS 1 + Set Environment Variable NUM_FTP_SERVERS 1 + Set Environment Variable NUM_HTTP_SERVERS 1 + Set Environment Variable DR_FEEDS 2:A + Set Environment Variable DR_REDIR_SIM drsim_redir + Set Environment Variable SFTP_SIMS sftp-server0:22 + Set Environment Variable FTPES_SIMS ftpes-server-vsftpd0:21 + Set Environment Variable HTTP_SIMS http-server0:80 diff --git a/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-suite/__init__.robot b/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Http-suite/__init__.robot similarity index 75% rename from tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-suite/__init__.robot rename to tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Http-suite/__init__.robot index dc2d8379..5245d659 100755 --- a/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-suite/__init__.robot +++ b/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Http-suite/__init__.robot @@ -1,2 +1,2 @@ *** Settings *** -Documentation DFC Functional test suite. Single event with single file. +Documentation DFC Functional test suite. Single event with single file - HTTP protocol. diff --git a/tests/dcaegen2-collectors-datafile/testsuites/Strict-Host-Checking-suite/StrictHostChecking.robot b/tests/dcaegen2-collectors-datafile/testsuites/Strict-Host-Checking-suite/StrictHostChecking.robot index 3962d4e5..55946201 100755 --- a/tests/dcaegen2-collectors-datafile/testsuites/Strict-Host-Checking-suite/StrictHostChecking.robot +++ b/tests/dcaegen2-collectors-datafile/testsuites/Strict-Host-Checking-suite/StrictHostChecking.robot @@ -77,15 +77,20 @@ Setup Strict Host Key Checking Test Set Environment Variable MR_FILE_PREFIX_MAPPING PM_MEAS_FILES:A Set Environment Variable DR_REDIR_FEEDS 2:A Set Environment Variable FTP_FILE_PREFIXES A + Set Environment Variable HTTP_FILE_PREFIXES A Set Environment Variable NUM_FTPFILES 1 + Set Environment Variable NUM_HTTPFILES 1 Set Environment Variable NUM_PNFS 1 Set Environment Variable FILE_SIZE 1MB Set Environment Variable FTP_TYPE SFTP + Set Environment Variable HTTP_TYPE HTTP Set Environment Variable NUM_FTP_SERVERS 1 + Set Environment Variable NUM_HTTP_SERVERS 1 Set Environment Variable DR_FEEDS 2:A Set Environment Variable DR_REDIR_SIM drsim_redir Set Environment Variable SFTP_SIMS sftp-server0:22 - Set Environment Variable FTPS_SIMS ftpes-server-vsftpd0:21 + Set Environment Variable FTPES_SIMS ftpes-server-vsftpd0:21 + Set Environment Variable HTTP_SIMS http-server0:80 ${cli_cmd_output}= Run Process ./simulators-start.sh cwd=${SIMGROUP_ROOT} Log To Console Simulator-start: -- 2.16.6