Commit ee93c127 authored by Najam UI Hassan's avatar Najam UI Hassan
Browse files

New Resource NotificationConsumer added

parent 58ec3e6a
Loading
Loading
Loading
Loading
+185 −0
Original line number Original line Diff line number Diff line
*** Settings ***
Library           JSONSchemaLibrary    schemas/
Resource          environment/variables.txt
Library           OperatingSystem
Library           JSONLibrary
Library           String
Library           REST    ${NFVO_SCHEMA}://${NFVO_HOST}:${NFVO_PORT}    ssl_verify=false
Suite Setup    Check resource existence and get CallbackUri

*** Test Cases ***
NSD Onboarding Notification
    [Documentation]    Test ID: 5.3.1.15.1
    ...    Test title: NSD Onboarding Notification
    ...    Test objective: The objective is to test that NSD Onboarding Notification is delivered with success to the notification consumer.
    ...    Pre-conditions: A NSD management subscription for onboarding notification is available in the NFVO.
    ...    Reference: Clause 5.4.10.3.1 - ETSI GS NFV-SOL 005 [3] v2.7.1
    ...    Config ID: Config_prod_Notif_Endpoint
    ...    Applicability: none
    ...    Post-Conditions: none 
    Post NSD Onboarding Notification
    Check HTTP Response Status Code Is    204
    
NSD Onboarding Failure Notification
    [Documentation]    Test ID: 5.3.1.15.2
    ...    Test title: NSD Onboarding Failure Notification
    ...    Test objective: The objective is to test that NSD Onboarding Failure Notification is delivered with success to the notification consumer.
    ...    Pre-conditions: A NSD management subscription for onboarding failure notification is available in the NFVO.
    ...    Reference: Clause 5.4.10.3.1 - ETSI GS NFV-SOL 005 [3] v2.7.1
    ...    Config ID: Config_prod_Notif_Endpoint
    ...    Applicability: none
    ...    Post-Conditions: none 
    Post NSD Onboarding Failure Notification
    Check HTTP Response Status Code Is    204
    
NSD Change Notification
    [Documentation]    Test ID: 5.3.1.15.3
    ...    Test title: NSD Change Notification
    ...    Test objective: The objective is to test that NSD Change Notification is delivered with success to the notification consumer.
    ...    Pre-conditions: A NSD management subscription for change notification is available in the NFVO.
    ...    Reference: Clause 5.4.10.3.1 - ETSI GS NFV-SOL 005 [3] v2.7.1
    ...    Config ID: Config_prod_Notif_Endpoint
    ...    Applicability: none
    ...    Post-Conditions: none 
    Post NSD Change Notification
    Check HTTP Response Status Code Is    204
    
NSD Deletion Notification
    [Documentation]    Test ID: 5.3.1.15.4
    ...    Test title: NSD Deletion Notification
    ...    Test objective: The objective is to test that NSD Deletion Notification is delivered with success to the notification consumer.
    ...    Pre-conditions: A NSD management subscription for deletion notification is available in the NFVO.
    ...    Reference: Clause 5.4.10.3.1 - ETSI GS NFV-SOL 005 [3] v2.7.1
    ...    Config ID: Config_prod_Notif_Endpoint
    ...    Applicability: none
    ...    Post-Conditions: none 
    Post NSD Deletion Notification
    Check HTTP Response Status Code Is    204
    
Pnfd Onboarding Notification
    [Documentation]    Test ID: 5.3.1.15.5
    ...    Test title: Pnfd Onboarding Notification
    ...    Test objective: The objective is to test that Pnfd Onboarding Notification is delivered with success to the notification consumer.
    ...    Pre-conditions: A Pnfd management subscription for onboarding notification is available in the NFVO.
    ...    Reference: Clause 5.4.10.3.1 - ETSI GS NFV-SOL 005 [3] v2.7.1
    ...    Config ID: Config_prod_Notif_Endpoint
    ...    Applicability: none
    ...    Post-Conditions: none 
    Post Pnfd Onboarding Notification
    Check HTTP Response Status Code Is    204
    
