Adapt 404 response when delete non-existent element
[integration/test.git] / csit / suites / sfc / SFC_Basic / 010__sfc_service_functions.robot
index 89d880635c45a224c5278ce0d072077e1497417b..b0dddd550f32a21cc6fda9d34c915bab94439bb2 100644 (file)
@@ -2,6 +2,7 @@
 Documentation     Test suite for SFC Service Functions, Operates functions from Restconf APIs.
 Suite Setup       Init Suite
 Suite Teardown    Delete All Sessions
+Test Setup        Remove All Elements If Exist    ${SERVICE_FUNCTIONS_URI}
 Library           SSHLibrary
 Library           Collections
 Library           OperatingSystem
@@ -35,21 +36,18 @@ Delete All Service Functions
 
 Get one Service Function
     [Documentation]    Get one Service Function
-    Remove All Elements At URI    ${SERVICE_FUNCTIONS_URI}
     Add Elements To URI From File    ${SERVICE_FUNCTIONS_URI}    ${SERVICE_FUNCTIONS_FILE}
     ${elements}=    Create List    dpi-102-1    dpi
     Check For Elements At URI    ${SERVICE_FUNCTIONS_URI}service-function/dpi-102-1    ${elements}
 
 Get A Non-existing Service Function
     [Documentation]    Get A Non-existing Service Function
-    Remove All Elements At URI    ${SERVICE_FUNCTIONS_URI}
     Add Elements To URI From File    ${SERVICE_FUNCTIONS_URI}    ${SERVICE_FUNCTIONS_FILE}
     ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTIONS_URI}service-function/non-existing-sf
     Should Be Equal As Strings    ${resp.status_code}    404
 
 Delete A Service Function
     [Documentation]    Delete A Service Function
-    Remove All Elements At URI    ${SERVICE_FUNCTIONS_URI}
     Add Elements To URI From File    ${SERVICE_FUNCTIONS_URI}    ${SERVICE_FUNCTIONS_FILE}
     Remove All Elements At URI    ${SERVICE_FUNCTIONS_URI}service-function/dpi-102-1
     ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTIONS_URI}
@@ -58,12 +56,12 @@ Delete A Service Function
 
 Delete A Non-existing Empty Service Function
     [Documentation]    Delete A Non existing Service Function
-    Remove All Elements At URI    ${SERVICE_FUNCTIONS_URI}
     Add Elements To URI From File    ${SERVICE_FUNCTIONS_URI}    ${SERVICE_FUNCTIONS_FILE}
     ${body}    OperatingSystem.Get File    ${SERVICE_FUNCTIONS_FILE}
     ${jsonbody}    To Json    ${body}
     ${functions}    Get From Dictionary    ${jsonbody}    service-functions
-    Remove All Elements At URI    ${SERVICE_FUNCTIONS_URI}service-function/non-existing-sf
+    ${resp}    RequestsLibrary.Delete Request    session    ${SERVICE_FUNCTIONS_URI}service-function/non-existing-sf
+    Should Be Equal As Strings    ${resp.status_code}    404
     ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTIONS_URI}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     ${result}    To JSON    ${resp.content}
@@ -72,7 +70,6 @@ Delete A Non-existing Empty Service Function
 
 Put one Service Function
     [Documentation]    Put one Service Function
-    Remove All Elements At URI    ${SERVICE_FUNCTIONS_URI}
     Add Elements To URI From File    ${SF_DPI102100_URI}    ${SF_DPI102100_FILE}
     ${elements}=    Create List    dpi-102-100    dpi
     Check For Elements At URI    ${SF_DPI102100_URI}    ${elements}
@@ -80,14 +77,12 @@ Put one Service Function
 
 Get Service Function DPL
     [Documentation]    Get Service Function Data Plane Locator
-    Remove All Elements At URI    ${SERVICE_FUNCTIONS_URI}
     Add Elements To URI From File    ${SF_DPI102100_URI}    ${SF_DPI102100_FILE}
     ${elements}=    Create List    100    10100
     Check For Elements At URI    ${SF_DPI102100_URI}sf-data-plane-locator/dpl-100    ${elements}
 
 Put Service Function DPL
     [Documentation]    Put Service Function Data Plane Locator
-    Remove All Elements At URI    ${SERVICE_FUNCTIONS_URI}
     Add Elements To URI From File    ${SF_DPI102100_URI}    ${SF_DPI102100_FILE}
     Add Elements To URI From File    ${SF_DPI102100_URI}sf-data-plane-locator/dpl-101    ${SF_DPL101_FILE}
     ${elements}=    Create List    dpl-101    10101
@@ -97,7 +92,6 @@ Put Service Function DPL
 Put Service Function DPL to a Non-existing Service Function
     [Documentation]    Put Service Function DPL to a Non-existing Service Function
     [Tags]    exclude
-    Remove All Elements At URI    ${SERVICE_FUNCTIONS_URI}
     Add Elements To URI From File    ${SF_DPI102100_URI}sf-data-plane-locator/dpl-101    ${SF_DPL101_FILE}
     ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTIONS_URI}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
@@ -108,17 +102,12 @@ Put Service Function DPL to a Non-existing Service Function
 
 Delete Service Function DPL
     [Documentation]    Delete Service Function Data Plane Locator
-    Remove All Elements At URI    ${SERVICE_FUNCTIONS_URI}
     Add Elements To URI From File    ${SF_DPI102100_URI}    ${SF_DPI102100_FILE}
     Remove All Elements At URI    ${SF_DPI102100_URI}sf-data-plane-locator/dpl-100
     ${resp}    RequestsLibrary.Get Request    session    ${SF_DPI102100_URI}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     Should Not Contain    ${resp.content}    dpl-100
 
-Clean Datastore After Tests
-    [Documentation]    Clean All Service Functions In Datastore After Tests
-    Remove All Elements At URI    ${SERVICE_FUNCTIONS_URI}
-
 *** Keywords ***
 Init Suite
     [Documentation]    Initialize session and ODL version specific variables