Refactor SFC CSIT Variables 84/74584/8
authorebrjohn <bjohnson@inocybe.com>
Fri, 27 Jul 2018 14:38:15 +0000 (16:38 +0200)
committerJamo Luhrsen <jluhrsen@redhat.com>
Mon, 6 Aug 2018 21:45:06 +0000 (21:45 +0000)
- remove trailing slashes in variable declarations
  to improve readability

Change-Id: I27e689ced191de9152cb3f12d30aaa73c4ac8287
Signed-off-by: Brady Johnson <bjohnson@inocybe.com>
17 files changed:
csit/libraries/SFC/SfcKeywords.robot
csit/suites/sfc/Full_Deploy/010__sfc_full_deploy.robot
csit/suites/sfc/Full_Deploy/011__sfc_service_paths.robot
csit/suites/sfc/Full_Deploy/012__sfc_service_paths_validation.robot
csit/suites/sfc/Full_Deploy/013__sfc_service_functions_logical.robot
csit/suites/sfc/Full_Deploy/014__sfc_service_forwarders_logical.robot
csit/suites/sfc/Full_Deploy/015__sfc_rendered_service_paths_logical.robot
csit/suites/sfc/SFC_Basic/010__sfc_service_functions.robot
csit/suites/sfc/SFC_Basic/020__sfc_service_forwarders.robot
csit/suites/sfc/SFC_Basic/030__sfc_service_nodes.robot
csit/suites/sfc/SFC_Basic/040__sfc_service_chains.robot
csit/suites/sfc/SFC_Basic/050__sfc_service_schedule_types.robot
csit/suites/sfc/SFC_Basic/060__sfc_service_paths.robot
csit/suites/sfc/SFC_Basic/070__sfc_rendered_service_paths.robot
csit/suites/sfc/SFC_Basic/120__sfc_service_function_acl.robot
csit/suites/sfc/SFC_Basic/140__sfc_service_function_classifier.robot
csit/variables/sfc/Variables.robot

index c40780155c8dd0a0f06baec9687ae41f151f4d82..158f44fe7ebb96a8979d2d3fc3ca80b8a8d734e4 100644 (file)
@@ -49,7 +49,7 @@ Check Rendered Service Path Deleted
 Get Rendered Service Path Name
     [Arguments]    ${sfp_name}    ${get_reverse}=False
     [Documentation]    Given an SFP name, do a get on ${SERVICE_FUNCTION_PATH_STATE_URI} to get the RSP name
-    ${resp} =    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_PATH_STATE_URI}${sfp_name}
+    ${resp} =    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_PATH_STATE_URI}/${sfp_name}
     BuiltIn.Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     # should be like this: {"service-function-path-state":[{"name":"SFC1-100","sfp-rendered-service-path":[{"name":"SFC1-100-Path-183"}]}]}
     ${sfp_rendered_service_path_list} =    Collections.Get_From_Dictionary    ${resp.json()}    service-function-path-state
@@ -83,13 +83,13 @@ Create Sfp And Wait For Rsp Creation
     \    ${status}    ${symmetric} =    BuiltIn.Run Keyword And Ignore Error    Collections.Get_From_Dictionary    ${sfp_entry_dict}    symmetric
     \    ${symmetric} =    BuiltIn.Set Variable If    "${status}" == "FAIL"    False    ${symmetric}
     \    ${num_names} =    BuiltIn.Set Variable If    "${symmetric}" == "False"    2    3
-    \    BuiltIn.Wait Until Keyword Succeeds    60s    2s    Utils.Check For Specific Number Of Elements At URI    ${SERVICE_FUNCTION_PATH_STATE_URI}${sfp_name}    name
+    \    BuiltIn.Wait Until Keyword Succeeds    60s    2s    Utils.Check For Specific Number Of Elements At URI    ${SERVICE_FUNCTION_PATH_STATE_URI}/${sfp_name}    name
     \    ...    ${num_names}
 
 Delete Sfp And Wait For Rsps Deletion
     [Arguments]    ${sfp_name}
     [Documentation]    Given an SFP name, delete it and wait for the associated SFP state and RSPs to be deleted
-    Utils.Remove All Elements At URI And Verify    ${SERVICE_FUNCTION_PATH_URI}${sfp_name}
+    Utils.Remove All Elements At URI And Verify    ${SERVICE_FUNCTION_PATH_URI}/${sfp_name}
     BuiltIn.Wait Until Keyword Succeeds    60s    2s    Check Rendered Service Path Deleted    ${sfp_name}
 
 Delete All Sfps And Wait For Rsps Deletion
index 515a6f0e8447a51b4e97ccc76cdc49978af671fb..95f713e0ae033939d7692613121c0ec6f8d3ea13 100644 (file)
@@ -37,9 +37,9 @@ Get Rendered Service Path By Name
     [Documentation]    Get Rendered Service Path By Name Through RESTConf APIs. Full Deploy
     # The RSP should be symetric, so 2 should be created for the SFP
     ${rsp_name} =    SfcKeywords.Get Rendered Service Path Name    ${SFP_NAME}
-    Utils.Get URI And Verify    ${OPERATIONAL_RSP_URI}${rsp_name}
+    Utils.Get URI And Verify    ${OPERATIONAL_RSP_URI}/${rsp_name}
     ${rsp_rev_name} =    SfcKeywords.Get Rendered Service Path Name    ${SFP_NAME}    True
-    Utils.Get URI And Verify    ${OPERATIONAL_RSP_URI}${rsp_rev_name}
+    Utils.Get URI And Verify    ${OPERATIONAL_RSP_URI}/${rsp_rev_name}
     ${elements} =    BuiltIn.Create List    ${rsp_name}    "parent-service-function-path":"${SFP_NAME}"    "hop-number":0    "service-index":255    "hop-number":1
     ...    "service-index":254
     Utils.Check For Elements At URI    ${OPERATIONAL_RSPS_URI}    ${elements}
index 910693f65abdc1afc7e583578a97d18d238b9e88..f94612439f8adf57803cbfb8ca46a2c57d4116b8 100644 (file)
@@ -7,6 +7,7 @@ Library           SSHLibrary
 Library           Collections
 Library           OperatingSystem
 Library           RequestsLibrary
+Resource          ../../../variables/sfc/Variables.robot
 Resource          ../../../variables/Variables.robot
 Resource          ../../../libraries/Utils.robot
 Resource          ../../../libraries/TemplatedRequests.robot
@@ -37,21 +38,21 @@ Get one Service Function Path
     [Documentation]    Get one Service Function Path
     Add Elements To URI From File    ${SERVICE_FUNCTION_PATHS_URI}    ${SERVICE_FUNCTION_PATHS_FILE}
     ${elements}=    Create List    SFC1-100    "service-chain-name":"SFC1"
-    Check For Elements At URI    ${SERVICE_FUNCTION_PATHS_URI}service-function-path/SFC1-100    ${elements}
+    Check For Elements At URI    ${SERVICE_FUNCTION_PATH_URI}/SFC1-100    ${elements}
 
 Get A Non-existing Service Function Path
     [Documentation]    Get A Non-existing Service Function Path
     Add Elements To URI From File    ${SERVICE_FUNCTION_PATHS_URI}    ${SERVICE_FUNCTION_PATHS_FILE}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_PATHS_URI}service-function-path/non-existing-sfp
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_PATH_URI}/non-existing-sfp
     Should Be Equal As Strings    ${resp.status_code}    404
 
 Delete A Service Function Path
     [Documentation]    Delete A Service Function Path
     Add Elements To URI From File    ${SERVICE_FUNCTION_PATHS_URI}    ${SERVICE_FUNCTION_PATHS_FILE}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_PATHS_URI}service-function-path/SFC1-100
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_PATH_URI}/SFC1-100
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
-    Remove All Elements At URI    ${SERVICE_FUNCTION_PATHS_URI}service-function-path/SFC1-100
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_PATHS_URI}service-function-path/SFC1-100
+    Remove All Elements At URI    ${SERVICE_FUNCTION_PATH_URI}/SFC1-100
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_PATH_URI}/SFC1-100
     Should Be Equal As Strings    ${resp.status_code}    404
     ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_PATHS_URI}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
@@ -63,7 +64,7 @@ Delete A Non-existing Empty Service Function Path
     ${body}    OperatingSystem.Get File    ${SERVICE_FUNCTION_PATHS_FILE}
     ${jsonbody}    To Json    ${body}
     ${paths}    Get From Dictionary    ${jsonbody}    service-function-paths
-    ${resp}    RequestsLibrary.Delete Request    session    ${SERVICE_FUNCTION_PATHS_URI}service-function-path/non-existing-sfp
+    ${resp}    RequestsLibrary.Delete Request    session    ${SERVICE_FUNCTION_PATH_URI}/non-existing-sfp
     Should Be Equal As Strings    ${resp.status_code}    404
     ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_PATHS_URI}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
@@ -87,7 +88,7 @@ Init Suite
     Create Session    session    http://${ODL_SYSTEM_IP}:${RESTCONFPORT}    auth=${AUTH}    headers=${HEADERS}
     log    ${ODL_STREAM}
     Set Suite Variable    ${VERSION_DIR}    master
-    Set Suite Variable    ${SERVICE_FUNCTION_PATHS_URI}    /restconf/config/service-function-path:service-function-paths/
-    Set Suite Variable    ${SERVICE_FUNCTION_PATHS_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-function-paths.json
-    Set Suite Variable    ${SERVICE_FUNCTION_PATH400_URI}    /restconf/config/service-function-path:service-function-paths/service-function-path/SFC1-400
-    Set Suite Variable    ${SERVICE_FUNCTION_PATH400_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/sfp_sfc1_path400.json
+    Set Suite Variable    ${TEST_DIR}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}
+    Set Suite Variable    ${SERVICE_FUNCTION_PATHS_FILE}    ${TEST_DIR}/service-function-paths.json
+    Set Suite Variable    ${SERVICE_FUNCTION_PATH400_URI}    ${SERVICE_FUNCTION_PATH_URI}/SFC1-400
+    Set Suite Variable    ${SERVICE_FUNCTION_PATH400_FILE}    ${TEST_DIR}/sfp_sfc1_path400.json
index 959c3270e7a8ccfb4665eeba4d1483076764f11a..d3e61e9e4c49111f7ab7bbef91152e76080fa263 100644 (file)
@@ -82,8 +82,6 @@ Init Suite
     Set Suite Variable    ${VERSION_DIR}    master
     Set Suite Variable    ${SFC_JSON_TEST_FILES_DIR}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}
     Set Suite Variable    ${SERVICE_FUNCTION_PATHS_FILE}    ${SFC_JSON_TEST_FILES_DIR}/service-function-paths.json
-    Set Suite Variable    ${SERVICE_FUNCTION_PATH400_URI}    ${SERVICE_FUNCTION_PATHS_URI}/SFC1-400
-    Set Suite Variable    ${SERVICE_FUNCTION_PATH400_FILE}    ${SFC_JSON_TEST_FILES_DIR}/sfp_sfc1_path400.json
     Set Suite Variable    ${SERVICE_FUNCTION_PATHS_WITH_HOP_FILE}    ${SFC_JSON_TEST_FILES_DIR}/service-function-paths-with-one-hop.json
     Set Suite Variable    ${SERVICE_FUNCTION_PATHS_WITH_THREE_HOPS_FILE}    ${SFC_JSON_TEST_FILES_DIR}/service-function-paths-with-three-hops-firewall-napt44-dpi.json
     Set Suite Variable    ${SERVICE_FUNCTIONS_FILE}    ${SFC_JSON_TEST_FILES_DIR}/service-functions.json
index 8b0230451dc202059ee30391430d310eb8125505..3b83eb260b6ff9874dc888b8a9ca5ff4a75fb87a 100644 (file)
@@ -15,7 +15,7 @@ Resource          ../../../libraries/TemplatedRequests.robot
 *** Variables ***
 ${VERSION_DIR}    master
 ${SERVICE_FUNCTIONS_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-functions-logicalsff.json
-${SF_DPI_URI}     ${SERVICE_FUNCTION_URI}dpi-1/
+${SF_DPI_URI}     ${SERVICE_FUNCTION_URI}/dpi-1/
 ${SF_DPI_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/sf_dpi.json
 
 *** Test Cases ***
@@ -45,18 +45,18 @@ Get one Service Function
     [Documentation]    Get one Service Function. Logical SFF
     Add Elements To URI From File    ${SERVICE_FUNCTIONS_URI}    ${SERVICE_FUNCTIONS_FILE}
     ${elements}=    Create List    firewall-1    firewall
-    Check For Elements At URI    ${SERVICE_FUNCTION_URI}firewall-1    ${elements}
+    Check For Elements At URI    ${SERVICE_FUNCTION_URI}/firewall-1    ${elements}
 
 Get A Non-existing Service Function
     [Documentation]    Get A Non-existing Service Function. Logical SFF
     Add Elements To URI From File    ${SERVICE_FUNCTIONS_URI}    ${SERVICE_FUNCTIONS_FILE}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_URI}non-existing-sf
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_URI}/non-existing-sf
     Should Be Equal As Strings    ${resp.status_code}    404
 
 Delete A Service Function
     [Documentation]    Delete A Service Function. Logical SFF
     Add Elements To URI From File    ${SERVICE_FUNCTIONS_URI}    ${SERVICE_FUNCTIONS_FILE}
