Attempt to check CSIT
[integration/csit.git] / tests / dcaegen2 / prh-testcases / prh_tests.robot
1 *** Settings ***
2 Documentation     Integration tests for PRH.
3 ...               PRH receive events from DMaaP and produce or not PNF_READY notification depends on required fields in received event.
4 Suite Setup       Run keywords   Create header  AND  Create sessions  AND  Ensure Container Is Running  prh  AND  Ensure Container Is Exited  ssl_prh
5 Suite Teardown    Ensure Container Is Running  ssl_prh
6 Test Teardown     Reset Simulators
7 Library           resources/PrhLibrary.py
8 Resource          resources/prh_library.robot
9 Resource          ../../common.robot
10
11 *** Variables ***
12 ${DMAAP_SIMULATOR_SETUP_URL}    http://${DMAAP_SIMULATOR_SETUP}
13 ${AAI_SIMULATOR_SETUP_URL}    http://${AAI_SIMULATOR_SETUP}
14 ${CONSUL_SETUP_URL}    http://${CONSUL_SETUP}
15
16 ${VES_EVENT_PNF_REGISTRATION_SIMPLE}    %{WORKSPACE}/tests/dcaegen2/prh-testcases/assets/json_events/ves-event-pnf-registration-simple.json
17 ${AAI_PNF_REGISTRATION_SIMPLE}    %{WORKSPACE}/tests/dcaegen2/prh-testcases/assets/json_events/aai-pnf-registration-simple.json
18 ${EVENT_WITH_ALL_VALID_REQUIRED_FIELDS}    %{WORKSPACE}/tests/dcaegen2/prh-testcases/assets/json_events/event_with_all_fields.json
19 ${EVENT_WITH_IPV4}    %{WORKSPACE}/tests/dcaegen2/prh-testcases/assets/json_events/event_with_IPV4.json
20 ${EVENT_WITH_IPV6}    %{WORKSPACE}/tests/dcaegen2/prh-testcases/assets/json_events/event_with_IPV6.json
21 ${EVENT_WITH_MISSING_IPV4_AND_IPV6}    %{WORKSPACE}/tests/dcaegen2/prh-testcases/assets/json_events/event_with_missing_IPV4_and_IPV6.json
22 ${EVENT_WITH_MISSING_SOURCENAME}    %{WORKSPACE}/tests/dcaegen2/prh-testcases/assets/json_events/event_with_missing_sourceName.json
23 ${EVENT_WITH_MISSING_SOURCENAME_AND_IPV4}    %{WORKSPACE}/tests/dcaegen2/prh-testcases/assets/json_events/event_with_missing_sourceName_and_IPV4.json
24 ${EVENT_WITH_MISSING_SOURCENAME_AND_IPV6}    %{WORKSPACE}/tests/dcaegen2/prh-testcases/assets/json_events/event_with_missing_sourceName_and_IPV6.json
25 ${EVENT_WITH_MISSING_SOURCENAME_IPV4_AND_IPV6}    %{WORKSPACE}/tests/dcaegen2/prh-testcases/assets/json_events/event_with_missing_sourceName_IPV4_and_IPV6.json
26 ${EVENT_WITH_OPTIONAL_REGISTRATION_FIELDS_ALL_FILLED}    %{WORKSPACE}/tests/dcaegen2/prh-testcases/assets/json_events/event_with_optional_registration_fields_all_filled.json
27 ${EVENT_WITH_OPTIONAL_REGISTRATION_FIELDS_EMPTY}    %{WORKSPACE}/tests/dcaegen2/prh-testcases/assets/json_events/event_with_optional_registration_fields_empty.json
28 ${EVENT_WITH_OPTIONAL_REGISTRATION_FIELDS_MISSING_ALL}    %{WORKSPACE}/tests/dcaegen2/prh-testcases/assets/json_events/event_with_optional_registration_fields_missing_all.json
29 ${EVENT_WITH_OPTIONAL_REGISTRATION_FIELDS_MISSING_PARTIAL}    %{WORKSPACE}/tests/dcaegen2/prh-testcases/assets/json_events/event_with_optional_registration_fields_missing_partial.json
30 ${EVENT_WITHOUT_IPV6_FILED}    %{WORKSPACE}/tests/dcaegen2/prh-testcases/assets/json_events/event_without_IPV6_field.json
31 ${Not_json_format}    %{WORKSPACE}/tests/dcaegen2/prh-testcases/assets/json_events/not_json_format.json
32
33 *** Test Cases ***
34 Process valid simple PNF Registration DMaaP event which can be converted to PNF_READY notification
35     [Documentation]    PRH get valid event from DMaaP with required fields - PRH produce PNF_READY notification
36     [Tags]    PRH    Valid event
37     [Template]    Valid event processing
38     ${VES_EVENT_PNF_REGISTRATION_SIMPLE}    ${AAI_PNF_REGISTRATION_SIMPLE}
39     #${EVENT_WITH_ALL_VALID_REQUIRED_FIELDS}
40     #${EVENT_WITH_IPV4}
41     #${EVENT_WITH_IPV6}
42     #${EVENT_WITHOUT_IPV6_FILED}
43     #${EVENT_WITH_OPTIONAL_REGISTRATION_FIELDS_ALL_FILLED}
44     #${EVENT_WITH_OPTIONAL_REGISTRATION_FIELDS_EMPTY}
45     #${EVENT_WITH_OPTIONAL_REGISTRATION_FIELDS_MISSING_ALL}
46     #${EVENT_WITH_OPTIONAL_REGISTRATION_FIELDS_MISSING_PARTIAL}
47
48 Invalid DMaaP event cannot be converted to PNF_READY notification
49     [Documentation]    PRH get invalid event from DMaaP with missing required fields - PRH does not produce PNF_READY notification
50     [Tags]    PRH    Invalid event
51     [Template]    Invalid event processing
52     #${EVENT_WITH_MISSING_IPV4_AND_IPV6}
53     ${EVENT_WITH_MISSING_SOURCENAME}
54     #${EVENT_WITH_MISSING_SOURCENAME_AND_IPV4}
55     #${EVENT_WITH_MISSING_SOURCENAME_AND_IPV6}
56     #${EVENT_WITH_MISSING_SOURCENAME_IPV4_AND_IPV6}
57
58 Get valid event from DMaaP and record in AAI does not exist
59     [Documentation]    PRH get valid event from DMaaP with all required fields and in AAI record doesn't exist - PRH does not produce PNF_READY notification
60     [Tags]    PRH    Missing AAI record
61     [Timeout]    30s
62     ${data}=    Get Data From File    ${EVENT_WITH_ALL_VALID_REQUIRED_FIELDS}
63     Set PNF name in AAI    wrong_aai_record
64     Set event in DMaaP    ${data}
65     Wait Until Keyword Succeeds    100x    300ms    Check PRH log    |AAIProducerTask exception has been registered
66     Wait Until Keyword Succeeds    100x    300ms    Check PRH log    |Chain of tasks have been aborted due to errors in PRH workflow
67
68 Event in DMaaP is not JSON format
69     [Documentation]    PRH get not JSON format event from DMaaP - PRH does not produce PNF_READY notification
70     [Tags]    PRH
71     ${data}=    Get Data From File    ${Not_json_format}
72     Set event in DMaaP    ${data}
73     #TODO to fix after CBS merge
74     #Wait Until Keyword Succeeds    100x    300ms    Check PRH log    |java.lang.IllegalStateException: Not a JSON Array:
75
76 Get valid event from DMaaP and AAI is not responding
77     [Documentation]    PRH get valid event from DMaaP with all required fields and AAI is not responding - PRH does not produce PNF_READY notification
78     [Tags]    PRH    AAI
79     [Timeout]    180s
80     ${data}=    Get Data From File    ${EVENT_WITH_ALL_VALID_REQUIRED_FIELDS}
81     Ensure Container Is Exited   aai_simulator
82     Set event in DMaaP    ${data}
83     #TODO fix after CBS merge
84     #Wait Until Keyword Succeeds    100x    300ms    Check PRH log    java.net.UnknownHostException: aai
85     Ensure Container Is Running  aai_simulator