X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;ds=sidebyside;f=tests%2Ftransportpce_tests%2Fcommon%2Ftest_utils_rfc8040.py;h=1536a2b7bc0ff358cbee0fcc9a57b5eeebe7a137;hb=refs%2Fchanges%2F20%2F102220%2F6;hp=18d2a7d3e407f7d5210af17f20c72deeff2c2ccc;hpb=e72024a00f020ebfe4ade77016f4add2cb238e3f;p=transportpce.git diff --git a/tests/transportpce_tests/common/test_utils_rfc8040.py b/tests/transportpce_tests/common/test_utils_rfc8040.py index 18d2a7d3e..1536a2b7b 100644 --- a/tests/transportpce_tests/common/test_utils_rfc8040.py +++ b/tests/transportpce_tests/common/test_utils_rfc8040.py @@ -29,8 +29,7 @@ import simulators SIMS = simulators.SIMS HONEYNODE_OK_START_MSG = 'Netconf SSH endpoint started successfully at 0.0.0.0' -KARAF_OK_START_MSG = re.escape( - "Blueprint container for bundle org.opendaylight.netconf.restconf")+".* was successfully created" +KARAF_OK_START_MSG = "Blueprint container for bundle org.opendaylight.netconf.restconf.* was successfully created" LIGHTY_OK_START_MSG = re.escape("lighty.io and RESTCONF-NETCONF started") ODL_LOGIN = 'admin' @@ -375,6 +374,21 @@ def del_node_attribute_request(node: str, attribute: str, attribute_value: str): # +def post_portmapping(payload: str): + url = {'rfc8040': '{}/data/transportpce-portmapping:network', + 'draft-bierman02': '{}/config/transportpce-portmapping:network'} + json_payload = json.loads(payload) + response = post_request(url[RESTCONF_VERSION].format('{}'), json_payload) + return {'status_code': response.status_code} + + +def del_portmapping(): + url = {'rfc8040': '{}/data/transportpce-portmapping:network', + 'draft-bierman02': '{}/config/transportpce-portmapping:network'} + response = delete_request(url[RESTCONF_VERSION].format('{}')) + return {'status_code': response.status_code} + + def get_portmapping_node_attr(node: str, attr: str, value: str): # pylint: disable=consider-using-f-string url = {'rfc8040': '{}/data/transportpce-portmapping:network/nodes={}', @@ -413,14 +427,32 @@ def get_ietf_network_request(network: str, content: str): else: format_args = ('{}', 'operational', network) response = get_request(url[RESTCONF_VERSION].format(*format_args)) - res = response.json() - return_key = {'rfc8040': 'ietf-network:network', - 'draft-bierman02': 'network'} - networks = res[return_key[RESTCONF_VERSION]] + if bool(response): + res = response.json() + return_key = {'rfc8040': 'ietf-network:network', + 'draft-bierman02': 'network'} + networks = res[return_key[RESTCONF_VERSION]] + else: + networks = None return {'status_code': response.status_code, 'network': networks} +def put_ietf_network(network: str, payload: str): + url = {'rfc8040': '{}/data/ietf-network:networks/network={}', + 'draft-bierman02': '{}/config/ietf-network:networks/network/{}'} + json_payload = json.loads(payload) + response = put_request(url[RESTCONF_VERSION].format('{}', network), json_payload) + return {'status_code': response.status_code} + + +def del_ietf_network(network: str): + url = {'rfc8040': '{}/data/ietf-network:networks/network={}', + 'draft-bierman02': '{}/config/ietf-network:networks/network/{}'} + response = delete_request(url[RESTCONF_VERSION].format('{}', network)) + return {'status_code': response.status_code} + + def get_ietf_network_link_request(network: str, link: str, content: str): url = {'rfc8040': '{}/data/ietf-network:networks/network={}/ietf-network-topology:link={}?content={}', 'draft-bierman02': '{}/{}/ietf-network:networks/network/{}/ietf-network-topology:link/{}'} @@ -480,10 +512,13 @@ def get_ietf_network_node_request(network: str, node: str, content: str): else: format_args = ('{}', 'operational', network, node) response = get_request(url[RESTCONF_VERSION].format(*format_args)) - res = response.json() - return_key = {'rfc8040': 'ietf-network:node', - 'draft-bierman02': 'node'} - node = res[return_key[RESTCONF_VERSION]][0] + if bool(response): + res = response.json() + return_key = {'rfc8040': 'ietf-network:node', + 'draft-bierman02': 'node'} + node = res[return_key[RESTCONF_VERSION]][0] + else: + node = None return {'status_code': response.status_code, 'node': node}