-    Remove All Elements At URI    ${SERVICE_FUNCTION_URI}dpi-1
+    Remove All Elements At URI    ${SERVICE_FUNCTION_URI}/dpi-1
     ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTIONS_URI}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     Should Not Contain    ${resp.content}    dpi-1
@@ -67,7 +67,7 @@ Delete A Non-existing Empty Service Function
     ${body}    OperatingSystem.Get File    ${SERVICE_FUNCTIONS_FILE}
     ${jsonbody}    To Json    ${body}
     ${functions}    Get From Dictionary    ${jsonbody}    service-functions
-    ${resp}    RequestsLibrary.Delete Request    session    ${SERVICE_FUNCTION_URI}non-existing-sf
+    ${resp}    RequestsLibrary.Delete Request    session    ${SERVICE_FUNCTION_URI}/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}
index bf489fc99caaf341bdcb4174c146c5385849a868..8d686a2b795f5035393bb3ef689be6b90827d60b 100644 (file)
@@ -14,9 +14,10 @@ Resource          ../../../libraries/TemplatedRequests.robot
 
 *** Variables ***
 ${VERSION_DIR}    master
-${SERVICE_FORWARDERS_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-function-forwarders-logicallsff.json
-${SFF_SFFLOG_URI}    ${SERVICE_FORWARDER_URI}sfflogical1/
-${SFF_SFFLOG_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-function-forwarder-logicallsff1.json
+${TEST_DIR}       ${CURDIR}/../../../variables/sfc/${VERSION_DIR}
+${SERVICE_FORWARDERS_FILE}    ${TEST_DIR}/service-function-forwarders-logicallsff.json
+${SFF_SFFLOG_URI}    ${SERVICE_FORWARDER_URI}/sfflogical1
+${SFF_SFFLOG_FILE}    ${TEST_DIR}/service-function-forwarder-logicallsff1.json
 
 *** Test Cases ***
 Put Service Function Forwarders
@@ -47,16 +48,16 @@ Get one Service Function Forwarder
     [Tags]    include
     Add Elements To URI From File    ${SERVICE_FORWARDERS_URI}    ${SERVICE_FORWARDERS_FILE}
     ${elements}=    Create List    sfflogical1
-    Check For Elements At URI    ${SERVICE_FORWARDER_URI}sfflogical1    ${elements}
+    Check For Elements At URI    ${SFF_SFFLOG_URI}    ${elements}
 
 Delete A Service Function Forwarder
     [Documentation]    Delete A Service Function Forwarder. Logical SFF
     [Tags]    include
     Add Elements To URI From File    ${SERVICE_FORWARDERS_URI}    ${SERVICE_FORWARDERS_FILE}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FORWARDER_URI}sfflogical1
+    ${resp}    RequestsLibrary.Get Request    session    ${SFF_SFFLOG_URI}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
-    Remove All Elements At URI    ${SERVICE_FORWARDER_URI}sfflogical1
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FORWARDER_URI}sfflogical1
+    Remove All Elements At URI    ${SFF_SFFLOG_URI}
+    ${resp}    RequestsLibrary.Get Request    session    ${SFF_SFFLOG_URI}
     Should Be Equal As Strings    ${resp.status_code}    404
     ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FORWARDERS_URI}
     Should Be Equal As Strings    ${resp.status_code}    200
index eeeb0a49a74f7f0b90613b3be52a165d63573f35..063c17fc0b750a3195c8256401b6a4322143e033 100644 (file)
@@ -12,6 +12,21 @@ Resource          ../../../variables/sfc/Variables.robot
 Resource          ../../../libraries/Utils.robot
 Resource          ../../../libraries/TemplatedRequests.robot
 
+*** Variables ***
+${VERSION_DIR}    master
+${TEST_DIR}       ${CURDIR}/../../../variables/sfc/${VERSION_DIR}
+${SERVICE_FUNCTIONS_FILE}    ${TEST_DIR}/service-functions-logicalsff.json
+${SERVICE_FORWARDERS_FILE}    ${TEST_DIR}/service-function-forwarders-logicallsff.json
+${SERVICE_CHAINS_FILE}    ${TEST_DIR}/service-function-chains-logicalsff.json
+${SERVICE_FUNCTION_PATHS_FILE}    ${TEST_DIR}/service-function-paths-logicalsff.json
+${CREATE_RSP1_INPUT}    {"input":{"name": "RSP1","parent-service-function-path": "SFP1","symmetric": "true"}}
+${CREATE_RSP2_INPUT}    {"input":{"name": "RSP2","parent-service-function-path": "SFP2","symmetric": "true"}}
+${CREATE_RSP_FAILURE_INPUT}    {"input":{"name": "RSP1","parent-service-function-path": "SFP3","symmetric": "true"}}
+${DELETE_RSP1_INPUT}    {"input":{"name":"RSP1"}}
+${DELETE_RSP1_REVERSE_INPUT}    {"input":{"name":"RSP1-Reverse"}}
+${DELETE_RSP2_INPUT}    {"input":{"name":"RSP2"}}
+@{SF_NAMES}       "name":"firewall-1"    "name":"dpi-1"
+
 *** Test Cases ***
 Basic Environment Setup Tests
     [Documentation]    Prepare Basic Test Environment. Logical SFF
@@ -25,9 +40,9 @@ Get Rendered Service Path By Name
     [Documentation]    Get Rendered Service Path By Name Through RESTConf APIs. Logical SFF
     # The RSP should be symetric, so 2 should be created for the SFP
     ${rsp_name} =    SfcKeywords.Get Rendered Service Path Name    ${SFP_NAME}
-    Utils.Get URI And Verify    ${OPERATIONAL_RSP_URI}${rsp_name}
+    Utils.Get URI And Verify    ${OPERATIONAL_RSP_URI}/${rsp_name}
     ${rsp_name_rev} =    SfcKeywords.Get Rendered Service Path Name    ${SFP_NAME}
-    Utils.Get URI And Verify    ${OPERATIONAL_RSP_URI}${rsp_name_rev}
+    Utils.Get URI And Verify    ${OPERATIONAL_RSP_URI}/${rsp_name_rev}
     ${elements} =    Create List    "parent-service-function-path":"${SFP_NAME}"    "hop-number":0    "service-index":255    "hop-number":1    "service-index":254
     Utils.Check For Elements At URI    ${OPERATIONAL_RSPS_URI}    ${elements}
 
@@ -35,9 +50,9 @@ Delete one Rendered Service Path By Name
     [Documentation]    Delete One Rendered Service Path By Name Through RESTConf APIs. Logical SFF
     # First verify that the RSPs exist
     ${rsp_name} =    SfcKeywords.Get Rendered Service Path Name    ${SFP_NAME}
-    Utils.Get URI And Verify    ${OPERATIONAL_RSP_URI}${rsp_name}
+    Utils.Get URI And Verify    ${OPERATIONAL_RSP_URI}/${rsp_name}
     ${rsp_name_rev} =    SfcKeywords.Get Rendered Service Path Name    ${SFP_NAME}    True
-    Utils.Get URI And Verify    ${OPERATIONAL_RSP_URI}${rsp_name_rev}
+    Utils.Get URI And Verify    ${OPERATIONAL_RSP_URI}/${rsp_name_rev}
     # Delete the SFP, which will delete the RSPs
     SfcKeywords.Delete Sfp And Wait For Rsps Deletion    ${SFP_NAME}
 
@@ -47,10 +62,10 @@ Get Rendered Service Path Hop
     SfcKeywords.Create Sfp And Wait For Rsp Creation    ${SERVICE_FUNCTION_PATHS_FILE}
     ${rsp_name} =    SfcKeywords.Get Rendered Service Path Name    ${SFP_NAME}
     ${elements} =    BuiltIn.Create List    "hop-number":0    "service-index":255    "service-function-name":"dpi-1
-    Utils.Check For Elements At URI    ${OPERATIONAL_RSPS_URI}rendered-service-path/${rsp_name}/rendered-service-path-hop/0/    ${elements}
+    Utils.Check For Elements At URI    ${OPERATIONAL_RSP_URI}/${rsp_name}/rendered-service-path-hop/0/    ${elements}
     ${elements} =    BuiltIn.Create List    "hop-number":1    "service-index":254    "service-function-name":"firewall-1
-    Utils.Check For Elements At URI    ${OPERATIONAL_RSPS_URI}rendered-service-path/${rsp_name}/rendered-service-path-hop/1/    ${elements}
-    ${resp} =    RequestsLibrary.Get Request    session    ${OPERATIONAL_RSPS_URI}rendered-service-path/RSP1/rendered-service-path-hop/2/
+    Utils.Check For Elements At URI    ${OPERATIONAL_RSP_URI}/${rsp_name}/rendered-service-path-hop/1/    ${elements}
+    ${resp} =    RequestsLibrary.Get Request    session    ${OPERATIONAL_RSP_URI}/${rsp_name}/rendered-service-path-hop/2/
     BuiltIn.Should Be Equal As Strings    ${resp.status_code}    404
 
 *** Keywords ***
index 46060baecac1fbc4c5621e142c7c32af5c5dc9d8..2f3b7e5ead239b7f27f1f672f2d529626664626a 100644 (file)
@@ -38,18 +38,18 @@ Get one Service Function
     [Documentation]    Get one Service Function
     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}
+    Check For Elements At URI    ${SERVICE_FUNCTION_URI}/dpi-102-1    ${elements}
 
 Get A Non-existing Service Function
     [Documentation]    Get A Non-existing Service Function
     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
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_URI}/non-existing-sf
     Should Be Equal As Strings    ${resp.status_code}    404
 
 Delete A Service Function
     [Documentation]    Delete A Service Function
     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
+    Remove All Elements At URI    ${SERVICE_FUNCTION_URI}/dpi-102-1
     ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTIONS_URI}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     Should Not Contain    ${resp.content}    dpi-102-1
@@ -60,7 +60,7 @@ Delete A Non-existing Empty Service Function
     ${body}    OperatingSystem.Get File    ${SERVICE_FUNCTIONS_FILE}
     ${jsonbody}    To Json    ${body}
     ${functions}    Get From Dictionary    ${jsonbody}    service-functions
-    ${resp}    RequestsLibrary.Delete Request    session    ${SERVICE_FUNCTIONS_URI}service-function/non-existing-sf
+    ${resp}    RequestsLibrary.Delete Request    session    ${SERVICE_FUNCTION_URI}/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}
@@ -79,31 +79,31 @@ Get Service Function DPL
     [Documentation]    Get Service Function Data Plane Locator
     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}
+    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
     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}
+    Add Elements To URI From File    ${SF_DPI102100_URI}/sf-data-plane-locator/dpl-101    ${SF_DPL101_FILE}
     ${elements}=    Create List    dpl-101    10101
-    Check For Elements At URI    ${SF_DPI102100_URI}sf-data-plane-locator/dpl-101    ${elements}
+    Check For Elements At URI    ${SF_DPI102100_URI}/sf-data-plane-locator/dpl-101    ${elements}
     Check For Elements At URI    ${SF_DPI102100_URI}    ${elements}
 
 Put Service Function DPL to a Non-existing Service Function
     [Documentation]    Put Service Function DPL to a Non-existing Service Function
     [Tags]    exclude
-    Add Elements To URI From File    ${SF_DPI102100_URI}sf-data-plane-locator/dpl-101    ${SF_DPL101_FILE}
+    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}
     Should Contain    ${resp.content}    dpi-102-100
     ${elements}=    Create List    dpl-101    10101
-    Check For Elements At URI    ${SF_DPI102100_URI}sf-data-plane-locator/dpl-101    ${elements}
+    Check For Elements At URI    ${SF_DPI102100_URI}/sf-data-plane-locator/dpl-101    ${elements}
     Check For Elements At URI    ${SF_DPI102100_URI}    ${elements}
 
 Delete Service Function DPL
     [Documentation]    Delete Service Function Data Plane Locator
     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
+    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
@@ -114,8 +114,8 @@ Init Suite
     Create Session    session    http://${ODL_SYSTEM_IP}:${RESTCONFPORT}    auth=${AUTH}    headers=${HEADERS}
     log    ${ODL_STREAM}
     Set Suite Variable    ${VERSION_DIR}    master
