X-Git-Url: https://gerrit.fd.io/r/gitweb?p=csit.git;a=blobdiff_plain;f=resources%2Flibraries%2Fpython%2FIPv6Setup.py;h=72aeb305a2462dd1f26d8d8ed70fce7364b31c97;hp=e0de406a4ae44cdb165997dbaa64ca13d7f3cd1a;hb=cc0c2870a18fb74a56410eca2d1870bddc945397;hpb=cdf557ef070d004617ede4fc5a47dd6064d1c946 diff --git a/resources/libraries/python/IPv6Setup.py b/resources/libraries/python/IPv6Setup.py index e0de406a4a..72aeb305a2 100644 --- a/resources/libraries/python/IPv6Setup.py +++ b/resources/libraries/python/IPv6Setup.py @@ -13,29 +13,34 @@ """Library to set up IPv6 in topology.""" -from robot.api import logger from ipaddress import IPv6Network +from robot.api import logger from resources.libraries.python.ssh import SSH from resources.libraries.python.topology import NodeType, Topology -from resources.libraries.python.constants import Constants +from resources.libraries.python.Constants import Constants from resources.libraries.python.VatExecutor import VatTerminal, VatExecutor class IPv6Networks(object): """IPv6 network iterator. - :param networks: List of the available IPv6 networks. - :type networks: list + TODO: Conform to https://docs.python.org/2/library/stdtypes.html#typeiter """ + def __init__(self, networks): - self._networks = list() + """Initialize internal list of valid networks. + + :param networks: List of the available IPv6 networks. + :type networks: list + :raise RuntimeError: If no networks were added. + """ + self._networks = [] for network in networks: net = IPv6Network(unicode(network)) self._networks.append(net) - num = len(self._networks) - if num == 0: - raise Exception('No IPv6 networks') + if not self._networks: + raise RuntimeError('No IPv6 networks') def next_network(self): """Get the next element of the iterator. @@ -44,7 +49,7 @@ class IPv6Networks(object): :rtype: IPv6Network object :raises StopIteration: If there is no more elements. """ - if len(self._networks): + if self._networks: return self._networks.pop() else: raise StopIteration()