From 6ee5be5842034b16bc1d697e86507a767d0fc543 Mon Sep 17 00:00:00 2001 From: Krzysztof Gajewski Date: Thu, 18 Feb 2021 11:15:11 +0100 Subject: Extend DFC's HTTP[S] support with JWT support - CSIT tests Issue-ID: DCAEGEN2-2536 Signed-off-by: Krzysztof Gajewski Change-Id: I617f31486a605476ab3b53f7bd14818b344b9019 --- .../FuncSingleFileFtp.robot | 2 + .../FuncSingleFileHttp.robot | 2 + .../HttpVariousConnectionTypes.robot | 110 +++++++++++++++++++++ .../__init__.robot | 2 + .../HttpsVariousConnectionTypes.robot | 95 ------------------ .../__init__.robot | 2 - .../StrictHostChecking.robot | 2 + 7 files changed, 118 insertions(+), 97 deletions(-) create mode 100755 tests/dcaegen2-collectors-datafile/testsuites/HTTP-Various-Connection-Types-suite/HttpVariousConnectionTypes.robot create mode 100755 tests/dcaegen2-collectors-datafile/testsuites/HTTP-Various-Connection-Types-suite/__init__.robot delete mode 100755 tests/dcaegen2-collectors-datafile/testsuites/HTTPS-Various-Connection-Types-suite/HttpsVariousConnectionTypes.robot delete mode 100755 tests/dcaegen2-collectors-datafile/testsuites/HTTPS-Various-Connection-Types-suite/__init__.robot (limited to 'tests') diff --git a/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Ftp-suite/FuncSingleFileFtp.robot b/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Ftp-suite/FuncSingleFileFtp.robot index cecb8d11..bb70b502 100755 --- a/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Ftp-suite/FuncSingleFileFtp.robot +++ b/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Ftp-suite/FuncSingleFileFtp.robot @@ -109,3 +109,5 @@ Set Default Environment Variables Set Environment Variable HTTP_SIMS http-https-server0:80 Set Environment Variable HTTPS_SIMS http-https-server0:443 Set Environment Variable HTTPS_SIMS_NO_AUTH http-https-server0:8080 + Set Environment Variable HTTP_JWT_SIMS http-https-server0:32000 + Set Environment Variable HTTPS_JWT_SIMS http-https-server0:32100 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 index f279391c..f96c2f96 100755 --- 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 @@ -112,3 +112,5 @@ Set Default Environment Variables Set Environment Variable HTTP_SIMS http-https-server0:80 Set Environment Variable HTTPS_SIMS http-https-server0:443 Set Environment Variable HTTPS_SIMS_NO_AUTH http-https-server0:8080 + Set Environment Variable HTTP_JWT_SIMS http-https-server0:32000 + Set Environment Variable HTTPS_JWT_SIMS http-https-server0:32100 diff --git a/tests/dcaegen2-collectors-datafile/testsuites/HTTP-Various-Connection-Types-suite/HttpVariousConnectionTypes.robot b/tests/dcaegen2-collectors-datafile/testsuites/HTTP-Various-Connection-Types-suite/HttpVariousConnectionTypes.robot new file mode 100755 index 00000000..9e69e536 --- /dev/null +++ b/tests/dcaegen2-collectors-datafile/testsuites/HTTP-Various-Connection-Types-suite/HttpVariousConnectionTypes.robot @@ -0,0 +1,110 @@ +*** 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_HTTPS.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, HTTPS with various connections +Verify single event with single 1MB file with HTTPS connection (basic authentication). From event poll to published file + [TAGS] DFC_FUNCTIONAL_40 + [Documentation] Verify single event with single HTTPS (basic authentication) 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 --tc400 HTTPS + + +Verify single event with single 1MB file HTTPS connection (client certificate authentication). From event poll to published file + [TAGS] DFC_FUNCTIONAL_41 + [Documentation] Verify single event with single 1MB file HTTPS connection (client certificate authentication). From event poll to published file + Verify Single Event From Event Poll To Published File 1 --tc403 HTTPS + + +Verify single event with single 1MB file HTTPS (no authentication). From event poll to published file + [TAGS] DFC_FUNCTIONAL_42 + [Documentation] Verify single event with single 1MB file HTTPS (no authentication). From event poll to published file + Verify Single Event From Event Poll To Published File 1 --tc404 HTTPS + + +Verify single event with single 1MB file with HTTP JWT. From event poll to published file + [TAGS] DFC_FUNCTIONAL_43 + [Documentation] Verify single event with single 1MB file with HTTP JWT. 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 --tc303 HTTP + + +Verify single event with single 1MB file with HTTPS JWT. From event poll to published file + [TAGS] DFC_FUNCTIONAL_44 + [Documentation] Verify single event with single 1MB file with HTTPS JWT. 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 --tc405 HTTPS + + +*** 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-https-server0:80 + Set Environment Variable HTTPS_SIMS http-https-server0:443 + Set Environment Variable HTTPS_SIMS_NO_AUTH http-https-server0:8080 + Set Environment Variable HTTP_JWT_SIMS http-https-server0:32000 + Set Environment Variable HTTPS_JWT_SIMS http-https-server0:32100 diff --git a/tests/dcaegen2-collectors-datafile/testsuites/HTTP-Various-Connection-Types-suite/__init__.robot b/tests/dcaegen2-collectors-datafile/testsuites/HTTP-Various-Connection-Types-suite/__init__.robot new file mode 100755 index 00000000..b4fa2714 --- /dev/null +++ b/tests/dcaegen2-collectors-datafile/testsuites/HTTP-Various-Connection-Types-suite/__init__.robot @@ -0,0 +1,2 @@ +*** Settings *** +Documentation DFC HTTP/HTTPS various connection types test suite. Single event with single file. diff --git a/tests/dcaegen2-collectors-datafile/testsuites/HTTPS-Various-Connection-Types-suite/HttpsVariousConnectionTypes.robot b/tests/dcaegen2-collectors-datafile/testsuites/HTTPS-Various-Connection-Types-suite/HttpsVariousConnectionTypes.robot deleted file mode 100755 index c8d09c2b..00000000 --- a/tests/dcaegen2-collectors-datafile/testsuites/HTTPS-Various-Connection-Types-suite/HttpsVariousConnectionTypes.robot +++ /dev/null @@ -1,95 +0,0 @@ -*** 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_HTTPS.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, HTTPS with various connections -Verify single event with single 1MB file with HTTPS connection (basic authentication). From event poll to published file - [TAGS] DFC_FUNCTIONAL_40 - [Documentation] Verify single event with single HTTPS (basic authentication) 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 --tc400 HTTPS - - -Verify single event with single 1MB file HTTPS connection (client certificate authentication). From event poll to published file - [TAGS] DFC_FUNCTIONAL_41 - [Documentation] Verify single event with single HTTPS (basic authentication) 5MB file from event poll to published file. - Verify Single Event From Event Poll To Published File 1 --tc403 HTTPS - - -Verify single event with single 1MB file HTTPS (no authentication). From event poll to published file - [TAGS] DFC_FUNCTIONAL_42 - [Documentation] Verify single event with single HTTPS (basic authentication) 50MB file from event poll to published file. - Verify Single Event From Event Poll To Published File 1 --tc404 HTTPS - - - -*** 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-https-server0:80 - Set Environment Variable HTTPS_SIMS http-https-server0:443 - Set Environment Variable HTTPS_SIMS_NO_AUTH http-https-server0:8080 diff --git a/tests/dcaegen2-collectors-datafile/testsuites/HTTPS-Various-Connection-Types-suite/__init__.robot b/tests/dcaegen2-collectors-datafile/testsuites/HTTPS-Various-Connection-Types-suite/__init__.robot deleted file mode 100755 index dac245f8..00000000 --- a/tests/dcaegen2-collectors-datafile/testsuites/HTTPS-Various-Connection-Types-suite/__init__.robot +++ /dev/null @@ -1,2 +0,0 @@ -*** Settings *** -Documentation DFC HTTPS various connection types test suite. Single event with single file. 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 9baf11f6..61f689d1 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 @@ -93,6 +93,8 @@ Setup Strict Host Key Checking Test Set Environment Variable HTTP_SIMS http-https-server0:80 Set Environment Variable HTTPS_SIMS http-https-server0:443 Set Environment Variable HTTPS_SIMS_NO_AUTH http-https-server0:8080 + Set Environment Variable HTTP_JWT_SIMS http-https-server0:32000 + Set Environment Variable HTTPS_JWT_SIMS http-https-server0:32100 ${cli_cmd_output}= Run Process ./simulators-start.sh cwd=${SIMGROUP_ROOT} Log To Console Simulator-start: -- cgit 1.2.3-korg