-    Set Suite Variable    ${SERVICE_FUNCTIONS_URI}    /restconf/config/service-function:service-functions/
-    Set Suite Variable    ${SERVICE_FUNCTIONS_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-functions.json
-    Set Suite Variable    ${SF_DPI102100_URI}    /restconf/config/service-function:service-functions/service-function/dpi-102-100/
-    Set Suite Variable    ${SF_DPI102100_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/sf_dpi_102_100.json
-    Set Suite Variable    ${SF_DPL101_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/sf_dpl_101.json
+    Set Suite Variable    ${TEST_DIR}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}
+    Set Suite Variable    ${SERVICE_FUNCTIONS_FILE}    ${TEST_DIR}/service-functions.json
+    Set Suite Variable    ${SF_DPI102100_URI}    ${SERVICE_FUNCTION_URI}/dpi-102-100
+    Set Suite Variable    ${SF_DPI102100_FILE}    ${TEST_DIR}/sf_dpi_102_100.json
+    Set Suite Variable    ${SF_DPL101_FILE}    ${TEST_DIR}/sf_dpl_101.json
index 763be93babd3f5e40b9273829585eba014bd7f4a..cad9f16032b4173bc134b67b8df3f26b0287772d 100644 (file)
@@ -37,21 +37,21 @@ Get one Service Function Forwarder
     [Documentation]    Get one Service Function Forwarder
     Add Elements To URI From File    ${SERVICE_FORWARDERS_URI}    ${SERVICE_FORWARDERS_FILE}
     ${elements}=    Create List    SFF-bootstrap    service-locator:vxlan-gpe    SF1
-    Check For Elements At URI    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap    ${elements}
+    Check For Elements At URI    ${SFF_BOOTSTRAP_URI}    ${elements}
 
 Get A Non-existing Service Function Forwarder
     [Documentation]    Get A Non-existing Service Function Forwarder
     Add Elements To URI From File    ${SERVICE_FORWARDERS_URI}    ${SERVICE_FORWARDERS_FILE}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FORWARDERS_URI}service-function-forwarder/non-existing-sff
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FORWARDER_URI}/non-existing-sff
     Should Be Equal As Strings    ${resp.status_code}    404
 
 Delete A Service Function Forwarder
     [Documentation]    Delete A Service Function Forwarder
     Add Elements To URI From File    ${SERVICE_FORWARDERS_URI}    ${SERVICE_FORWARDERS_FILE}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap
+    ${resp}    RequestsLibrary.Get Request    session    ${SFF_BOOTSTRAP_URI}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
-    Remove All Elements At URI    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap
+    Remove All Elements At URI    ${SFF_BOOTSTRAP_URI}
+    ${resp}    RequestsLibrary.Get Request    session    ${SFF_BOOTSTRAP_URI}
     Should Be Equal As Strings    ${resp.status_code}    404
     ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FORWARDERS_URI}
     Should Be Equal As Strings    ${resp.status_code}    200
@@ -63,7 +63,7 @@ Delete A Non-existing Service Function Forwarder
     ${body}    OperatingSystem.Get File    ${SERVICE_FORWARDERS_FILE}
     ${jsonbody}    To Json    ${body}
     ${forwarders}    Get From Dictionary    ${jsonbody}    service-function-forwarders
-    ${resp}    RequestsLibrary.Delete Request    session    ${SERVICE_FORWARDERS_URI}service-function-forwarder/non-existing-sff
+    ${resp}    RequestsLibrary.Delete Request    session    ${SERVICE_FORWARDER_URI}/non-existing-sff
     Should Be Equal As Strings    ${resp.status_code}    404
     ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FORWARDERS_URI}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
@@ -84,30 +84,30 @@ Get Service Function Forwarder DPL
     [Documentation]    Get Service Function Data Plane Locator
     Add Elements To URI From File    ${SFF_OVS100_URI}    ${SFF_OVS100_FILE}
     ${elements}=    Create List    eth0    service-locator:vxlan-gpe
-    Check For Elements At URI    ${SFF_OVS100_URI}sff-data-plane-locator/eth0    ${elements}
+    Check For Elements At URI    ${SFF_OVS100_URI}/sff-data-plane-locator/eth0    ${elements}
 
 Put Service Function Forwarder DPL
     [Documentation]    Put Service Function Forwarder Data Plane Locator
     Add Elements To URI From File    ${SFF_OVS100_URI}    ${SFF_OVS100_FILE}
-    Add Elements To URI From File    ${SFF_OVS100_URI}sff-data-plane-locator/dpl-101    ${SFF_DPL101_FILE}
+    Add Elements To URI From File    ${SFF_OVS100_URI}/sff-data-plane-locator/dpl-101    ${SFF_DPL101_FILE}
     ${elements}=    Create List    dpl-101    6101
-    Check For Elements At URI    ${SFF_OVS100_URI}sff-data-plane-locator/dpl-101    ${elements}
+    Check For Elements At URI    ${SFF_OVS100_URI}/sff-data-plane-locator/dpl-101    ${elements}
     Check For Elements At URI    ${SFF_OVS100_URI}    ${elements}
 
 Put DPL to a Non-existing Service Function Forwarder
     [Documentation]    Put Service Function DPL to a Non-existing Service Function
-    Add Elements To URI From File    ${SFF_OVS100_URI}sff-data-plane-locator/dpl-101    ${SFF_DPL101_FILE}
+    Add Elements To URI From File    ${SFF_OVS100_URI}/sff-data-plane-locator/dpl-101    ${SFF_DPL101_FILE}
     ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FORWARDERS_URI}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     Should Contain    ${resp.content}    ovs-100
     ${elements}=    Create List    dpl-101    6101
-    Check For Elements At URI    ${SFF_OVS100_URI}sff-data-plane-locator/dpl-101    ${elements}
+    Check For Elements At URI    ${SFF_OVS100_URI}/sff-data-plane-locator/dpl-101    ${elements}
     Check For Elements At URI    ${SFF_OVS100_URI}    ${elements}
 
 Delete Service Function Forwarder DPL
     [Documentation]    Delete Service Function Forwarder Data Plane Locator
     Add Elements To URI From File    ${SFF_OVS100_URI}    ${SFF_OVS100_FILE}
-    Remove All Elements At URI    ${SFF_OVS100_URI}sff-data-plane-locator/eth0
+    Remove All Elements At URI    ${SFF_OVS100_URI}/sff-data-plane-locator/eth0
     ${resp}    RequestsLibrary.Get Request    session    ${SFF_OVS100_URI}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     Should Not Contain    ${resp.content}    "name":"eth0"
@@ -116,27 +116,27 @@ Get Service Function Forwarder DPL's Locator
     [Documentation]    Get Service Function Data Plane Locator
     Add Elements To URI From File    ${SFF_OVS100_URI}    ${SFF_OVS100_FILE}
     ${elements}=    Create List    6000    service-locator:vxlan-gpe
-    Check For Elements At URI    ${SFF_OVS100_URI}sff-data-plane-locator/eth0/data-plane-locator/    ${elements}
+    Check For Elements At URI    ${SFF_OVS100_URI}/sff-data-plane-locator/eth0/data-plane-locator/    ${elements}
 
 Put Service Function Forwarder DPL's Locator
     [Documentation]    Put Service Function Forwarder Data Plane Locator
     Add Elements To URI From File    ${SFF_OVS100_URI}    ${SFF_OVS100_FILE}
-    Add Elements To URI From File    ${SFF_OVS100_URI}sff-data-plane-locator/dpl-101    ${SFF_DPL101_FILE}
-    Add Elements To URI From File    ${SFF_OVS100_URI}sff-data-plane-locator/dpl-101/data-plane-locator/    ${SFF_DPL_LOCATOR_FILE}
+    Add Elements To URI From File    ${SFF_OVS100_URI}/sff-data-plane-locator/dpl-101    ${SFF_DPL101_FILE}
+    Add Elements To URI From File    ${SFF_OVS100_URI}/sff-data-plane-locator/dpl-101/data-plane-locator/    ${SFF_DPL_LOCATOR_FILE}
     ${elements}=    Create List    5000    service-locator:vxlan-gpe
-    Check For Elements At URI    ${SFF_OVS100_URI}sff-data-plane-locator/dpl-101/data-plane-locator    ${elements}
+    Check For Elements At URI    ${SFF_OVS100_URI}/sff-data-plane-locator/dpl-101/data-plane-locator    ${elements}
     ${elements}=    Create List    dpl-101    5000    service-locator:vxlan-gpe
-    Check For Elements At URI    ${SFF_OVS100_URI}sff-data-plane-locator/dpl-101    ${elements}
+    Check For Elements At URI    ${SFF_OVS100_URI}/sff-data-plane-locator/dpl-101    ${elements}
     Check For Elements At URI    ${SFF_OVS100_URI}    ${elements}
 
 Delete Service Function Forwarder DPL's Locator
     [Documentation]    Delete Service Function Forwarder Data Plane Locator
     [Tags]    exclude
     Add Elements To URI From File    ${SFF_OVS100_URI}    ${SFF_OVS100_FILE}
-    Add Elements To URI From File    ${SFF_OVS100_URI}sff-data-plane-locator/dpl-101    ${SFF_DPL101_FILE}
-    Add Elements To URI From File    ${SFF_OVS100_URI}sff-data-plane-locator/dpl-101/data-plane-locator/    ${SFF_DPL_LOCATOR_FILE}
-    Remove All Elements At URI    ${SFF_OVS100_URI}sff-data-plane-locator/dpl-101/data-plane-locator
-    ${resp}    RequestsLibrary.Get Request    session    ${SFF_OVS100_URI}sff-data-plane-locator/dpl-101
+    Add Elements To URI From File    ${SFF_OVS100_URI}/sff-data-plane-locator/dpl-101    ${SFF_DPL101_FILE}
+    Add Elements To URI From File    ${SFF_OVS100_URI}/sff-data-plane-locator/dpl-101/data-plane-locator    ${SFF_DPL_LOCATOR_FILE}
+    Remove All Elements At URI    ${SFF_OVS100_URI}/sff-data-plane-locator/dpl-101/data-plane-locator
+    ${resp}    RequestsLibrary.Get Request    session    ${SFF_OVS100_URI}/sff-data-plane-locator/dpl-101
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     Should Contain    ${resp.content}    dpl-101
     Should Not Contain    ${resp.content}    6101
@@ -150,17 +150,17 @@ Get Service Function Dictionary From SFF
     [Documentation]    Get Service Function Dictionary From SFF
     Add Elements To URI From File    ${SERVICE_FORWARDERS_URI}    ${SERVICE_FORWARDERS_FILE}
     ${elements}=    Create List    service-function-dictionary    SF1    SF1-DPL    eth0
-    Check For Elements At URI    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/service-function-dictionary/SF1    ${elements}
+    Check For Elements At URI    ${SFF_BOOTSTRAP_URI}/${SF_DICT_SF1_URI}    ${elements}
 
 Delete Service Function Dictionary From SFF
     [Documentation]    Delete Service Function Dictionary From SFF
     Add Elements To URI From File    ${SERVICE_FORWARDERS_URI}    ${SERVICE_FORWARDERS_FILE}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/service-function-dictionary/SF1
+    ${resp}    RequestsLibrary.Get Request    session    ${SFF_BOOTSTRAP_URI}/${SF_DICT_SF1_URI}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
-    Remove All Elements At URI    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/service-function-dictionary/SF1
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/service-function-dictionary/SF1
+    Remove All Elements At URI    ${SFF_BOOTSTRAP_URI}/${SF_DICT_SF1_URI}
+    ${resp}    RequestsLibrary.Get Request    session    ${SFF_BOOTSTRAP_URI}/${SF_DICT_SF1_URI}
     Should Be Equal As Strings    ${resp.status_code}    404
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/
+    ${resp}    RequestsLibrary.Get Request    session    ${SFF_BOOTSTRAP_URI}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     Should Contain    ${resp.content}    service-function-dictionary
     Should Not Contain    ${resp.content}    SF1
@@ -168,77 +168,77 @@ Delete Service Function Dictionary From SFF
 Put Service Function Dictionary to SFF
     [Documentation]    Put Service Function Dictionary to SFF
     Add Elements To URI From File    ${SERVICE_FORWARDERS_URI}    ${SERVICE_FORWARDERS_FILE}
-    Add Elements To URI From File    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/service-function-dictionary/SF100    ${SFF_SFD_SF100_FILE}
+    Add Elements To URI From File    ${SFF_BOOTSTRAP_URI}/service-function-dictionary/SF100    ${SFF_SFD_SF100_FILE}
     ${elements}=    Create List    SF100    SF2-DPL    eth0
-    Check For Elements At URI    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/service-function-dictionary/SF100    ${elements}
+    Check For Elements At URI    ${SFF_BOOTSTRAP_URI}/service-function-dictionary/SF100    ${elements}
     ${elements}=    create list    service-function-dictionary    SF100    SF2-DPL    eth0
