Auto-generated patch by python-black
[integration/test.git] / csit / variables / pcepuser / variables.py
index 7d9e8ad47adb93a1303503e07431eb5148bbcb88..c513f79153d696c69db90b92d517415a0d9e46f4 100644 (file)
@@ -36,7 +36,9 @@ def get_variables(mininet_ip):
     # The whole list: default_json, updated_json, updated_default_json, updated_updated_json.
     # Oh, and the state without mock-pcc connected is off_json.
     # off_json has '{}' substring and no variable data, so here it is as a special case:
-    variables['off_json'] = '''{
+    variables[
+        "off_json"
+    ] = """{
  "topology": [
   {
    "topology-id": "pcep-topology",
@@ -45,12 +47,13 @@ def get_variables(mininet_ip):
    }
   }
  ]
-}'''
+}"""
     # Ok, other _json strings will have more regular structure and some variable data,
     # so we will be using templates heavily.
     # First off, there is segment describing PCC which conatins IP address but is otherwise constant.
     # So the top-level template will look like this:
-    json_templ = Template('''{
+    json_templ = Template(
+        """{
  "network-topology-pcep:path-computation-client": {
   "ip-address": "$IP",
   "reported-lsp": [$LSPS
@@ -63,7 +66,8 @@ def get_variables(mininet_ip):
    }
   }
  }
-}''')
+}"""
+    )
     # The _json variables will differ only in $LSPS, but $IP will be present inside.
     # Thus, the $IP substitution will come last, and any auxiliary substitutions before this final one
     # will have to use safe_substitute().
@@ -73,7 +77,8 @@ def get_variables(mininet_ip):
     # Discussion amout delegated and instantiated implies that $LSPS is either a single delegated LSP
     # or a pair of delegated and instantiated (separated by comma) LSPS, in appropriate state.
     # Of course, one LSP always follow a structure, for which here is the template:
-    lsp_templ = Template('''
+    lsp_templ = Template(
+        """
    {
     "name": "$NAME",
     "path": [
@@ -112,134 +117,149 @@ def get_variables(mininet_ip):
       }
      }
     ]
-   }''')
+   }"""
+    )
     # IDs were already talked about, IP will be set last. Now, $NAME.
     # Pcc-mock uses a fixed naming scheme for delegated tunnels, so one more template can be written,
     # but it is so simple we can write just the one-line code instead:
-    delegated_name = 'pcc_' + mininet_ip + '_tunnel_1'  # 1 == ID
+    delegated_name = "pcc_" + mininet_ip + "_tunnel_1"  # 1 == ID
     # For the instantiated tunnel, user is free to specify anything, even charachers such as \u0000 work.
     # But as we need to plug the name to XML, let us try something more friendly:
-    instantiated_name = 'Instantiated tunnel'  # the space is only somewhat evil character :)
+    instantiated_name = (
+        "Instantiated tunnel"  # the space is only somewhat evil character :)
+    )
     # What is CODE? The NAME in base64 encoding (without endline):
-    delegated_name_bytes = delegated_name.encode('ascii')
+    delegated_name_bytes = delegated_name.encode("ascii")
     delegated_code_encoded = base64.b64encode(delegated_name_bytes)
-    delegated_code = delegated_code_encoded.decode('ascii')
-    instantiated_name_bytes = instantiated_name.encode('ascii')
+    delegated_code = delegated_code_encoded.decode("ascii")
+    instantiated_name_bytes = instantiated_name.encode("ascii")
     instantiated_code_encoded = base64.b64encode(instantiated_name_bytes)
-    instantiated_code = instantiated_code_encoded.decode('ascii')
+    instantiated_code = instantiated_code_encoded.decode("ascii")
 
     # The remaining segment is HOPS, and that is the place where default and updated states differ.
     # Once again, there is a template for a single hop:
-    hop_templ = Template('''
+    hop_templ = Template(
+        """
         {
          "ip-prefix": {
           "ip-prefix": "$HOPIP/32"
          },
          "loose": false
-        }''')
+        }"""
+    )
     # The low-to-high part of V comes now, it is just substituting and concatenating.
     # Hops:
-    final_hop = hop_templ.substitute({'HOPIP': '1.1.1.1'})
-    update_hop = hop_templ.substitute({'HOPIP': '2.2.2.2'})
-    both_hops = update_hop + ',' + final_hop
+    final_hop = hop_templ.substitute({"HOPIP": "1.1.1.1"})
+    update_hop = hop_templ.substitute({"HOPIP": "2.2.2.2"})
+    both_hops = update_hop + "," + final_hop
     # Lsps:
-    default_lsp_templ = Template(lsp_templ.safe_substitute({'HOPS': final_hop}))
-    updated_lsp_templ = Template(lsp_templ.safe_substitute({'HOPS': both_hops}))
-    repl_dict = {'NAME': delegated_name, 'ID': '1', 'CODE': delegated_code, 'CREATED': 'false'}
+    default_lsp_templ = Template(lsp_templ.safe_substitute({"HOPS": final_hop}))
+    updated_lsp_templ = Template(lsp_templ.safe_substitute({"HOPS": both_hops}))
+    repl_dict = {
+        "NAME": delegated_name,
+        "ID": "1",
+        "CODE": delegated_code,
+        "CREATED": "false",
+    }
     delegated_default_lsp = default_lsp_templ.safe_substitute(repl_dict)
     delegated_updated_lsp = updated_lsp_templ.safe_substitute(repl_dict)
-    repl_dict = {'NAME': instantiated_name, 'ID': '2', 'CODE': instantiated_code, 'CREATED': 'true'}
+    repl_dict = {
+        "NAME": instantiated_name,
+        "ID": "2",
+        "CODE": instantiated_code,
+        "CREATED": "true",
+    }
     instantiated_default_lsp = default_lsp_templ.safe_substitute(repl_dict)
     instantiated_updated_lsp = updated_lsp_templ.safe_substitute(repl_dict)
     # Json templates (without IP set).
-    repl_dict = {'LSPS': delegated_default_lsp}
+    repl_dict = {"LSPS": delegated_default_lsp}
     default_json_templ = Template(json_templ.safe_substitute(repl_dict))
-    repl_dict = {'LSPS': delegated_updated_lsp}
+    repl_dict = {"LSPS": delegated_updated_lsp}
     updated_json_templ = Template(json_templ.safe_substitute(repl_dict))
-    repl_dict = {'LSPS': delegated_updated_lsp + ',' + instantiated_default_lsp}
+    repl_dict = {"LSPS": delegated_updated_lsp + "," + instantiated_default_lsp}
     updated_default_json_templ = Template(json_templ.safe_substitute(repl_dict))
-    repl_dict = {'LSPS': delegated_updated_lsp + ',' + instantiated_updated_lsp}
+    repl_dict = {"LSPS": delegated_updated_lsp + "," + instantiated_updated_lsp}
     updated_updated_json_templ = Template(json_templ.safe_substitute(repl_dict))
     # Final json variables.
-    repl_dict = {'IP': mininet_ip}
-    variables['default_json'] = default_json_templ.substitute(repl_dict)
-    variables['updated_json'] = updated_json_templ.substitute(repl_dict)
-    variables['updated_default_json'] = updated_default_json_templ.substitute(repl_dict)
-    variables['updated_updated_json'] = updated_updated_json_templ.substitute(repl_dict)
+    repl_dict = {"IP": mininet_ip}
+    variables["default_json"] = default_json_templ.substitute(repl_dict)
+    variables["updated_json"] = updated_json_templ.substitute(repl_dict)
+    variables["updated_default_json"] = updated_default_json_templ.substitute(repl_dict)
+    variables["updated_updated_json"] = updated_updated_json_templ.substitute(repl_dict)
     # ### Pcep operations XML data.
     # There are three operations, so let us just write templates from information at
     # https://wiki.opendaylight.org/view/BGP_LS_PCEP:Programmer_Guide#Tunnel_Management_for_draft-ietf-pce-stateful-pce-07_and_draft-ietf-pce-pce-initiated-lsp-00
     # _xml describes content type and also distinguishes from similarly named _json strings.
     add_xml_templ = Template(
         '<input xmlns="urn:opendaylight:params:xml:ns:yang:topology:pcep">\n'
-        ' <node>pcc://$IP</node>\n'
-        ' <name>$NAME</name>\n'
+        " <node>pcc://$IP</node>\n"
+        " <name>$NAME</name>\n"
         ' <network-topology-ref xmlns:topo="urn:TBD:params:xml:ns:yang:network-topology">'
         '/topo:network-topology/topo:topology[topo:topology-id="pcep-topology"]'
-        '</network-topology-ref>\n'
-        ' <arguments>\n'
+        "</network-topology-ref>\n"
+        " <arguments>\n"
         '  <lsp xmlns="urn:opendaylight:params:xml:ns:yang:pcep:ietf:stateful">\n'
-        '   <delegate>true</delegate>\n'
-        '   <administrative>true</administrative>\n'
-        '  </lsp>\n'
-        '  <endpoints-obj>\n'
-        '   <ipv4>\n'
-        '    <source-ipv4-address>$IP</source-ipv4-address>\n'
-        '    <destination-ipv4-address>1.1.1.1</destination-ipv4-address>\n'
-        '   </ipv4>\n'
-        '  </endpoints-obj>\n'
-        '  <ero>\n'
-        '   <subobject>\n'
-        '    <loose>false</loose>\n'
-        '    <ip-prefix><ip-prefix>1.1.1.1/32</ip-prefix></ip-prefix>\n'
-        '   </subobject>\n'
-        '  </ero>\n'
-        ' </arguments>\n'
-        '</input>\n'
+        "   <delegate>true</delegate>\n"
+        "   <administrative>true</administrative>\n"
+        "  </lsp>\n"
+        "  <endpoints-obj>\n"
+        "   <ipv4>\n"
+        "    <source-ipv4-address>$IP</source-ipv4-address>\n"
+        "    <destination-ipv4-address>1.1.1.1</destination-ipv4-address>\n"
+        "   </ipv4>\n"
+        "  </endpoints-obj>\n"
+        "  <ero>\n"
+        "   <subobject>\n"
+        "    <loose>false</loose>\n"
+        "    <ip-prefix><ip-prefix>1.1.1.1/32</ip-prefix></ip-prefix>\n"
+        "   </subobject>\n"
+        "  </ero>\n"
+        " </arguments>\n"
+        "</input>\n"
     )
     update_xml_templ = Template(
         '<input xmlns="urn:opendaylight:params:xml:ns:yang:topology:pcep">\n'
-        ' <node>pcc://$IP</node>\n'
-        ' <name>$NAME</name>\n'
+        " <node>pcc://$IP</node>\n"
+        " <name>$NAME</name>\n"
         ' <network-topology-ref xmlns:topo="urn:TBD:params:xml:ns:yang:network-topology">'
         '/topo:network-topology/topo:topology[topo:topology-id="pcep-topology"]'
-        '</network-topology-ref>\n'
-        ' <arguments>\n'
+        "</network-topology-ref>\n"
+        " <arguments>\n"
         '  <lsp xmlns="urn:opendaylight:params:xml:ns:yang:pcep:ietf:stateful">\n'
-        '   <delegate>true</delegate>\n'
-        '   <administrative>true</administrative>\n'
-        '  </lsp>\n'
-        '  <ero>\n'
-        '   <subobject>\n'
-        '    <loose>false</loose>\n'
-        '    <ip-prefix><ip-prefix>2.2.2.2/32</ip-prefix></ip-prefix>\n'
-        '   </subobject>\n'
-        '   <subobject>\n'
-        '    <loose>false</loose>\n'
-        '    <ip-prefix><ip-prefix>1.1.1.1/32</ip-prefix></ip-prefix>\n'
-        '   </subobject>\n'
-        '  </ero>\n'
-        ' </arguments>\n'
-        '</input>\n'
+        "   <delegate>true</delegate>\n"
+        "   <administrative>true</administrative>\n"
+        "  </lsp>\n"
+        "  <ero>\n"
+        "   <subobject>\n"
+        "    <loose>false</loose>\n"
+        "    <ip-prefix><ip-prefix>2.2.2.2/32</ip-prefix></ip-prefix>\n"
+        "   </subobject>\n"
+        "   <subobject>\n"
+        "    <loose>false</loose>\n"
+        "    <ip-prefix><ip-prefix>1.1.1.1/32</ip-prefix></ip-prefix>\n"
+        "   </subobject>\n"
+        "  </ero>\n"
+        " </arguments>\n"
+        "</input>\n"
     )
     remove_xml_templ = Template(
         '<input xmlns="urn:opendaylight:params:xml:ns:yang:topology:pcep">\n'
-        ' <node>pcc://$IP</node>\n'
-        ' <name>$NAME</name>\n'
+        " <node>pcc://$IP</node>\n"
+        " <name>$NAME</name>\n"
         ' <network-topology-ref xmlns:topo="urn:TBD:params:xml:ns:yang:network-topology">'
         '/topo:network-topology/topo:topology[topo:topology-id="pcep-topology"]'
-        '</network-topology-ref>\n'
-        '</input>\n'
+        "</network-topology-ref>\n"
+        "</input>\n"
     )
     # The operations can be applied to either delegated or instantiated tunnel, NAME is the only distinguishing value.
     # Also, the final IP substitution can be done here.
-    repl_dict = {'IP': mininet_ip}
-    repl_dict['NAME'] = delegated_name
-    variables['update_delegated_xml'] = update_xml_templ.substitute(repl_dict)
-    variables['remove_delegated_xml'] = remove_xml_templ.substitute(repl_dict)
-    repl_dict['NAME'] = instantiated_name
-    variables['add_instantiated_xml'] = add_xml_templ.substitute(repl_dict)
-    variables['update_instantiated_xml'] = update_xml_templ.substitute(repl_dict)
-    variables['remove_instantiated_xml'] = remove_xml_templ.substitute(repl_dict)
+    repl_dict = {"IP": mininet_ip}
+    repl_dict["NAME"] = delegated_name
+    variables["update_delegated_xml"] = update_xml_templ.substitute(repl_dict)
+    variables["remove_delegated_xml"] = remove_xml_templ.substitute(repl_dict)
+    repl_dict["NAME"] = instantiated_name
+    variables["add_instantiated_xml"] = add_xml_templ.substitute(repl_dict)
+    variables["update_instantiated_xml"] = update_xml_templ.substitute(repl_dict)
+    variables["remove_instantiated_xml"] = remove_xml_templ.substitute(repl_dict)
     # All variables ready.
     return variables