Fix PcepOperations requests
[integration/test.git] / csit / libraries / Restconf.robot
index baed160b991af0f6e39edf71d74c646c2600df03..abfcc10682af0f32f0a5e6a0dd95012f4ba3be8c 100644 (file)
@@ -1,35 +1,23 @@
-*** Settings ***
-
-*** Variables ***
-${USE_RFC8040} =    False
-
 *** Keywords ***
-
 Generate URI
-    [Arguments]    ${identifier}    ${datastore}=config    @{node_value_list}
-    [Documentation]    Returns the proper URI to use depending on if RFC8040 is to be used or not. Variable input
-    ...    error checking is done to ensure the ${USE_RFC8040} Flag is one of True or False and the ${datastore} variable
-    ...    must be config or operational. @{node_value_list} is expected to be in the format of node=value. RFC8040 can
-    ...    use that as is with '=' delimiter, but older restconf URI will convert the '=' to a '/'
-    ${uri} =    Run Keyword If    "${USE_RFC8040}" == "True"    Generate RFC8040 URI    ${identifier}    ${datastore}    @{node_value_list}
-    Return From Keyword If    "${USE_RFC8040}" == "True"    ${uri}
-    Run Keyword If    "${USE_RFC8040}" != "False"    Fail    Invalid Value for RFC8040 Flag: ${USE_RFC8040}
-    Run Keyword If    "${datastore}"!="config" and "${datastore}"!="operational"    Fail    Invalid value for datastore: ${datastore}
-    ${uri} =    Run Keyword If    "${datastore}"=="config"    Set Variable    ${CONFIG_API}/${identifier}
-    ...    ELSE    Set Variable    ${OPERATIONAL_API}/${identifier}
-    ${node_value_path} =    Set Variable    ${EMPTY}
-    FOR    ${nv}    IN    @{node_value_list}
-        ${nv} =    String.Replace String    ${nv}    =    /
-        ${node_value_path} =    Set Variable    ${node_value_path}/${nv}
-    END
-    [Return]    ${uri}${node_value_path}
+    [Documentation]    Returns the proper URI to use. Variable input error checking is done to ensure the ${datastore_flag} variable
+    ...    is config, operational or rpc. @{node_value_list} is expected to be in the format of node=value. RFC8040 can
+    ...    use that as is with '=' delimiter
+    [Arguments]    ${identifier}    ${datastore_flag}=config    @{node_value_list}
+    ${uri} =    Generate RFC8040 URI    ${identifier}    ${datastore_flag}    @{node_value_list}
+    RETURN    ${uri}
 
 Generate RFC8040 URI
-    [Arguments]    ${identifier}    ${datastore}=config    @{node_value_list}
+    [Arguments]    ${identifier}    ${datastore_flag}=config    @{node_value_list}
     ${node_value_path} =    Set Variable    ${EMPTY}
     FOR    ${nv}    IN    @{node_value_list}
         ${node_value_path} =    Set Variable    ${node_value_path}/${nv}
     END
-    ${uri} =    Run Keyword If    "${datastore}" == "config"    Set Variable    rests/data/${identifier}${node_value_path}?content=config
-    ...    ELSE    Set Variable    rests/data/${identifier}${node_value_path}?content=nonconfig
-    [Return]    ${uri}
+    IF    "${datastore_flag}" == "config"
+        ${uri} =    Set Variable    rests/data/${identifier}${node_value_path}?content=config
+    ELSE IF    "${datastore_flag}"=="operational"
+        ${uri} =    Set Variable    rests/data/${identifier}${node_value_path}?content=nonconfig
+    ELSE
+        ${uri} =    Set Variable    rests/operations/${identifier}
+    END
+    RETURN    ${uri}