-    Check For Elements At URI    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/    ${elements}
+    Check For Elements At URI    ${SFF_BOOTSTRAP_URI}    ${elements}
 
 Get Service Function Dictionary's DPL From SFF
     [Documentation]    Get Service Function Dictionary From SFF
     Add Elements To URI From File    ${SERVICE_FORWARDERS_URI}    ${SERVICE_FORWARDERS_FILE}
     ${elements}=    create list    sff-sf-data-plane-locator    SF1-DPL    eth0
-    Check For Elements At URI    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/service-function-dictionary/SF1/sff-sf-data-plane-locator/    ${elements}
+    Check For Elements At URI    ${SFF_BOOTSTRAP_URI}/${SF_DICT_SF1_URI}/sff-sf-data-plane-locator/    ${elements}
 
 Delete Service Function Dictionary's DPL From SFF
     [Documentation]    Delete Service Function Dictionary From SFF
     Add Elements To URI From File    ${SERVICE_FORWARDERS_URI}    ${SERVICE_FORWARDERS_FILE}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/service-function-dictionary/SF1/sff-sf-data-plane-locator/
+    ${resp}    RequestsLibrary.Get Request    session    ${SFF_BOOTSTRAP_URI}/${SF_DICT_SF1_URI}/sff-sf-data-plane-locator
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
-    Remove All Elements At URI    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/service-function-dictionary/SF1/sff-sf-data-plane-locator/
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/service-function-dictionary/SF1/sff-sf-data-plane-locator/
+    Remove All Elements At URI    ${SFF_BOOTSTRAP_URI}/${SF_DICT_SF1_URI}/sff-sf-data-plane-locator
+    ${resp}    RequestsLibrary.Get Request    session    ${SFF_BOOTSTRAP_URI}/${SF_DICT_SF1_URI}/sff-sf-data-plane-locator
     Should Be Equal As Strings    ${resp.status_code}    404
 
 Put DPL of Service Function Dictionary to SFF
     [Documentation]    Put DPL of Service Function Dictionary to SFF
     Add Elements To URI From File    ${SERVICE_FORWARDERS_URI}    ${SERVICE_FORWARDERS_FILE}
-    Add Elements To URI From File    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/service-function-dictionary/SF1/sff-sf-data-plane-locator/    ${SFF_SFD_LOCATOR_FILE}
+    Add Elements To URI From File    ${SFF_BOOTSTRAP_URI}/${SF_DICT_SF1_URI}/sff-sf-data-plane-locator    ${SFF_SFD_LOCATOR_FILE}
     ${elements}=    create list    sff-sf-data-plane-locator    SF2-DPL    eth0
-    Check For Elements At URI    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/service-function-dictionary/SF1/sff-sf-data-plane-locator/    ${elements}
-    Check For Elements At URI    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/service-function-dictionary/SF1/    ${elements}
+    Check For Elements At URI    ${SFF_BOOTSTRAP_URI}/${SF_DICT_SF1_URI}/sff-sf-data-plane-locator    ${elements}
+    Check For Elements At URI    ${SFF_BOOTSTRAP_URI}/${SF_DICT_SF1_URI}    ${elements}
 
 Get Connected SFF Dictionary From SFF
     [Documentation]    Get Connected SFF Dictionary Dictionary From SFF
     Add Elements To URI From File    ${SERVICE_FORWARDERS_URI}    ${SERVICE_FORWARDERS_FILE}
     ${elements}=    create list    connected-sff-dictionary    br-int-ovs-2    sff-sff-data-plane-locator
-    Check For Elements At URI    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/connected-sff-dictionary/br-int-ovs-2    ${elements}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FORWARDERS_URI}service-function-forwarder/br-int-ovs-2/connected-sff-dictionary/SFF-bootstrap
+    Check For Elements At URI    ${SFF_BOOTSTRAP_URI}/connected-sff-dictionary/br-int-ovs-2    ${elements}
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FORWARDER_URI}/br-int-ovs-2/connected-sff-dictionary/SFF-bootstrap
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     Should Contain    ${resp.content}    SFF-bootstrap
 
 Delete Connected SFF Dictionary From SFF
     [Documentation]    Delete Connected SFF Dictionary From SFF
     Add Elements To URI From File    ${SERVICE_FORWARDERS_URI}    ${SERVICE_FORWARDERS_FILE}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/connected-sff-dictionary/br-int-ovs-2
+    ${resp}    RequestsLibrary.Get Request    session    ${SFF_BOOTSTRAP_URI}/connected-sff-dictionary/br-int-ovs-2
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
-    Remove All Elements At URI    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/connected-sff-dictionary/br-int-ovs-2
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/connected-sff-dictionary/br-int-ovs-2
+    Remove All Elements At URI    ${SFF_BOOTSTRAP_URI}/connected-sff-dictionary/br-int-ovs-2
+    ${resp}    RequestsLibrary.Get Request    session    ${SFF_BOOTSTRAP_URI}/connected-sff-dictionary/br-int-ovs-2
     Should Be Equal As Strings    ${resp.status_code}    404
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/
+    ${resp}    RequestsLibrary.Get Request    session    ${SFF_BOOTSTRAP_URI}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     Should Not Contain    ${resp.content}    br-int-ovs-2
 
 Put Connected SFF Dictionary to SFF
     [Documentation]    Put Connected SFF Dictionary to SFF
     Add Elements To URI From File    ${SERVICE_FORWARDERS_URI}    ${SERVICE_FORWARDERS_FILE}
-    Add Elements To URI From File    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/connected-sff-dictionary/SFF100    ${SFF_CSD_SFF100_FILE}
+    Add Elements To URI From File    ${SFF_BOOTSTRAP_URI}/connected-sff-dictionary/SFF100    ${SFF_CSD_SFF100_FILE}
     ${elements}=    create list    SFF100    service-function-forwarder:open
-    Check For Elements At URI    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/connected-sff-dictionary/SFF100    ${elements}
-    Check For Elements At URI    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/    ${elements}
+    Check For Elements At URI    ${SFF_BOOTSTRAP_URI}/connected-sff-dictionary/SFF100    ${elements}
+    Check For Elements At URI    ${SFF_BOOTSTRAP_URI}    ${elements}
 
 Get Connected SFF Dictionary's DPL From SFF
     [Documentation]    Get Connected SFF Dictionary's DPL From SFF
     Add Elements To URI From File    ${SERVICE_FORWARDERS_URI}    ${SERVICE_FORWARDERS_FILE}
     ${elements}=    create list    sff-sff-data-plane-locator    5000    192.168.1.2
-    Check For Elements At URI    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/connected-sff-dictionary/br-int-ovs-2/sff-sff-data-plane-locator/    ${elements}
+    Check For Elements At URI    ${SFF_BOOTSTRAP_URI}/connected-sff-dictionary/br-int-ovs-2/sff-sff-data-plane-locator    ${elements}
 
 Put DPL of Connected SFF Dictionary to SFF
     [Documentation]    Put DPL of Connected SFF Dictionary to SFF
     Add Elements To URI From File    ${SERVICE_FORWARDERS_URI}    ${SERVICE_FORWARDERS_FILE}
-    Add Elements To URI From File    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/connected-sff-dictionary/br-int-ovs-2/sff-sff-data-plane-locator/    ${SFF_CSD_LOCATOR_FILE}
+    Add Elements To URI From File    ${SFF_BOOTSTRAP_URI}/connected-sff-dictionary/br-int-ovs-2/sff-sff-data-plane-locator    ${SFF_CSD_LOCATOR_FILE}
     ${elements}=    create list    sff-sff-data-plane-locator    6000    10.1.1.1
-    Check For Elements At URI    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/connected-sff-dictionary/br-int-ovs-2/sff-sff-data-plane-locator/    ${elements}
-    Check For Elements At URI    ${SERVICE_FORWARDERS_URI}service-function-forwarder/SFF-bootstrap/connected-sff-dictionary/br-int-ovs-2/    ${elements}
+    Check For Elements At URI    ${SFF_BOOTSTRAP_URI}/connected-sff-dictionary/br-int-ovs-2/sff-sff-data-plane-locator    ${elements}
+    Check For Elements At URI    ${SFF_BOOTSTRAP_URI}/connected-sff-dictionary/br-int-ovs-2    ${elements}
 
 *** keywords ***
 Init Suite
@@ -246,13 +246,15 @@ Init Suite
     Create Session    session    http://${ODL_SYSTEM_IP}:${RESTCONFPORT}    auth=${AUTH}    headers=${HEADERS}
     log    ${ODL_STREAM}
     Set Suite Variable    ${VERSION_DIR}    master
-    Set Suite Variable    ${SERVICE_FORWARDERS_URI}    /restconf/config/service-function-forwarder:service-function-forwarders/
-    Set Suite Variable    ${SERVICE_FORWARDERS_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-function-forwarders.json
-    Set Suite Variable    ${SFF_OVS100_URI}    /restconf/config/service-function-forwarder:service-function-forwarders/service-function-forwarder/ovs-100/
-    Set Suite Variable    ${SFF_OVS100_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/sff_ovs_100.json
-    Set Suite Variable    ${SFF_DPL101_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/sff_dpl_101.json
-    Set Suite Variable    ${SFF_DPL_LOCATOR_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/sff_dpl_locator.json
-    Set Suite Variable    ${SFF_SFD_SF100_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/sff_sfd_sf100.json
-    Set Suite Variable    ${SFF_SFD_LOCATOR_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/sff_sfd_locator.json
-    Set Suite Variable    ${SFF_CSD_SFF100_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/sff_csd_sff100.json
-    Set Suite Variable    ${SFF_CSD_LOCATOR_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/sff_csd_locator.json
+    Set Suite Variable    ${TEST_DIR}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}
+    Set Suite Variable    ${SERVICE_FORWARDERS_FILE}    ${TEST_DIR}/service-function-forwarders.json
+    Set Suite Variable    ${SFF_OVS100_URI}    ${SERVICE_FORWARDER_URI}/ovs-100
+    Set Suite Variable    ${SFF_BOOTSTRAP_URI}    ${SERVICE_FORWARDER_URI}/SFF-bootstrap
+    Set Suite Variable    ${SF_DICT_SF1_URI}    service-function-dictionary/SF1
+    Set Suite Variable    ${SFF_OVS100_FILE}    ${TEST_DIR}/sff_ovs_100.json
+    Set Suite Variable    ${SFF_DPL101_FILE}    ${TEST_DIR}/sff_dpl_101.json
+    Set Suite Variable    ${SFF_DPL_LOCATOR_FILE}    ${TEST_DIR}/sff_dpl_locator.json
+    Set Suite Variable    ${SFF_SFD_SF100_FILE}    ${TEST_DIR}/sff_sfd_sf100.json
+    Set Suite Variable    ${SFF_SFD_LOCATOR_FILE}    ${TEST_DIR}/sff_sfd_locator.json
+    Set Suite Variable    ${SFF_CSD_SFF100_FILE}    ${TEST_DIR}/sff_csd_sff100.json
+    Set Suite Variable    ${SFF_CSD_LOCATOR_FILE}    ${TEST_DIR}/sff_csd_locator.json
index 601c0f9f899e082ce7cd69f0482c132d730771a2..2b69878375f58db5e0b8defe05b371d9ac49d90f 100644 (file)
@@ -37,18 +37,18 @@ Get one Service Node
     [Documentation]    Get one Service Node
     Add Elements To URI From File    ${SERVICE_NODES_URI}    ${SERVICE_NODES_FILE}
     ${elements}=    Create List    node-101    firewall-101-2    10.3.1.101
-    Check For Elements At URI    ${SERVICE_NODES_URI}service-node/node-101    ${elements}
+    Check For Elements At URI    ${SERVICE_NODE_URI}/node-101    ${elements}
 
 Get A Non-existing Service Node
     [Documentation]    Get A Non-existing Service Node
     Add Elements To URI From File    ${SERVICE_NODES_URI}    ${SERVICE_NODES_FILE}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_NODES_URI}service-node/non-existing-sf
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_NODE_URI}/non-existing-sf
     Should Be Equal As Strings    ${resp.status_code}    404
 
 Delete A Service Node
     [Documentation]    Delete A Service Node
     Add Elements To URI From File    ${SERVICE_NODES_URI}    ${SERVICE_NODES_FILE}
-    Remove All Elements At URI    ${SERVICE_NODES_URI}service-node/node-101
+    Remove All Elements At URI    ${SERVICE_NODE_URI}/node-101
     ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_NODES_URI}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     Should Not Contain    ${resp.content}    node-101
@@ -59,7 +59,7 @@ Delete A Non-existing Service Node
     ${body}    OperatingSystem.Get File    ${SERVICE_NODES_FILE}
     ${jsonbody}    To Json    ${body}
     ${nodes}    Get From Dictionary    ${jsonbody}    service-nodes
-    ${resp}    RequestsLibrary.Delete Request    session    ${SERVICE_NODES_URI}service-node/non-existing-sn
+    ${resp}    RequestsLibrary.Delete Request    session    ${SERVICE_NODE_URI}/non-existing-sn
     Should Be Equal As Strings    ${resp.status_code}    404
     ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_NODES_URI}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
@@ -80,7 +80,7 @@ Init Suite
     Create Session    session    http://${ODL_SYSTEM_IP}:${RESTCONFPORT}    auth=${AUTH}    headers=${HEADERS}
     log    ${ODL_STREAM}
     Set Suite Variable    ${VERSION_DIR}    master
-    Set Suite Variable    ${SERVICE_NODES_URI}    /restconf/config/service-node:service-nodes/
-    Set Suite Variable    ${SERVICE_NODES_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-nodes.json
-    Set Suite Variable    ${SN_NODE100_URI}    /restconf/config/service-node:service-nodes/service-node/node-100
-    Set Suite Variable    ${SN_NODE100_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/sn_node_100.json
+    Set Suite Variable    ${TEST_DIR}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}
+    Set Suite Variable    ${SERVICE_NODES_FILE}    ${TEST_DIR}/service-nodes.json
+    Set Suite Variable    ${SN_NODE100_URI}    ${SERVICE_NODE_URI}/node-100
+    Set Suite Variable    ${SN_NODE100_FILE}    ${TEST_DIR}/sn_node_100.json
index 459a329ac502e129eab53ea447c93ec20914b0cd..c8003524b2a7fdd0806fb4699ba632493aebd5a7 100644 (file)
@@ -37,20 +37,20 @@ Get one Service Function Chain
     [Documentation]    Get one Service Function Chain
     Add Elements To URI From File    ${SERVICE_CHAINS_URI}    ${SERVICE_CHAINS_FILE}
     ${elements}=    Create List    SFC1    dpi-abstract1    napt44-abstract1    firewall-abstract1
-    Check For Elements At URI    ${SERVICE_CHAINS_URI}service-function-chain/SFC1    ${elements}
+    Check For Elements At URI    ${SERVICE_CHAIN_URI}/SFC1    ${elements}
 
 Get A Non-existing Service Function Chain
     [Documentation]    Get A Non-existing Service Function Chain
     Add Elements To URI From File    ${SERVICE_CHAINS_URI}    ${SERVICE_CHAINS_FILE}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_CHAINS_URI}service-function-chain/non-existing-sfc
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_CHAIN_URI}/non-existing-sfc
     Should Be Equal As Strings    ${resp.status_code}    404
 
 Delete A Service Function Chain
     [Documentation]    Delete A Service Function Chain
     Add Elements To URI From File    ${SERVICE_CHAINS_URI}    ${SERVICE_CHAINS_FILE}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_CHAINS_URI}service-function-chain/SFC1
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_CHAIN_URI}/SFC1
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
-    Remove All Elements At URI    ${SERVICE_CHAINS_URI}service-function-chain/SFC1
+    Remove All Elements At URI    ${SERVICE_CHAIN_URI}/SFC1
     ${elements}=    Create List    SFC1    dpi-abstract1    napt44-abstract1    firewall-abstract1
     Check For Elements Not At URI    ${SERVICE_CHAINS_URI}    ${elements}
 