Pnfd Onboarding Failure Notification
    [Documentation]    Test ID: 5.3.1.15.6
    ...    Test title: Pnfd Onboarding Failure Notification
    ...    Test objective: The objective is to test that Pnfd Onboarding Failure Notification is delivered with success to the notification consumer.
    ...    Pre-conditions: A Pnfd management subscription for onboarding failure notification is available in the NFVO.
    ...    Reference: Clause 5.4.10.3.1 - ETSI GS NFV-SOL 005 [3] v2.7.1
    ...    Config ID: Config_prod_Notif_Endpoint
    ...    Applicability: none
    ...    Post-Conditions: none 
    Post Pnfd Onboarding Failure Notification
    Check HTTP Response Status Code Is    204
    
Pnfd Deletion Notification
    [Documentation]    Test ID: 5.3.1.15.7
    ...    Test title: pnfd Deletion Notification
    ...    Test objective: The objective is to test that Pnfd Deletion Notification is delivered with success to the notification consumer.
    ...    Pre-conditions: A Pnfd management subscription for deletion notification is available in the NFVO.
    ...    Reference: Clause 5.4.10.3.1 - ETSI GS NFV-SOL 005 [3] v2.7.1
    ...    Config ID: Config_prod_Notif_Endpoint
    ...    Applicability: none
    ...    Post-Conditions: none 
    Post Pnfd Deletion Notification
    Check HTTP Response Status Code Is    204
    
*** Keywords ***
Check resource existence and get CallbackUri
    Set Headers  {"Accept":"${ACCEPT_JSON}"}  
    Set Headers  {"Content-Type": "${CONTENT_TYPE_JSON}"}
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
    Get    ${apiRoot}/${apiName}/${apiMajorVersion}/subscriptions/${subscriptionId}
    Integer    response status    200
    Validate Json    response body    PkgmSubscription.schema.json
    Set Global Variable    ${callbackResp}    response body callbackUri

Check HTTP Response Status Code Is
    [Arguments]    ${expected_status}    
    Should Be Equal As Strings    ${response['status']}    ${expected_status}
    Log    Status code validated 
    
Post NSD Onboarding Notification
    log    Trying to perform a POST to get notification
    Set Headers  {"Accept":"${ACCEPT_JSON}"}  
    Set Headers  {"Content-Type": "${CONTENT_TYPE_JSON}"}
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
    ${template} =    Get File    jsons/notifications/NsdOnBoardingNotification.json
    ${body}=        Format String   ${template}    subscriptionId=${subscriptionId}    nsdInfoId=${nsdInfoId} 
    Post    ${callbackResp}    ${body}
    ${outputResponse}=    Output    response
	Set Global Variable    ${response}    ${outputResponse}

Post NSD Onboarding Failure Notification
    log    Trying to perform a POST to get notification
    Set Headers  {"Accept":"${ACCEPT_JSON}"}  
    Set Headers  {"Content-Type": "${CONTENT_TYPE_JSON}"}
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
    ${template} =    Get File    jsons/notifications/NsdOnBoardingFailureNotification.json
    ${body}=        Format String   ${template}    subscriptionId=${subscriptionId}    nsdInfoId=${nsdInfoId} 
    Post    ${callbackResp}    ${body}
    ${outputResponse}=    Output    response
	Set Global Variable    ${response}    ${outputResponse}
	
Post NSD Change Notification
    log    Trying to perform a POST to get notification
    Set Headers  {"Accept":"${ACCEPT_JSON}"}  
    Set Headers  {"Content-Type": "${CONTENT_TYPE_JSON}"}
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
    ${template} =    Get File    jsons/notifications/NsdChangeNotification.json
    ${body}=        Format String   ${template}    subscriptionId=${subscriptionId}    nsdInfoId=${nsdInfoId} 
    Post    ${callbackResp}    ${body}
    ${outputResponse}=    Output    response
	Set Global Variable    ${response}    ${outputResponse}
	
Post NSD Deletion Notification
    log    Trying to perform a POST to get notification
    Set Headers  {"Accept":"${ACCEPT_JSON}"}  
    Set Headers  {"Content-Type": "${CONTENT_TYPE_JSON}"}
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
    ${template} =    Get File    jsons/notifications/NsdDeletionNotification.json
    ${body}=        Format String   ${template}    subscriptionId=${subscriptionId}    nsdInfoId=${nsdInfoId} 
    Post    ${callbackResp}    ${body}
    ${outputResponse}=    Output    response
	Set Global Variable    ${response}    ${outputResponse}
	
