X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=csit%2Fsuites%2Fbgpcep%2Fpcepuser%2Fpcepuser.robot;h=d1bce641ae753b907798b994e40e063b8ba151e6;hb=HEAD;hp=d6c28e4f2d59f5c8c6686c0a7cb32e8be97f1f1c;hpb=42df167958d0e40499f24508a5827a8892238143;p=integration%2Ftest.git diff --git a/csit/suites/bgpcep/pcepuser/pcepuser.robot b/csit/suites/bgpcep/pcepuser/pcepuser.robot index d6c28e4f2d..d1bce641ae 100644 --- a/csit/suites/bgpcep/pcepuser/pcepuser.robot +++ b/csit/suites/bgpcep/pcepuser/pcepuser.robot @@ -1,30 +1,33 @@ *** Settings *** -Documentation Basic tests for odl-bgpcep-pcep-all feature. +Documentation Basic tests for odl-bgpcep-pcep-all feature. ... -... Copyright (c) 2015 Cisco Systems, Inc. and others. All rights reserved. +... Copyright (c) 2015 Cisco Systems, Inc. and others. All rights reserved. ... -... This program and the accompanying materials are made available under the -... terms of the Eclipse Public License v1.0 which accompanies this distribution, -... and is available at http://www.eclipse.org/legal/epl-v10.html -Suite Setup Set_It_Up -Suite Teardown Tear_It_Down -Library OperatingSystem -Library SSHLibrary -Library RequestsLibrary -Library ../../../libraries/norm_json.py -Resource ../../../libraries/NexusKeywords.robot -Resource ../../../libraries/PcepOperations.robot -Resource ../../../libraries/Utils.robot -Resource ../../../libraries/RemoteBash.robot -Resource ../../../libraries/TemplatedRequests.robot -Resource ../../../libraries/CompareStream.robot -Resource ../../../variables/Variables.robot -Variables ../../../variables/pcepuser/variables.py ${TOOLS_SYSTEM_IP} +... This program and the accompanying materials are made available under the +... terms of the Eclipse Public License v1.0 which accompanies this distribution, +... and is available at http://www.eclipse.org/legal/epl-v10.html + +Library OperatingSystem +Library SSHLibrary +Library RequestsLibrary +Library ../../../libraries/norm_json.py +Resource ../../../libraries/NexusKeywords.robot +Resource ../../../libraries/PcepOperations.robot +Resource ../../../libraries/Utils.robot +Resource ../../../libraries/RemoteBash.robot +Resource ../../../libraries/TemplatedRequests.robot +Resource ../../../variables/Variables.robot +Variables ../../../variables/pcepuser/${ODL_STREAM}/variables.py ${TOOLS_SYSTEM_IP} + +Suite Setup Set_It_Up +Suite Teardown Tear_It_Down + *** Variables *** -${CONFIG_SESSION} session -${PATH_SESSION_URI} node/pcc:%2F%2F${TOOLS_SYSTEM_IP}/path-computation-client -${PCEP_VARIABLES_FOLDER} ${CURDIR}/../../../variables/pcepuser/ +${CONFIG_SESSION} session +${PATH_SESSION_URI} node=pcc:%2F%2F${TOOLS_SYSTEM_IP}/network-topology-pcep:path-computation-client +${PCEP_VARIABLES_FOLDER} ${CURDIR}/../../../variables/pcepuser/${ODL_STREAM} + *** Test Cases *** Topology_Precondition @@ -35,16 +38,22 @@ Topology_Precondition Start_Pcc_Mock [Documentation] Execute pcc-mock on Mininet, fail is Open is not sent, keep it running for next tests. - ${command}= NexusKeywords.Compose_Full_Java_Command -jar ${filename} --reconnect 1 --local-address ${TOOLS_SYSTEM_IP} --remote-address ${ODL_SYSTEM_IP} 2>&1 | tee pccmock.log + ${command}= NexusKeywords.Compose_Full_Java_Command + ... -jar ${filename} --reconnect 1 --local-address ${TOOLS_SYSTEM_IP} --remote-address ${ODL_SYSTEM_IP} 2>&1 | tee pccmock.log Log ${command} Write ${command} Read_Until started, sent proposal Open + # Sleep required because of BGPCEP-890 + Sleep 1s Configure_Speaker_Entity_Identifier [Documentation] Additional PCEP Speaker configuration for at least oxygen streams. ... Allows PCEP speaker to determine if state synchronization can be skipped when a PCEP session is restarted. - &{mapping} BuiltIn.Create_Dictionary IP=${ODL_SYSTEM_IP} - CompareStream.Run_Keyword_If_At_Least_Oxygen TemplatedRequests.Put_As_Xml_Templated ${PCEP_VARIABLES_FOLDER}${/}node_speaker_entity_identifier mapping=${mapping} session=${CONFIG_SESSION} + &{mapping}= BuiltIn.Create_Dictionary IP=${ODL_SYSTEM_IP} + TemplatedRequests.Put_As_Xml_Templated + ... ${PCEP_VARIABLES_FOLDER}${/}node_speaker_entity_identifier + ... mapping=${mapping} + ... session=${CONFIG_SESSION} Topology_Default [Documentation] Compare pcep-topology to default_json, which includes a tunnel from pcc-mock. @@ -56,7 +65,6 @@ Update_Delegated [Documentation] Perform update-lsp on the mocked tunnel, check response is success. [Tags] critical ${text}= Update_Xml_Lsp_Return_Json ${update_delegated_xml} - Pcep_Json_Is_Success ${text} Topology_Updated [Documentation] Compare pcep-topology to default_json, which includes the updated tunnel. @@ -78,7 +86,6 @@ Add_Instantiated [Documentation] Perform add-lsp to create new tunnel, check that response is success. [Tags] critical ${text}= Add_Xml_Lsp_Return_Json ${add_instantiated_xml} - Pcep_Json_Is_Success ${text} Topology_Second_Default [Documentation] Compare pcep-topology to default_json, which includes the updated delegated and default instantiated tunnel. @@ -89,7 +96,6 @@ Update_Instantiated [Documentation] Perform update-lsp on the newly instantiated tunnel, check that response is success. [Tags] critical ${text}= Update_Xml_Lsp_Return_Json ${update_instantiated_xml} - Pcep_Json_Is_Success ${text} Topology_Second_Updated [Documentation] Compare pcep-topology to default_json, which includes the updated delegated and updated instantiated tunnel. @@ -100,7 +106,6 @@ Remove_Instantiated [Documentation] Perform remove-lsp on the instantiated tunnel, check that response is success. [Tags] critical ${text}= Remove_Xml_Lsp_Return_Json ${remove_instantiated_xml} - Pcep_Json_Is_Success ${text} Topology_Again_Updated [Documentation] Compare pcep-topology to default_json, which includes the updated tunnel, to verify that instantiated tunnel was removed. @@ -119,6 +124,7 @@ Topology_Postcondition [Tags] critical Wait_Until_Keyword_Succeeds 10s 1s Compare_Topology ${off_json} + *** Keywords *** Set_It_Up [Documentation] Create SSH session to Mininet machine, prepare HTTP client session to Controller. @@ -141,11 +147,14 @@ Tear_It_Down Close_All_Connections Compare_Topology - [Arguments] ${exp} ${uri}=${EMPTY} [Documentation] Get current pcep-topology as json, compare both expected and actual json. ... Error codes and normalized jsons should match exactly. + [Arguments] ${exp} ${uri}=${EMPTY} # TODO: Add Node Session State Check For Oxygen, see tcpmd5user # TODO: Possibly remake all tests with TemplatedRequests - ${response}= RequestsLibrary.Get Request ${CONFIG_SESSION} ${OPERATIONAL_TOPO_API}/topology/pcep-topology/${uri} - BuiltIn.Should_Be_Equal_As_Strings ${response.status_code} 200 + ${topology_uri}= BuiltIn.Set_Variable_If + ... '${uri}'=='${EMPTY}' + ... ${REST_API}/${TOPOLOGY_URL}=pcep-topology?content=nonconfig + ... ${REST_API}/${TOPOLOGY_URL}=pcep-topology/${uri}?content=nonconfig + ${response}= RequestsLibrary.GET On Session ${CONFIG_SESSION} url=${topology_uri} expected_status=200 TemplatedRequests.Normalize_Jsons_And_Compare ${exp} ${response.text}