@@ -60,7 +60,7 @@ Delete A Non-existing Service Function Chain
     ${body}    OperatingSystem.Get File    ${SERVICE_CHAINS_FILE}
     ${jsonbody}    To Json    ${body}
     ${chains}    Get From Dictionary    ${jsonbody}    service-function-chains
-    ${resp}    RequestsLibrary.Delete Request    session    ${SERVICE_CHAINS_URI}service-function-chain/non-existing-sfc
+    ${resp}    RequestsLibrary.Delete Request    session    ${SERVICE_CHAIN_URI}/non-existing-sfc
     Should Be Equal As Strings    ${resp.status_code}    404
     ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_CHAINS_URI}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
@@ -79,31 +79,31 @@ Get one Service Function From Chain
     [Documentation]    Get one Service Function From Chain
     Add Elements To URI From File    ${SERVICE_CHAINS_URI}    ${SERVICE_CHAINS_FILE}
     ${elements}=    Create List    dpi-abstract1    "order":0    "type":"dpi"
-    Check For Elements At URI    ${SERVICE_CHAINS_URI}service-function-chain/SFC1/sfc-service-function/dpi-abstract1    ${elements}
+    Check For Elements At URI    ${SERVICE_CHAIN_URI}/SFC1/sfc-service-function/dpi-abstract1    ${elements}
 
 Get A Non-existing Service Function From Chain
     [Documentation]    Get A Non-existing Service Function From Chain
     Add Elements To URI From File    ${SERVICE_CHAINS_URI}    ${SERVICE_CHAINS_FILE}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_CHAINS_URI}service-function-chain/SFC1/sfc-service-function/non-existing-sft
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_CHAIN_URI}/SFC1/sfc-service-function/non-existing-sft
     Should Be Equal As Strings    ${resp.status_code}    404
 
 Delete A Service Function From Chain
     [Documentation]    Delete A Service Function From Chain
     Add Elements To URI From File    ${SERVICE_CHAINS_URI}    ${SERVICE_CHAINS_FILE}
-    Remove All Elements At URI    ${SERVICE_CHAINS_URI}service-function-chain/SFC1/sfc-service-function/dpi-abstract1
+    Remove All Elements At URI    ${SERVICE_CHAIN_URI}/SFC1/sfc-service-function/dpi-abstract1
     ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_CHAINS_URI}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     Should Contain    ${resp.content}    SFC1
     ${elements}=    Create List    dpi-abstract1    service-function-type:dpi
-    Check For Elements Not At URI    ${SERVICE_CHAINS_URI}service-function-chain/SFC1/    ${elements}
+    Check For Elements Not At URI    ${SERVICE_CHAIN_URI}/SFC1    ${elements}
 
 Delete A Non-existing Service Function From Chain
     [Documentation]    Delete A Non existing Service Function From Chain
     Add Elements To URI From File    ${SERVICE_CHAINS_URI}    ${SERVICE_CHAINS_FILE}
-    ${resp}    RequestsLibrary.Delete Request    session    ${SERVICE_CHAINS_URI}service-function-chain/SFC1/sfc-service-function/non-existing-sft
+    ${resp}    RequestsLibrary.Delete Request    session    ${SERVICE_CHAIN_URI}/SFC1/sfc-service-function/non-existing-sft
     Should Be Equal As Strings    ${resp.status_code}    404
     ${elements}=    Create List    dpi-abstract1    napt44-abstract1    firewall-abstract1
-    Check For Elements At URI    ${SERVICE_CHAINS_URI}service-function-chain/SFC1    ${elements}
+    Check For Elements At URI    ${SERVICE_CHAIN_URI}/SFC1    ${elements}
     Check For Elements At URI    ${SERVICE_CHAINS_URI}    ${elements}
 
 Put one Service Function into Chain
@@ -121,9 +121,9 @@ Init Suite
     Create Session    session    http://${ODL_SYSTEM_IP}:${RESTCONFPORT}    auth=${AUTH}    headers=${HEADERS}
     log    ${ODL_STREAM}
     Set Suite Variable    ${VERSION_DIR}    master
-    Set Suite Variable    ${SERVICE_CHAINS_URI}    /restconf/config/service-function-chain:service-function-chains/
-    Set Suite Variable    ${SERVICE_CHAINS_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-function-chains.json
-    Set Suite Variable    ${SERVICE_CHAIN100_URI}    /restconf/config/service-function-chain:service-function-chains/service-function-chain/SFC100
-    Set Suite Variable    ${SERVICE_CHAIN100_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/sfc_chain_100.json
-    Set Suite Variable    ${SERVICE_CHAIN100_SFIDS_URI}    /restconf/config/service-function-chain:service-function-chains/service-function-chain/SFC100/sfc-service-function/ids-abstract100
-    Set Suite Variable    ${SERVICE_CHAIN100_SFIDS_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/sfc_chain_100_sfids.json
+    Set Suite Variable    ${TEST_DIR}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}
+    Set Suite Variable    ${SERVICE_CHAINS_FILE}    ${TEST_DIR}/service-function-chains.json
+    Set Suite Variable    ${SERVICE_CHAIN100_URI}    ${SERVICE_CHAIN_URI}/SFC100
+    Set Suite Variable    ${SERVICE_CHAIN100_FILE}    ${TEST_DIR}/sfc_chain_100.json
+    Set Suite Variable    ${SERVICE_CHAIN100_SFIDS_URI}    ${SERVICE_CHAIN100_URI}/sfc-service-function/ids-abstract100
+    Set Suite Variable    ${SERVICE_CHAIN100_SFIDS_FILE}    ${TEST_DIR}/sfc_chain_100_sfids.json
index 4424eece72f1bbee96c8613dfdf88bbf0c8916ab..2f76beaf9c1ddef1ad8ad185ebff0e99e97a3d55 100644 (file)
@@ -37,19 +37,19 @@ Get Ramdom Schedule Algorithm Type
     [Documentation]    Get Ramdom Schedule Algorithm Type
     Add Elements To URI From File    ${SERVICE_SCHED_TYPES_URI}    ${SERVICE_SCHED_TYPES_FILE}
     ${elements}=    Create List    random    "enabled":false    service-function-scheduler-type:random
-    Check For Elements At URI    ${SERVICE_SCHED_TYPES_URI}service-function-scheduler-type/service-function-scheduler-type:random    ${elements}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_SCHED_TYPES_URI}service-function-scheduler-type/service-function-scheduler-type:random
+    Check For Elements At URI    ${SERVICE_RANDOM_SCHED_TYPE_URI}    ${elements}
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_RANDOM_SCHED_TYPE_URI}
 
 Get A Non-existing Service Function Schedule Algorithm Type
     [Documentation]    Get A Non-existing Service Function Schedule Algorithm Type
     Add Elements To URI From File    ${SERVICE_SCHED_TYPES_URI}    ${SERVICE_SCHED_TYPES_FILE}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_SCHED_TYPES_URI}service-function-scheduler-type/service-function-scheduler-type:user-defined
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_SCHED_TYPE_URI_BASE}user-defined
     Should Be Equal As Strings    ${resp.status_code}    404
 
 Delete Ramdom Schedule Algorithm Type
     [Documentation]    Delete Ramdom Schedule Algorithm Type
     Add Elements To URI From File    ${SERVICE_SCHED_TYPES_URI}    ${SERVICE_SCHED_TYPES_FILE}
-    Remove All Elements At URI    ${SERVICE_SCHED_TYPES_URI}service-function-scheduler-type/service-function-scheduler-type:random
+    Remove All Elements At URI    ${SERVICE_RANDOM_SCHED_TYPE_URI}
     ${elements}=    Create List    random    service-function-scheduler-type:random
     Check For Elements Not At URI    ${SERVICE_SCHED_TYPES_URI}    ${elements}
 
@@ -59,7 +59,7 @@ Delete A Non-existing Service Function Schedule Algorithm Type
     ${body}    OperatingSystem.Get File    ${SERVICE_SCHED_TYPES_FILE}
     ${jsonbody}    To Json    ${body}
     ${types}    Get From Dictionary    ${jsonbody}    service-function-scheduler-types
-    ${resp}    RequestsLibrary.Delete Request    session    ${SERVICE_SCHED_TYPES_URI}service-function-scheduler-type/service-function-scheduler-type:user-defined
+    ${resp}    RequestsLibrary.Delete Request    session    ${SERVICE_SCHED_TYPE_URI_BASE}user-defined
     Should Be Equal As Strings    ${resp.status_code}    404
     ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_SCHED_TYPES_URI}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
@@ -80,7 +80,7 @@ Init Suite
     Create Session    session    http://${ODL_SYSTEM_IP}:${RESTCONFPORT}    auth=${AUTH}    headers=${HEADERS}
     log    ${ODL_STREAM}
     Set Suite Variable    ${VERSION_DIR}    master
