PAPI: Fix PyLint errors
[csit.git] / resources / libraries / python / IPv4NodeAddress.py
index 25179a3..de96c18 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (c) 2016 Cisco and/or its affiliates.
+# Copyright (c) 2018 Cisco and/or its affiliates.
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 # You may obtain a copy of the License at:
@@ -26,26 +26,33 @@ IPV4_NETWORKS = ['192.168.{}.0/24'.format(i) for i in range(1, 100)]
 
 
 class IPv4NetworkGenerator(object):
-    """IPv4 network generator."""
+    """IPv4 network generator.
+
+    TODO: Conform to https://docs.python.org/2/library/stdtypes.html#typeiter
+    """
+
     def __init__(self, networks):
-        """
+        """Populate internal list of valid networks.
+
         :param networks: List of strings containing IPv4 subnet
-        with prefix length.
+            with prefix length.
         :type networks: list
+        :raise RuntimeError: If no IPv4 networks are added.
         """
-        self._networks = list()
+        self._networks = []
         for network in networks:
             net = IPv4Network(unicode(network))
             self._networks.append(net)
-        if len(self._networks) == 0:
-            raise Exception('No IPv4 networks')
+        if not self._networks:
+            raise RuntimeError("No IPv4 networks")
 
     def next_network(self):
+        """Pop and return network from internal list.
+
+        :returns: Next network in form (IPv4Network, subnet).
+        :raises StopIteration: If there are no more elements.
         """
-        :return: Next network in form (IPv4Network, subnet).
-        :raises: StopIteration if there are no more elements.
-        """
-        if len(self._networks):
+        if self._networks:
             return self._networks.pop()
         else:
             raise StopIteration()
@@ -79,7 +86,8 @@ def get_variables(nodes, networks=IPV4_NETWORKS[:]):
         port_idx = 0
         ports = {}
         for node in nodes.values():
-            if_name = topo.get_interface_by_link_name(node, link)
+            if_key = topo.get_interface_by_link_name(node, link)
+            if_name = topo.get_interface_name(node, if_key)
             if if_name is not None:
                 port = {'addr': str(next(net_hosts)),
                         'node': node['host'],