Post Pnfd Onboarding Notification
    log    Trying to perform a POST to get notification
    Set Headers  {"Accept":"${ACCEPT_JSON}"}  
    Set Headers  {"Content-Type": "${CONTENT_TYPE_JSON}"}
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
    ${template} =    Get File    jsons/notifications/PnfdOnBoardingNotification.json
    ${body}=        Format String   ${template}    subscriptionId=${subscriptionId}    pnfdInfoId=${pnfdInfoId} 
    Post    ${callbackResp}    ${body}
    ${outputResponse}=    Output    response
	Set Global Variable    ${response}    ${outputResponse}

Post Pnfd Onboarding Failure Notification
    log    Trying to perform a POST to get notification
    Set Headers  {"Accept":"${ACCEPT_JSON}"}  
    Set Headers  {"Content-Type": "${CONTENT_TYPE_JSON}"}
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
    ${template} =    Get File    jsons/notifications/PnfdOnBoardingFailureNotification.json
    ${body}=        Format String   ${template}    subscriptionId=${subscriptionId}    pnfdInfoId=${pnfdInfoId} 
    Post    ${callbackResp}    ${body}
    ${outputResponse}=    Output    response
	Set Global Variable    ${response}    ${outputResponse}
	
Post Pnfd Deletion Notification
    log    Trying to perform a POST to get notification
    Set Headers  {"Accept":"${ACCEPT_JSON}"}  
    Set Headers  {"Content-Type": "${CONTENT_TYPE_JSON}"}
    Run Keyword If    ${AUTH_USAGE} == 1    Set Headers    {"Authorization":"${AUTHORIZATION}"}
    ${template} =    Get File    jsons/notifications/pnfdDeletionNotification.json
    ${body}=        Format String   ${template}    subscriptionId=${subscriptionId}    pnfdInfoId=${pnfdInfoId} 
    Post    ${callbackResp}    ${body}
    ${outputResponse}=    Output    response
	Set Global Variable    ${response}    ${outputResponse}
 No newline at end of file
+2 −0
Original line number Original line Diff line number Diff line
@@ -90,3 +90,5 @@ ${userDefinedDataSet} some
${notifCallbackUri}     http://172.22.1.7:9091/nsd/subscriptions
${notifCallbackUri}     http://172.22.1.7:9091/nsd/subscriptions
${filter_ok}      callbackUri=${notifCallbackUri}
${filter_ok}      callbackUri=${notifCallbackUri}
${filter_ko}      nfvId=f9f130e4-05eb-4082-a676-4c97d13a883d    # Not existant filter attribute-based
${filter_ko}      nfvId=f9f130e4-05eb-4082-a676-4c97d13a883d    # Not existant filter attribute-based

${callbackResp}    127.0.0.1
 No newline at end of file
+10 −1
Original line number Original line Diff line number Diff line
{}
{{
 No newline at end of file
	"id":"",
	"notificationType":"NsdChangeNotification",
	"subscriptionId":"{subscriptionId}",
	"timeStamp":"",
	"nsdInfoId":"{nsdInfoId}",
	"nsdId":"",
	"nsdOperationalState":"ENABLED",
	"_links":""
}}
 No newline at end of file
+9 −1
Original line number Original line Diff line number Diff line
{}
{{
 No newline at end of file
	"id":"",
	"notificationType":"NsdDeletionNotification",
	"subscriptionId":"{subscriptionId}",
	"timeStamp":"",
	"nsdInfoId":"{nsdInfoId}",
	"nsdId":"",
	"_links":""
}}
 No newline at end of file
+9 −1
Original line number Original line Diff line number Diff line
{}
{{
 No newline at end of file
	"id":"",
	"notificationType":"NsdOnboardingFailureNotification",
	"subscriptionId":"{subscriptionId}",
	"timeStamp":"",
	"nsdInfoId":"{nsdInfoId}",
	"onboardingFailureDetails":"",
	"_links":""
}}
 No newline at end of file
Loading