-    Set Suite Variable    ${SERVICE_SCHED_TYPES_URI}    /restconf/config/service-function-scheduler-type:service-function-scheduler-types/
-    Set Suite Variable    ${SERVICE_SCHED_TYPES_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-schedule-types.json
-    Set Suite Variable    ${SERVICE_WSP_SCHED_TYPE_URI}    /restconf/config/service-function-scheduler-type:service-function-scheduler-types/service-function-scheduler-type/service-function-scheduler-type:weighted-shortest-path
-    Set Suite Variable    ${SERVICE_WSP_SCHED_TYPE_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-wsp-schedule-type.json
+    Set Suite Variable    ${TEST_DIR}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}
+    Set Suite Variable    ${SERVICE_SCHED_TYPES_FILE}    ${TEST_DIR}/service-schedule-types.json
+    Set Suite Variable    ${SERVICE_WSP_SCHED_TYPE_URI}    ${SERVICE_SCHED_TYPE_URI_BASE}weighted-shortest-path
+    Set Suite Variable    ${SERVICE_WSP_SCHED_TYPE_FILE}    ${TEST_DIR}/service-wsp-schedule-type.json
index f3bd49d524b3e1b74a7d994d5b8482792592729b..26e3750f0a3a35cbf66eb34f3013084e0a578a82 100644 (file)
@@ -37,21 +37,21 @@ Get one Service Function Path
     [Documentation]    Get one Service Function Path
     Add Elements To URI From File    ${SERVICE_FUNCTION_PATHS_URI}    ${SERVICE_FUNCTION_PATHS_FILE}
     ${elements}=    Create List    SFC1-100    "service-chain-name":"SFC1"
-    Check For Elements At URI    ${SERVICE_FUNCTION_PATHS_URI}service-function-path/SFC1-100    ${elements}
+    Check For Elements At URI    ${SERVICE_FUNCTION_PATH_URI}/SFC1-100    ${elements}
 
 Get A Non-existing Service Function Path
     [Documentation]    Get A Non-existing Service Function Path
     Add Elements To URI From File    ${SERVICE_FUNCTION_PATHS_URI}    ${SERVICE_FUNCTION_PATHS_FILE}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_PATHS_URI}service-function-path/non-existing-sfp
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_PATH_URI}/non-existing-sfp
     Should Be Equal As Strings    ${resp.status_code}    404
 
 Delete A Service Function Path
     [Documentation]    Delete A Service Function Path
     Add Elements To URI From File    ${SERVICE_FUNCTION_PATHS_URI}    ${SERVICE_FUNCTION_PATHS_FILE}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_PATHS_URI}service-function-path/SFC1-100
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_PATH_URI}/SFC1-100
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
-    Remove All Elements At URI    ${SERVICE_FUNCTION_PATHS_URI}service-function-path/SFC1-100
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_PATHS_URI}service-function-path/SFC1-100
+    Remove All Elements At URI    ${SERVICE_FUNCTION_PATH_URI}/SFC1-100
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_PATH_URI}/SFC1-100
     Should Be Equal As Strings    ${resp.status_code}    404
     ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_PATHS_URI}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
@@ -63,7 +63,7 @@ Delete A Non-existing Empty Service Function Path
     ${body}    OperatingSystem.Get File    ${SERVICE_FUNCTION_PATHS_FILE}
     ${jsonbody}    To Json    ${body}
     ${paths}    Get From Dictionary    ${jsonbody}    service-function-paths
-    ${resp}    RequestsLibrary.Delete Request    session    ${SERVICE_FUNCTION_PATHS_URI}service-function-path/non-existing-sfp
+    ${resp}    RequestsLibrary.Delete Request    session    ${SERVICE_FUNCTION_PATH_URI}/non-existing-sfp
     Should Be Equal As Strings    ${resp.status_code}    404
     ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_PATHS_URI}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
@@ -87,7 +87,7 @@ Init Suite
     Create Session    session    http://${ODL_SYSTEM_IP}:${RESTCONFPORT}    auth=${AUTH}    headers=${HEADERS}
     log    ${ODL_STREAM}
     Set Suite Variable    ${VERSION_DIR}    master
-    Set Suite Variable    ${SERVICE_FUNCTION_PATHS_URI}    /restconf/config/service-function-path:service-function-paths/
-    Set Suite Variable    ${SERVICE_FUNCTION_PATHS_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-function-paths.json
-    Set Suite Variable    ${SERVICE_FUNCTION_PATH400_URI}    /restconf/config/service-function-path:service-function-paths/service-function-path/SFC1-400
-    Set Suite Variable    ${SERVICE_FUNCTION_PATH400_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/sfp_sfc1_path400.json
+    Set Suite Variable    ${TEST_DIR}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}
+    Set Suite Variable    ${SERVICE_FUNCTION_PATHS_FILE}    ${TEST_DIR}/service-function-paths.json
+    Set Suite Variable    ${SERVICE_FUNCTION_PATH400_URI}    ${SERVICE_FUNCTION_PATH_URI}/SFC1-400
+    Set Suite Variable    ${SERVICE_FUNCTION_PATH400_FILE}    ${TEST_DIR}/sfp_sfc1_path400.json
index a2da4c1a8006ff21450121390d126a4fb5387a97..5b9cd03424345a59b4b4a08d4beb04d2dce14c14 100644 (file)
@@ -27,10 +27,10 @@ Get Rendered Service Path By Name
     [Documentation]    Get The Rendered Service Path Created in "Basic Environment Setup Tests" By Name Via RESTConf APIs
     ${sfp_name} =    BuiltIn.Set Variable    SFC1-100
     ${rsp_name} =    SfcKeywords.Get Rendered Service Path Name    ${sfp_name}
-    ${resp} =    RequestsLibrary.Get Request    session    ${OPERATIONAL_RSP_URI}${rsp_name}
+    ${resp} =    RequestsLibrary.Get Request    session    ${OPERATIONAL_RSP_URI}/${rsp_name}
     BuiltIn.Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     # The RSP should not be symetric, so only 1 should be created for the SFP
-    Utils.Check For Specific Number Of Elements At URI    ${SERVICE_FUNCTION_PATH_STATE_URI}${sfp_name}    "sfp-rendered-service-path"    1
+    Utils.Check For Specific Number Of Elements At URI    ${SERVICE_FUNCTION_PATH_STATE_URI}/${sfp_name}    "sfp-rendered-service-path"    1
     ${elements} =    BuiltIn.Create List    "parent-service-function-path":"SFC1-100"    "hop-number":0    "service-index":255    "hop-number":1    "service-index":254
     ...    "hop-number":2    "service-index":253
     Utils.Check For Elements At URI    ${OPERATIONAL_RSPS_URI}    ${elements}
@@ -39,15 +39,15 @@ Get Rendered Service Path Hop
     [Documentation]    Check Rendered Service Path Hops Created in "Basic Environment Setup Tests"
     ${sfp_name} =    BuiltIn.Set Variable    SFC1-100
     ${rsp_name} =    SfcKeywords.Get Rendered Service Path Name    ${sfp_name}
-    ${resp} =    RequestsLibrary.Get Request    session    ${OPERATIONAL_RSP_URI}${rsp_name}/rendered-service-path-hop/0/
+    ${resp} =    RequestsLibrary.Get Request    session    ${OPERATIONAL_RSP_URI}/${rsp_name}/rendered-service-path-hop/0/
     BuiltIn.Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     ${elements} =    BuiltIn.Create List    "hop-number":0    "service-index":255    "service-function-name":"dpi
-    Utils.Check For Elements At URI    ${OPERATIONAL_RSP_URI}${rsp_name}/rendered-service-path-hop/0/    ${elements}
+    Utils.Check For Elements At URI    ${OPERATIONAL_RSP_URI}/${rsp_name}/rendered-service-path-hop/0/    ${elements}
     ${elements} =    BuiltIn.Create List    "hop-number":1    "service-index":254    "service-function-name":"napt44
-    Utils.Check For Elements At URI    ${OPERATIONAL_RSP_URI}${rsp_name}/rendered-service-path-hop/1/    ${elements}
+    Utils.Check For Elements At URI    ${OPERATIONAL_RSP_URI}/${rsp_name}/rendered-service-path-hop/1/    ${elements}
     ${elements} =    BuiltIn.Create List    "hop-number":2    "service-index":253    "service-function-name":"firewall
-    Utils.Check For Elements At URI    ${OPERATIONAL_RSP_URI}${rsp_name}/rendered-service-path-hop/2/    ${elements}
-    ${resp} =    RequestsLibrary.Get Request    session    ${OPERATIONAL_RSP_URI}${rsp_name}/rendered-service-path-hop/3/
+    Utils.Check For Elements At URI    ${OPERATIONAL_RSP_URI}/${rsp_name}/rendered-service-path-hop/2/    ${elements}
+    ${resp} =    RequestsLibrary.Get Request    session    ${OPERATIONAL_RSP_URI}/${rsp_name}/rendered-service-path-hop/3/
     BuiltIn.Should Be Equal As Strings    ${resp.status_code}    404
 
 Delete one Rendered Service Path By Name
@@ -56,7 +56,7 @@ Delete one Rendered Service Path By Name
     ${sfp_name} =    BuiltIn.Set Variable    SFC2-200
     ${rsp_name} =    SfcKeywords.Get Rendered Service Path Name    ${sfp_name}
     # First verify that the RSP exists
-    ${resp} =    RequestsLibrary.Get Request    session    ${OPERATIONAL_RSP_URI}${rsp_name}
+    ${resp} =    RequestsLibrary.Get Request    session    ${OPERATIONAL_RSP_URI}/${rsp_name}
     BuiltIn.Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     SfcKeywords.Delete Sfp And Wait For Rsps Deletion    ${sfp_name}
 
@@ -70,11 +70,11 @@ Generate RSPs with Random Schedule Algorithm type
     ${sfp_name} =    BuiltIn.Set Variable    SFC1-100
     ${rsp_name} =    SfcKeywords.Get Rendered Service Path Name    ${sfp_name}
     ${elements} =    BuiltIn.Create List    "hop-number":0    "service-index":255    "service-function-name":"dpi
-    Utils.Check For Elements At URI    ${OPERATIONAL_RSP_URI}${rsp_name}/rendered-service-path-hop/0/    ${elements}
+    Utils.Check For Elements At URI    ${OPERATIONAL_RSP_URI}/${rsp_name}/rendered-service-path-hop/0/    ${elements}
     ${elements} =    BuiltIn.Create List    "hop-number":1    "service-index":254    "service-function-name":"napt44
-    Utils.Check For Elements At URI    ${OPERATIONAL_RSP_URI}${rsp_name}/rendered-service-path-hop/1/    ${elements}
+    Utils.Check For Elements At URI    ${OPERATIONAL_RSP_URI}/${rsp_name}/rendered-service-path-hop/1/    ${elements}
     ${elements} =    BuiltIn.Create List    "hop-number":2    "service-index":253    "service-function-name":"firewall
-    Utils.Check For Elements At URI    ${OPERATIONAL_RSP_URI}${rsp_name}/rendered-service-path-hop/2/    ${elements}
+    Utils.Check For Elements At URI    ${OPERATIONAL_RSP_URI}/${rsp_name}/rendered-service-path-hop/2/    ${elements}
 
 Generate RSPs with Round Robin Schedule Algorithm type
     [Documentation]    Generate RSPs with Round Robin Schedule Algorithm type
@@ -89,21 +89,21 @@ Generate RSPs with Round Robin Schedule Algorithm type
     ${rsp3_name} =    SfcKeywords.Get Rendered Service Path Name    SFC1-300
     ${rsp4_name} =    SfcKeywords.Get Rendered Service Path Name    SFC2-100
     ${rsp5_name} =    SfcKeywords.Get Rendered Service Path Name    SFC2-200
-    ${path1_hop0} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}${rsp1_name}/rendered-service-path-hop/0/
-    ${path1_hop1} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}${rsp1_name}/rendered-service-path-hop/1/
-    ${path1_hop2} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}${rsp1_name}/rendered-service-path-hop/2/
-    ${path2_hop0} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}${rsp1_name}/rendered-service-path-hop/0/
-    ${path2_hop1} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}${rsp1_name}/rendered-service-path-hop/1/
-    ${path2_hop2} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}${rsp1_name}/rendered-service-path-hop/2/
-    ${path3_hop0} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}${rsp1_name}/rendered-service-path-hop/0/
-    ${path3_hop1} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}${rsp1_name}/rendered-service-path-hop/1/
-    ${path3_hop2} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}${rsp1_name}/rendered-service-path-hop/2/
-    ${path4_hop0} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}${rsp1_name}/rendered-service-path-hop/0/
-    ${path4_hop1} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}${rsp1_name}/rendered-service-path-hop/1/
-    ${path4_hop2} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}${rsp1_name}/rendered-service-path-hop/2/
-    ${path5_hop0} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}${rsp1_name}/rendered-service-path-hop/0/
-    ${path5_hop1} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}${rsp1_name}/rendered-service-path-hop/1/
-    ${path5_hop2} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}${rsp1_name}/rendered-service-path-hop/2/
+    ${path1_hop0} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}/${rsp1_name}/rendered-service-path-hop/0/
+    ${path1_hop1} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}/${rsp1_name}/rendered-service-path-hop/1/
+    ${path1_hop2} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}/${rsp1_name}/rendered-service-path-hop/2/
+    ${path2_hop0} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}/${rsp1_name}/rendered-service-path-hop/0/
+    ${path2_hop1} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}/${rsp1_name}/rendered-service-path-hop/1/
+    ${path2_hop2} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}/${rsp1_name}/rendered-service-path-hop/2/
+    ${path3_hop0} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}/${rsp1_name}/rendered-service-path-hop/0/
+    ${path3_hop1} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}/${rsp1_name}/rendered-service-path-hop/1/
+    ${path3_hop2} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}/${rsp1_name}/rendered-service-path-hop/2/
+    ${path4_hop0} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}/${rsp1_name}/rendered-service-path-hop/0/
+    ${path4_hop1} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}/${rsp1_name}/rendered-service-path-hop/1/
+    ${path4_hop2} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}/${rsp1_name}/rendered-service-path-hop/2/
+    ${path5_hop0} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}/${rsp1_name}/rendered-service-path-hop/0/
+    ${path5_hop1} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}/${rsp1_name}/rendered-service-path-hop/1/
+    ${path5_hop2} =    SfcKeywords.Get JSON Elements From URI    ${OPERATIONAL_RSP_URI}/${rsp1_name}/rendered-service-path-hop/2/
     BuiltIn.Should Be Equal    ${path1_hop0}    ${path4_hop0}
     BuiltIn.Should Not Be Equal    ${path1_hop0}    ${path2_hop0}
     BuiltIn.Should Be Equal    ${path1_hop1}    ${path4_hop1}
