aboutsummaryrefslogtreecommitdiffstats
path: root/tests/dcaegen2-collectors-datafile/testsuites/Functional-Single-File-Http-suite/FuncSingleFileHttp.robot
blob: f279391c895bc4bbfa3d6e1c8f6c0bebb6d60785 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
*** 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, 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

######## Single file, HTTP
Verify single event with single 1MB HTTPS (basic authentication) file. From event poll to published file
    [TAGS]                         DFC_FUNCTIONAL_30
    [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 5MB HTTPS (basic authentication) file. From event poll to published file
    [TAGS]                         DFC_FUNCTIONAL_31
    [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   5    --tc401    HTTPS


Verify single event with single 50MB HTTPS (basic authentication) file. From event poll to published file
    [TAGS]                         DFC_FUNCTIONAL_32
    [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   50   --tc402    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