@@ -136,29 +136,29 @@ Generate RSPs with Shortest Path Schedule Algorithm type
     ${rsp4_name} =    SfcKeywords.Get Rendered Service Path Name    SFC2-100
     ${rsp5_name} =    SfcKeywords.Get Rendered Service Path Name    SFC2-200
     ${elements} =    BuiltIn.Create List    "hop-number":0    "service-index":255    "service-function-name":"dpi-1
-    Utils.Check For Elements At URI    ${OPERATIONAL_RSP_URI}${rsp1_name}/rendered-service-path-hop/0/    ${elements}
+    Utils.Check For Elements At URI    ${OPERATIONAL_RSP_URI}/${rsp1_name}/rendered-service-path-hop/0/    ${elements}
     ${elements} =    BuiltIn.Create List    "hop-number":1    "service-index":254    "service-function-name":"napt44
-    Utils.Check For Elements At URI    ${OPERATIONAL_RSP_URI}${rsp1_name}/rendered-service-path-hop/1/    ${elements}
+    Utils.Check For Elements At URI    ${OPERATIONAL_RSP_URI}/${rsp1_name}/rendered-service-path-hop/1/    ${elements}
     ${elements} =    BuiltIn.Create List    "hop-number":2    "service-index":253    "service-function-name":"firewall
-    Utils.Check For Elements At URI    ${OPERATIONAL_RSP_URI}${rsp1_name}/rendered-service-path-hop/2/    ${elements}
-    ${resp} =    RequestsLibrary.Get Request    session    ${OPERATIONAL_RSP_URI}${rsp1_name}/rendered-service-path-hop/0/
+    Utils.Check For Elements At URI    ${OPERATIONAL_RSP_URI}/${rsp1_name}/rendered-service-path-hop/2/    ${elements}
+    ${resp} =    RequestsLibrary.Get Request    session    ${OPERATIONAL_RSP_URI}/${rsp1_name}/rendered-service-path-hop/0/
     BuiltIn.Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     ${fwd_hop1} =    Utils.Extract Value From Content    ${resp.content}    /rendered-service-path-hop/0/service-function-forwarder
-    ${resp} =    RequestsLibrary.Get Request    session    ${OPERATIONAL_RSP_URI}${rsp1_name}/rendered-service-path-hop/1/
+    ${resp} =    RequestsLibrary.Get Request    session    ${OPERATIONAL_RSP_URI}/${rsp1_name}/rendered-service-path-hop/1/
     BuiltIn.Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     ${fwd_hop2} =    Utils.Extract Value From Content    ${resp.content}    /rendered-service-path-hop/0/service-function-forwarder
-    ${resp} =    RequestsLibrary.Get Request    session    ${OPERATIONAL_RSP_URI}${rsp1_name}/rendered-service-path-hop/2/
+    ${resp} =    RequestsLibrary.Get Request    session    ${OPERATIONAL_RSP_URI}/${rsp1_name}/rendered-service-path-hop/2/
     BuiltIn.Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     ${fwd_hop3} =    Utils.Extract Value From Content    ${resp.content}    /rendered-service-path-hop/0/service-function-forwarder
     BuiltIn.Should Be Equal    ${fwd_hop1}    ${fwd_hop2}
     BuiltIn.Should Be Equal    ${fwd_hop2}    ${fwd_hop3}
-    ${resp} =    RequestsLibrary.Get Request    session    ${OPERATIONAL_RSP_URI}${rsp2_name}/rendered-service-path-hop/0/
+    ${resp} =    RequestsLibrary.Get Request    session    ${OPERATIONAL_RSP_URI}/${rsp2_name}/rendered-service-path-hop/0/
     BuiltIn.Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     ${fwd_hop1} =    Utils.Extract Value From Content    ${resp.content}    /rendered-service-path-hop/0/service-function-forwarder
-    ${resp} =    RequestsLibrary.Get Request    session    ${OPERATIONAL_RSP_URI}${rsp2_name}/rendered-service-path-hop/1/
+    ${resp} =    RequestsLibrary.Get Request    session    ${OPERATIONAL_RSP_URI}/${rsp2_name}/rendered-service-path-hop/1/
     BuiltIn.Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     ${fwd_hop2} =    Utils.Extract Value From Content    ${resp.content}    /rendered-service-path-hop/0/service-function-forwarder
-    ${resp} =    RequestsLibrary.Get Request    session    ${OPERATIONAL_RSP_URI}${rsp2_name}/rendered-service-path-hop/2/
+    ${resp} =    RequestsLibrary.Get Request    session    ${OPERATIONAL_RSP_URI}/${rsp2_name}/rendered-service-path-hop/2/
     BuiltIn.Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     ${fwd_hop3} =    Utils.Extract Value From Content    ${resp.content}    /rendered-service-path-hop/0/service-function-forwarder
     BuiltIn.Should Be Equal    ${fwd_hop1}    ${fwd_hop2}
@@ -181,14 +181,15 @@ Init Suite
     RequestsLibrary.Create Session    session    http://${ODL_SYSTEM_IP}:${RESTCONFPORT}    auth=${AUTH}    headers=${HEADERS}
     BuiltIn.log    ${ODL_STREAM}
     BuiltIn.Set Suite Variable    ${VERSION_DIR}    master
-    BuiltIn.Set Suite Variable    ${SERVICE_FUNCTIONS_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-functions.json
+    BuiltIn.Set Suite Variable    ${TEST_DIR}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}
+    BuiltIn.Set Suite Variable    ${SERVICE_FUNCTIONS_FILE}    ${TEST_DIR}/service-functions.json
     BuiltIn.Set Suite Variable    @{SERVICE_FUNCTION_NAMES}    "napt44-103-2"    "napt44-103-1"    "dpi-102-2"    "firewall-101-2"    "napt44-104"
     ...    "dpi-102-1"    "firewall-104"    "dpi-102-3"    "firewall-101-1"
-    BuiltIn.Set Suite Variable    ${SERVICE_FORWARDERS_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-function-forwarders.json
-    BuiltIn.Set Suite Variable    ${SERVICE_NODES_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-nodes.json
-    BuiltIn.Set Suite Variable    ${SERVICE_CHAINS_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-function-chains.json
-    BuiltIn.Set Suite Variable    ${SERVICE_FUNCTION_PATHS_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-function-paths.json
-    BuiltIn.Set Suite Variable    ${SERVICE_RANDOM_SCHED_TYPE_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-random-schedule-type.json
-    BuiltIn.Set Suite Variable    ${SERVICE_ROUNDROBIN_SCHED_TYPE_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-roundrobin-schedule-type.json
-    BuiltIn.Set Suite Variable    ${SERVICE_LOADBALANCE_SCHED_TYPE_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-loadbalance-schedule-type.json
-    BuiltIn.Set Suite Variable    ${SERVICE_SHORTESTPATH_SCHED_TYPE_FILE}    ${CURDIR}/../../../variables/sfc/${VERSION_DIR}/service-shortestpath-schedule-type.json
+    BuiltIn.Set Suite Variable    ${SERVICE_FORWARDERS_FILE}    ${TEST_DIR}/service-function-forwarders.json
+    BuiltIn.Set Suite Variable    ${SERVICE_NODES_FILE}    ${TEST_DIR}/service-nodes.json
+    BuiltIn.Set Suite Variable    ${SERVICE_CHAINS_FILE}    ${TEST_DIR}/service-function-chains.json
+    BuiltIn.Set Suite Variable    ${SERVICE_FUNCTION_PATHS_FILE}    ${TEST_DIR}/service-function-paths.json
+    BuiltIn.Set Suite Variable    ${SERVICE_RANDOM_SCHED_TYPE_FILE}    ${TEST_DIR}/service-random-schedule-type.json
+    BuiltIn.Set Suite Variable    ${SERVICE_ROUNDROBIN_SCHED_TYPE_FILE}    ${TEST_DIR}/service-roundrobin-schedule-type.json
+    BuiltIn.Set Suite Variable    ${SERVICE_LOADBALANCE_SCHED_TYPE_FILE}    ${TEST_DIR}/service-loadbalance-schedule-type.json
+    BuiltIn.Set Suite Variable    ${SERVICE_SHORTESTPATH_SCHED_TYPE_FILE}    ${TEST_DIR}/service-shortestpath-schedule-type.json
index f60c3d3a7dc26cbb18c3d019d7c425d1ff3f1c86..137a1d9d09d7ec17b52754de6df3d7c2fb192b9d 100644 (file)
@@ -2,8 +2,8 @@
 Documentation     Test suite for SFC Service Function ACL, Operates functions from Restconf APIs.
 Suite Setup       Create Session    session    http://${ODL_SYSTEM_IP}:${RESTCONFPORT}    auth=${AUTH}    headers=${HEADERS}
 Suite Teardown    Delete All Sessions
-Test Setup        Remove All Elements If Exist    ${SERVICE_FUNCTION_ACL_URI}
-Test Teardown     Remove All Elements At URI    ${SERVICE_FUNCTION_ACL_URI}
+Test Setup        Remove All Elements If Exist    ${SERVICE_FUNCTION_ACLS_URI}
+Test Teardown     Remove All Elements At URI    ${SERVICE_FUNCTION_ACLS_URI}
 Library           SSHLibrary
 Library           Collections
 Library           OperatingSystem
@@ -12,17 +12,16 @@ Resource          ../../../variables/sfc/Variables.robot
 Resource          ../../../libraries/Utils.robot
 
 *** Variables ***
-${SERVICE_FUNCTION_ACL_URI}    /restconf/config/ietf-access-control-list:access-lists/
 ${SERVICE_FUNCTION_ACL_FILE}    ${CURDIR}/../../../variables/sfc/master/service-function-acl.json
 
 *** Test Cases ***
 Add ACL
     [Documentation]    Add Service Function ACL from JSON file
-    Add Elements To URI From File    ${SERVICE_FUNCTION_ACL_URI}    ${SERVICE_FUNCTION_ACL_FILE}
+    Add Elements To URI From File    ${SERVICE_FUNCTION_ACLS_URI}    ${SERVICE_FUNCTION_ACL_FILE}
     ${body}    OperatingSystem.Get File    ${SERVICE_FUNCTION_ACL_FILE}
     ${jsonbody}    To Json    ${body}
     ${functions}    Get From Dictionary    ${jsonbody}    access-lists
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_ACL_URI}
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_ACLS_URI}
     ${result}    To JSON    ${resp.content}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     ${function}    Get From Dictionary    ${result}    access-lists
@@ -31,30 +30,30 @@ Add ACL
 Delete All ACLs
     [Documentation]    Delete all ACL
     ${body}    OperatingSystem.Get File    ${SERVICE_FUNCTION_ACL_FILE}
-    Add Elements To URI From File    ${SERVICE_FUNCTION_ACL_URI}    ${SERVICE_FUNCTION_ACL_FILE}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_ACL_URI}
+    Add Elements To URI From File    ${SERVICE_FUNCTION_ACLS_URI}    ${SERVICE_FUNCTION_ACL_FILE}
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_ACLS_URI}
     Should Be Equal As Strings    ${resp.status_code}    200
-    Remove All Elements At URI    ${SERVICE_FUNCTION_ACL_URI}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_ACL_URI}
+    Remove All Elements At URI    ${SERVICE_FUNCTION_ACLS_URI}
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_ACLS_URI}
     Should Be Equal As Strings    ${resp.status_code}    404
     [Teardown]    NONE
 
 Get one ACL
     [Documentation]    Get one ACL
-    Add Elements To URI From File    ${SERVICE_FUNCTION_ACL_URI}    ${SERVICE_FUNCTION_ACL_FILE}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_ACL_URI}acl/ietf-access-control-list:ipv4-acl/ACL1
+    Add Elements To URI From File    ${SERVICE_FUNCTION_ACLS_URI}    ${SERVICE_FUNCTION_ACL_FILE}
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_ACLS_URI}/acl/ietf-access-control-list:ipv4-acl/ACL1
     Should Be Equal As Strings    ${resp.status_code}    200
 
 Get A Non-existing ACL
     [Documentation]    Get A Non-existing ACL
-    Add Elements To URI From File    ${SERVICE_FUNCTION_ACL_URI}    ${SERVICE_FUNCTION_ACL_FILE}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_ACL_URI}acl/unexisting-acl
+    Add Elements To URI From File    ${SERVICE_FUNCTION_ACLS_URI}    ${SERVICE_FUNCTION_ACL_FILE}
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_ACLS_URI}/acl/unexisting-acl
     Should Be Equal As Strings    ${resp.status_code}    404
 
 Delete An ACL
     [Documentation]    Delete an ACL
-    Add Elements To URI From File    ${SERVICE_FUNCTION_ACL_URI}    ${SERVICE_FUNCTION_ACL_FILE}
-    Remove All Elements At URI    ${SERVICE_FUNCTION_ACL_URI}acl/ietf-access-control-list:ipv4-acl/ACL1
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_ACL_URI}
+    Add Elements To URI From File    ${SERVICE_FUNCTION_ACLS_URI}    ${SERVICE_FUNCTION_ACL_FILE}
+    Remove All Elements At URI    ${SERVICE_FUNCTION_ACLS_URI}/acl/ietf-access-control-list:ipv4-acl/ACL1
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_FUNCTION_ACLS_URI}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     Should Not Contain    ${resp.content}    ACL1
index 7b669feb44b8f757ee54aa2ee37b09aaf54050c8..d2a2beb5d664412a7c9f4a221e39abf5d3e1e000 100644 (file)
@@ -2,8 +2,8 @@
 Documentation     Test suite for SFC Service Function Classifiers, Operates functions from Restconf APIs.
 Suite Setup       Create Session    session    http://${ODL_SYSTEM_IP}:${RESTCONFPORT}    auth=${AUTH}    headers=${HEADERS}
 Suite Teardown    Delete All Sessions
-Test Setup        Remove All Elements If Exist    ${SERVICE_CLASSIFIER_URI}
-Test Teardown     Remove All Elements At URI    ${SERVICE_CLASSIFIER_URI}
+Test Setup        Remove All Elements If Exist    ${SERVICE_CLASSIFIERS_URI}
+Test Teardown     Remove All Elements At URI    ${SERVICE_CLASSIFIERS_URI}
 Library           SSHLibrary
 Library           Collections
 Library           OperatingSystem
@@ -12,17 +12,16 @@ Resource          ../../../variables/sfc/Variables.robot
 Resource          ../../../libraries/Utils.robot
 
 *** Variables ***
-${SERVICE_CLASSIFIER_URI}    /restconf/config/service-function-classifier:service-function-classifiers/
 ${SERVICE_CLASSIFIER_FILE}    ${CURDIR}/../../../variables/sfc/master/service-function-classifiers.json
 
 *** Test Cases ***
 Add Service Function Classifier
     [Documentation]    Add Service Function Classifiers from JSON file
-    Add Elements To URI From File    ${SERVICE_CLASSIFIER_URI}    ${SERVICE_CLASSIFIER_FILE}
+    Add Elements To URI From File    ${SERVICE_CLASSIFIERS_URI}    ${SERVICE_CLASSIFIER_FILE}
     ${body}    OperatingSystem.Get File    ${SERVICE_CLASSIFIER_FILE}
     ${jsonbody}    To Json    ${body}
     ${functions}    Get From Dictionary    ${jsonbody}    service-function-classifiers
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_CLASSIFIER_URI}
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_CLASSIFIERS_URI}
     ${result}    To JSON    ${resp.content}
     Should Be Equal As Strings    ${resp.status_code}    200
     ${function}    Get From Dictionary    ${result}    service-function-classifiers
@@ -31,30 +30,30 @@ Add Service Function Classifier
 Delete All Classifiers
     [Documentation]    Delete all Classifiers
     ${body}    OperatingSystem.Get File    ${SERVICE_CLASSIFIER_FILE}
-    Add Elements To URI From File    ${SERVICE_CLASSIFIER_URI}    ${SERVICE_CLASSIFIER_FILE}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_CLASSIFIER_URI}
+    Add Elements To URI From File    ${SERVICE_CLASSIFIERS_URI}    ${SERVICE_CLASSIFIER_FILE}
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_CLASSIFIERS_URI}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
-    Remove All Elements At URI    ${SERVICE_CLASSIFIER_URI}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_CLASSIFIER_URI}
+    Remove All Elements At URI    ${SERVICE_CLASSIFIERS_URI}
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_CLASSIFIERS_URI}
     Should Be Equal As Strings    ${resp.status_code}    404
     [Teardown]    NONE
 
 Get one Classifier
     [Documentation]    Get one Classifier
-    Add Elements To URI From File    ${SERVICE_CLASSIFIER_URI}    ${SERVICE_CLASSIFIER_FILE}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_CLASSIFIER_URI}service-function-classifier/Classifier1
+    Add Elements To URI From File    ${SERVICE_CLASSIFIERS_URI}    ${SERVICE_CLASSIFIER_FILE}
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_CLASSIFIERS_URI}/service-function-classifier/Classifier1
     Should Be Equal As Strings    ${resp.status_code}    200
 
 Get A Non-existing Classifier
     [Documentation]    Get A Non-existing Classifier
-    Add Elements To URI From File    ${SERVICE_CLASSIFIER_URI}    ${SERVICE_CLASSIFIER_FILE}
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_CLASSIFIER_URI}service-function-classifier/unexisting-classifier
+    Add Elements To URI From File    ${SERVICE_CLASSIFIERS_URI}    ${SERVICE_CLASSIFIER_FILE}
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_CLASSIFIERS_URI}/service-function-classifier/nonexistant-classifier
     Should Be Equal As Strings    ${resp.status_code}    404
 
 Delete a Classifier
     [Documentation]    Delete a classifier
-    Add Elements To URI From File    ${SERVICE_CLASSIFIER_URI}    ${SERVICE_CLASSIFIER_FILE}
-    Remove All Elements At URI    ${SERVICE_CLASSIFIER_URI}service-function-classifier/Classifier1
-    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_CLASSIFIER_URI}
+    Add Elements To URI From File    ${SERVICE_CLASSIFIERS_URI}    ${SERVICE_CLASSIFIER_FILE}
+    Remove All Elements At URI    ${SERVICE_CLASSIFIERS_URI}/service-function-classifier/Classifier1
+    ${resp}    RequestsLibrary.Get Request    session    ${SERVICE_CLASSIFIERS_URI}
     Should Contain    ${ALLOWED_STATUS_CODES}    ${resp.status_code}
     Should Not Contain    ${resp.content}    Classifier1
index 1f688b299de57def55a5346a81be064a1eba7a5e..f4e71d0c3c5a4299f6c0ee023e5d7d7c54257d1f 100644 (file)
@@ -1,27 +1,30 @@
 *** Variables ***
-# Generic Service Chains and Function URIs
+# Generic Service Function Chaining URIs
 ${REST_CONFIG}    /restconf/config
 ${REST_OPER}      /restconf/operational
-${SERVICE_FUNCTION_TYPES_URI}    ${REST_CONFIG}/service-function-type:service-function-types/
-${SERVICE_FUNCTIONS_URI}    ${REST_CONFIG}/service-function:service-functions/
-${SERVICE_FUNCTION_URI}    ${REST_CONFIG}/service-function:service-functions/service-function/
-${SERVICE_FUNCTION_ACLS_URI}    ${REST_CONFIG}/ietf-access-control-list:access-lists/
-${SERVICE_CLASSIFIERS_URI}    ${REST_CONFIG}/service-function-classifier:service-function-classifiers/
-${SERVICE_FORWARDERS_URI}    ${REST_CONFIG}/service-function-forwarder:service-function-forwarders/
-${SERVICE_FORWARDER_URI}    ${REST_CONFIG}/service-function-forwarder:service-function-forwarders/service-function-forwarder/
-${SERVICE_NODES_URI}    ${REST_CONFIG}/service-node:service-nodes/
-${SERVICE_CHAINS_URI}    ${REST_CONFIG}/service-function-chain:service-function-chains/
-${SERVICE_FUNCTION_PATHS_URI}    ${REST_CONFIG}/service-function-path:service-function-paths/
-${SERVICE_FUNCTION_PATH_URI}    ${SERVICE_FUNCTION_PATHS_URI}service-function-path/
-${SERVICE_FUNCTION_PATHS_STATE_URI}    ${REST_OPER}/service-function-path:service-function-paths-state/
-${SERVICE_FUNCTION_PATH_STATE_URI}    ${SERVICE_FUNCTION_PATHS_STATE_URI}service-function-path-state/
-${SERVICE_SCHED_TYPES_URI}    ${REST_CONFIG}/service-function-scheduler-type:service-function-scheduler-types/
-${SERVICE_SCHED_TYPE_URI_BASE}    ${SERVICE_SCHED_TYPES_URI}service-function-scheduler-type/service-function-scheduler-type:
+${OPERATIONAL_RSPS_URI}    ${REST_OPER}/rendered-service-path:rendered-service-paths
+${OPERATIONAL_RSP_URI}    ${REST_OPER}/rendered-service-path:rendered-service-paths/rendered-service-path
+${OVSDB_TOPOLOGY_URI}    ${REST_OPER}/network-topology:network-topology/topology/ovsdb:1
+${RENDERED_SERVICE_PATHS_URI}    ${REST_CONFIG}/rendered-service-path:rendered-service-paths
+${SERVICE_CHAINS_URI}    ${REST_CONFIG}/service-function-chain:service-function-chains
+${SERVICE_CHAIN_URI}    ${SERVICE_CHAINS_URI}/service-function-chain
+${SERVICE_CLASSIFIERS_URI}    ${REST_CONFIG}/service-function-classifier:service-function-classifiers
+${SERVICE_FORWARDERS_URI}    ${REST_CONFIG}/service-function-forwarder:service-function-forwarders
+${SERVICE_FORWARDER_URI}    ${SERVICE_FORWARDERS_URI}/service-function-forwarder
+${SERVICE_FUNCTIONS_URI}    ${REST_CONFIG}/service-function:service-functions
+${SERVICE_FUNCTION_URI}    ${SERVICE_FUNCTIONS_URI}/service-function
+${SERVICE_FUNCTION_ACLS_URI}    ${REST_CONFIG}/ietf-access-control-list:access-lists
+${SERVICE_FUNCTION_PATHS_STATE_URI}    ${REST_OPER}/service-function-path:service-function-paths-state
+${SERVICE_FUNCTION_PATH_STATE_URI}    ${SERVICE_FUNCTION_PATHS_STATE_URI}/service-function-path-state
+${SERVICE_FUNCTION_PATHS_URI}    ${REST_CONFIG}/service-function-path:service-function-paths
+${SERVICE_FUNCTION_PATH_URI}    ${SERVICE_FUNCTION_PATHS_URI}/service-function-path
+${SERVICE_FUNCTION_TYPES_URI}    ${REST_CONFIG}/service-function-type:service-function-types
+${SERVICE_METADATA_URI}    ${REST_CONFIG}/service-function-path-metadata:service-function-metadata
+${SERVICE_NODES_URI}    ${REST_CONFIG}/service-node:service-nodes
+${SERVICE_NODE_URI}    ${SERVICE_NODES_URI}/service-node
+${SERVICE_SCHED_TYPES_URI}    ${REST_CONFIG}/service-function-scheduler-type:service-function-scheduler-types
+${SERVICE_SCHED_TYPE_URI_BASE}    ${SERVICE_SCHED_TYPES_URI}/service-function-scheduler-type/service-function-scheduler-type:
 ${SERVICE_RANDOM_SCHED_TYPE_URI}    ${SERVICE_SCHED_TYPE_URI_BASE}random
 ${SERVICE_LOADBALANCE_SCHED_TYPE_URI}    ${SERVICE_SCHED_TYPE_URI_BASE}load-balance
 ${SERVICE_ROUNDROBIN_SCHED_TYPE_URI}    ${SERVICE_SCHED_TYPE_URI_BASE}round-robin
 ${SERVICE_SHORTESTPATH_SCHED_TYPE_URI}    ${SERVICE_SCHED_TYPE_URI_BASE}shortest-path
-${SERVICE_METADATA_URI}    ${REST_CONFIG}/service-function-path-metadata:service-function-metadata/
-${OPERATIONAL_RSPS_URI}    ${REST_OPER}/rendered-service-path:rendered-service-paths/
-${OPERATIONAL_RSP_URI}    ${OPERATIONAL_RSPS_URI}rendered-service-path/
-${OVSDB_TOPOLOGY_URI}    ${REST_OPER}/network-topology:network-topology/topology/ovsdb:1