summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStephen Finucane <sfinucan@redhat.com>2023-05-08 11:03:05 +0100
committerStephen Finucane <sfinucan@redhat.com>2023-05-10 10:51:30 +0100
commit6475dc58e8baa199d948c4b2d250c1fb45e0bd30 (patch)
tree063e722cef74bdedadd6458be13cbfedb880e55e
parent35ba1d8f1304d3255b96b704d524666ec5b6fea2 (diff)
downloadpython-openstackclient-6475dc58e8baa199d948c4b2d250c1fb45e0bd30.tar.gz
Blacken openstackclient.network
Black used with the '-l 79 -S' flags. A future change will ignore this commit in git-blame history by adding a 'git-blame-ignore-revs' file. Change-Id: I8048746dbc2ef0cb582f68934734db4c1153d779 Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
-rw-r--r--openstackclient/network/client.py6
-rw-r--r--openstackclient/network/common.py102
-rw-r--r--openstackclient/network/v2/address_group.py106
-rw-r--r--openstackclient/network/v2/address_scope.py92
-rw-r--r--openstackclient/network/v2/floating_ip.py199
-rw-r--r--openstackclient/network/v2/floating_ip_pool.py24
-rw-r--r--openstackclient/network/v2/floating_ip_port_forwarding.py219
-rw-r--r--openstackclient/network/v2/ip_availability.py34
-rw-r--r--openstackclient/network/v2/l3_conntrack_helper.py93
-rw-r--r--openstackclient/network/v2/local_ip.py108
-rw-r--r--openstackclient/network/v2/local_ip_association.py69
-rw-r--r--openstackclient/network/v2/ndp_proxy.py105
-rw-r--r--openstackclient/network/v2/network.py321
-rw-r--r--openstackclient/network/v2/network_agent.py149
-rw-r--r--openstackclient/network/v2/network_auto_allocated_topology.py34
-rw-r--r--openstackclient/network/v2/network_flavor.py139
-rw-r--r--openstackclient/network/v2/network_flavor_profile.py103
-rw-r--r--openstackclient/network/v2/network_meter.py53
-rw-r--r--openstackclient/network/v2/network_meter_rule.py60
-rw-r--r--openstackclient/network/v2/network_qos_policy.py88
-rw-r--r--openstackclient/network/v2/network_qos_rule.py218
-rw-r--r--openstackclient/network/v2/network_qos_rule_type.py40
-rw-r--r--openstackclient/network/v2/network_rbac.py173
-rw-r--r--openstackclient/network/v2/network_segment.py101
-rw-r--r--openstackclient/network/v2/network_segment_range.py205
-rw-r--r--openstackclient/network/v2/network_trunk.py207
-rw-r--r--openstackclient/network/v2/port.py458
-rw-r--r--openstackclient/network/v2/router.py412
-rw-r--r--openstackclient/network/v2/security_group.py154
-rw-r--r--openstackclient/network/v2/security_group_rule.py195
-rw-r--r--openstackclient/network/v2/subnet.py456
-rw-r--r--openstackclient/network/v2/subnet_pool.py172
-rw-r--r--openstackclient/tests/functional/network/v2/common.py42
-rw-r--r--openstackclient/tests/functional/network/v2/test_address_group.py57
-rw-r--r--openstackclient/tests/functional/network/v2/test_address_scope.py32
-rw-r--r--openstackclient/tests/functional/network/v2/test_floating_ip.py130
-rw-r--r--openstackclient/tests/functional/network/v2/test_ip_availability.py29
-rw-r--r--openstackclient/tests/functional/network/v2/test_l3_conntrack_helper.py59
-rw-r--r--openstackclient/tests/functional/network/v2/test_local_ip.py36
-rw-r--r--openstackclient/tests/functional/network/v2/test_network.py65
-rw-r--r--openstackclient/tests/functional/network/v2/test_network_agent.py29
-rw-r--r--openstackclient/tests/functional/network/v2/test_network_flavor.py33
-rw-r--r--openstackclient/tests/functional/network/v2/test_network_flavor_profile.py53
-rw-r--r--openstackclient/tests/functional/network/v2/test_network_meter.py45
-rw-r--r--openstackclient/tests/functional/network/v2/test_network_meter_rule.py72
-rw-r--r--openstackclient/tests/functional/network/v2/test_network_ndp_proxy.py58
-rw-r--r--openstackclient/tests/functional/network/v2/test_network_qos_policy.py41
-rw-r--r--openstackclient/tests/functional/network/v2/test_network_qos_rule.py186
-rw-r--r--openstackclient/tests/functional/network/v2/test_network_qos_rule_type.py23
-rw-r--r--openstackclient/tests/functional/network/v2/test_network_rbac.py36
-rw-r--r--openstackclient/tests/functional/network/v2/test_network_segment.py65
-rw-r--r--openstackclient/tests/functional/network/v2/test_network_segment_range.py74
-rw-r--r--openstackclient/tests/functional/network/v2/test_network_service_provider.py3
-rw-r--r--openstackclient/tests/functional/network/v2/test_network_trunk.py163
-rw-r--r--openstackclient/tests/functional/network/v2/test_port.py76
-rw-r--r--openstackclient/tests/functional/network/v2/test_router.py144
-rw-r--r--openstackclient/tests/functional/network/v2/test_security_group.py14
-rw-r--r--openstackclient/tests/functional/network/v2/test_security_group_rule.py27
-rw-r--r--openstackclient/tests/functional/network/v2/test_subnet.py133
-rw-r--r--openstackclient/tests/functional/network/v2/test_subnet_pool.py109
-rw-r--r--openstackclient/tests/unit/network/test_common.py173
-rw-r--r--openstackclient/tests/unit/network/test_utils.py19
-rw-r--r--openstackclient/tests/unit/network/v2/fakes.py269
-rw-r--r--openstackclient/tests/unit/network/v2/test_address_group.py216
-rw-r--r--openstackclient/tests/unit/network/v2/test_address_scope.py181
-rw-r--r--openstackclient/tests/unit/network/v2/test_floating_ip_compute.py65
-rw-r--r--openstackclient/tests/unit/network/v2/test_floating_ip_network.py378
-rw-r--r--openstackclient/tests/unit/network/v2/test_floating_ip_pool_compute.py18
-rw-r--r--openstackclient/tests/unit/network/v2/test_floating_ip_pool_network.py13
-rw-r--r--openstackclient/tests/unit/network/v2/test_floating_ip_port_forwarding.py447
-rw-r--r--openstackclient/tests/unit/network/v2/test_ip_availability.py86
-rw-r--r--openstackclient/tests/unit/network/v2/test_l3_conntrack_helper.py176
-rw-r--r--openstackclient/tests/unit/network/v2/test_local_ip.py204
-rw-r--r--openstackclient/tests/unit/network/v2/test_local_ip_association.py174
-rw-r--r--openstackclient/tests/unit/network/v2/test_ndp_proxy.py218
-rw-r--r--openstackclient/tests/unit/network/v2/test_network.py369
-rw-r--r--openstackclient/tests/unit/network/v2/test_network_agent.py226
-rw-r--r--openstackclient/tests/unit/network/v2/test_network_auto_allocated_topology.py75
-rw-r--r--openstackclient/tests/unit/network/v2/test_network_compute.py55
-rw-r--r--openstackclient/tests/unit/network/v2/test_network_flavor.py211
-rw-r--r--openstackclient/tests/unit/network/v2/test_network_flavor_profile.py210
-rw-r--r--openstackclient/tests/unit/network/v2/test_network_meter.py98
-rw-r--r--openstackclient/tests/unit/network/v2/test_network_meter_rule.py126
-rw-r--r--openstackclient/tests/unit/network/v2/test_network_qos_policy.py201
-rw-r--r--openstackclient/tests/unit/network/v2/test_network_qos_rule.py838
-rw-r--r--openstackclient/tests/unit/network/v2/test_network_qos_rule_type.py66
-rw-r--r--openstackclient/tests/unit/network/v2/test_network_rbac.py313
-rw-r--r--openstackclient/tests/unit/network/v2/test_network_segment.py182
-rw-r--r--openstackclient/tests/unit/network/v2/test_network_segment_range.py365
-rw-r--r--openstackclient/tests/unit/network/v2/test_network_service_provider.py27
-rw-r--r--openstackclient/tests/unit/network/v2/test_network_trunk.py492
-rw-r--r--openstackclient/tests/unit/network/v2/test_port.py1301
-rw-r--r--openstackclient/tests/unit/network/v2/test_router.py801
-rw-r--r--openstackclient/tests/unit/network/v2/test_security_group_compute.py116
-rw-r--r--openstackclient/tests/unit/network/v2/test_security_group_network.py231
-rw-r--r--openstackclient/tests/unit/network/v2/test_security_group_rule_compute.py273
-rw-r--r--openstackclient/tests/unit/network/v2/test_security_group_rule_network.py988
-rw-r--r--openstackclient/tests/unit/network/v2/test_subnet.py772
-rw-r--r--openstackclient/tests/unit/network/v2/test_subnet_pool.py435
-rw-r--r--tox.ini6
100 files changed, 10507 insertions, 7636 deletions
diff --git a/openstackclient/network/client.py b/openstackclient/network/client.py
index 39936fde..887be52c 100644
--- a/openstackclient/network/client.py
+++ b/openstackclient/network/client.py
@@ -50,7 +50,9 @@ def build_option_parser(parser):
'--os-network-api-version',
metavar='<network-api-version>',
default=utils.env('OS_NETWORK_API_VERSION'),
- help=_("Network API version, default=%s "
- "(Env: OS_NETWORK_API_VERSION)") % DEFAULT_API_VERSION
+ help=_(
+ "Network API version, default=%s " "(Env: OS_NETWORK_API_VERSION)"
+ )
+ % DEFAULT_API_VERSION,
)
return parser
diff --git a/openstackclient/network/common.py b/openstackclient/network/common.py
index b1902a6c..63c845cd 100644
--- a/openstackclient/network/common.py
+++ b/openstackclient/network/common.py
@@ -64,6 +64,7 @@ class NetDetectionMixin(metaclass=abc.ABCMeta):
But the command classes are used for docs builds as well, and docs must
present the options for both network types, often qualified accordingly.
"""
+
@property
def _network_type(self):
"""Discover whether the running cloud is using neutron or nova-network.
@@ -85,7 +86,9 @@ class NetDetectionMixin(metaclass=abc.ABCMeta):
except AttributeError:
LOG.warning(
"%s: Could not detect a network type. Assuming we are "
- "building docs.", self.__class__.__name__)
+ "building docs.",
+ self.__class__.__name__,
+ )
net_type = None
self._net_type = net_type
return self._net_type
@@ -118,11 +121,14 @@ class NetDetectionMixin(metaclass=abc.ABCMeta):
def split_help(network_help, compute_help):
return (
"*%(network_qualifier)s:*\n %(network_help)s\n\n"
- "*%(compute_qualifier)s:*\n %(compute_help)s" % dict(
+ "*%(compute_qualifier)s:*\n %(compute_help)s"
+ % dict(
network_qualifier=_("Network version 2"),
network_help=network_help,
compute_qualifier=_("Compute version 2"),
- compute_help=compute_help))
+ compute_help=compute_help,
+ )
+ )
def get_parser(self, prog_name):
LOG.debug('get_parser(%s)', prog_name)
@@ -150,11 +156,13 @@ class NetDetectionMixin(metaclass=abc.ABCMeta):
def take_action(self, parsed_args):
if self.is_neutron:
- return self.take_action_network(self.app.client_manager.network,
- parsed_args)
+ return self.take_action_network(
+ self.app.client_manager.network, parsed_args
+ )
elif self.is_nova_network:
- return self.take_action_compute(self.app.client_manager.compute,
- parsed_args)
+ return self.take_action_compute(
+ self.app.client_manager.compute, parsed_args
+ )
def take_action_network(self, client, parsed_args):
"""Override to do something useful."""
@@ -165,8 +173,9 @@ class NetDetectionMixin(metaclass=abc.ABCMeta):
pass
-class NetworkAndComputeCommand(NetDetectionMixin, command.Command,
- metaclass=abc.ABCMeta):
+class NetworkAndComputeCommand(
+ NetDetectionMixin, command.Command, metaclass=abc.ABCMeta
+):
"""Network and Compute Command
Command class for commands that support implementation via
@@ -174,11 +183,11 @@ class NetworkAndComputeCommand(NetDetectionMixin, command.Command,
implementations for take_action() and may even have different
arguments.
"""
+
pass
-class NetworkAndComputeDelete(NetworkAndComputeCommand,
- metaclass=abc.ABCMeta):
+class NetworkAndComputeDelete(NetworkAndComputeCommand, metaclass=abc.ABCMeta):
"""Network and Compute Delete
Delete class for commands that support implementation via
@@ -196,17 +205,21 @@ class NetworkAndComputeDelete(NetworkAndComputeCommand,
self.r = r
try:
if self.app.client_manager.is_network_endpoint_enabled():
- self.take_action_network(self.app.client_manager.network,
- parsed_args)
+ self.take_action_network(
+ self.app.client_manager.network, parsed_args
+ )
else:
- self.take_action_compute(self.app.client_manager.compute,
- parsed_args)
+ self.take_action_compute(
+ self.app.client_manager.compute, parsed_args
+ )
except Exception as e:
- msg = _("Failed to delete %(resource)s with name or ID "
- "'%(name_or_id)s': %(e)s") % {
- "resource": self.resource,
- "name_or_id": r,
- "e": e,
+ msg = _(
+ "Failed to delete %(resource)s with name or ID "
+ "'%(name_or_id)s': %(e)s"
+ ) % {
+ "resource": self.resource,
+ "name_or_id": r,
+ "e": e,
}
LOG.error(msg)
ret += 1
@@ -221,8 +234,9 @@ class NetworkAndComputeDelete(NetworkAndComputeCommand,
raise exceptions.CommandError(msg)
-class NetworkAndComputeLister(NetDetectionMixin, command.Lister,
- metaclass=abc.ABCMeta):
+class NetworkAndComputeLister(
+ NetDetectionMixin, command.Lister, metaclass=abc.ABCMeta
+):
"""Network and Compute Lister
Lister class for commands that support implementation via
@@ -230,11 +244,13 @@ class NetworkAndComputeLister(NetDetectionMixin, command.Lister,
implementations for take_action() and may even have different
arguments.
"""
+
pass
-class NetworkAndComputeShowOne(NetDetectionMixin, command.ShowOne,
- metaclass=abc.ABCMeta):
+class NetworkAndComputeShowOne(
+ NetDetectionMixin, command.ShowOne, metaclass=abc.ABCMeta
+):
"""Network and Compute ShowOne
ShowOne class for commands that support implementation via
@@ -247,10 +263,12 @@ class NetworkAndComputeShowOne(NetDetectionMixin, command.ShowOne,
try:
if self.app.client_manager.is_network_endpoint_enabled():
return self.take_action_network(
- self.app.client_manager.network, parsed_args)
+ self.app.client_manager.network, parsed_args
+ )
else:
return self.take_action_compute(
- self.app.client_manager.compute, parsed_args)
+ self.app.client_manager.compute, parsed_args
+ )
except openstack.exceptions.HttpException as exc:
msg = _("Error while executing command: %s") % exc.message
if exc.details:
@@ -282,10 +300,13 @@ class NeutronCommandWithExtraArgs(command.Command):
if not converter:
raise exceptions.CommandError(
- _("Type {property_type} of property {name} "
- "is not supported").format(
- property_type=_property['type'],
- name=_property['name']))
+ _(
+ "Type {property_type} of property {name} "
+ "is not supported"
+ ).format(
+ property_type=_property['type'], name=_property['name']
+ )
+ )
return converter
def _parse_extra_properties(self, extra_properties):
@@ -301,25 +322,26 @@ class NeutronCommandWithExtraArgs(command.Command):
parser.add_argument(
'--extra-property',
metavar='type=<property_type>,name=<property_name>,'
- 'value=<property_value>',
+ 'value=<property_value>',
dest='extra_properties',
action=parseractions.MultiKeyValueAction,
required_keys=['name', 'value'],
optional_keys=['type'],
- help=_("Additional parameters can be passed using this property. "
- "Default type of the extra property is string ('str'), but "
- "other types can be used as well. Available types are: "
- "'dict', 'list', 'str', 'bool', 'int'. "
- "In case of 'list' type, 'value' can be "
- "semicolon-separated list of values. "
- "For 'dict' value is semicolon-separated list of the "
- "key:value pairs.")
+ help=_(
+ "Additional parameters can be passed using this property. "
+ "Default type of the extra property is string ('str'), but "
+ "other types can be used as well. Available types are: "
+ "'dict', 'list', 'str', 'bool', 'int'. "
+ "In case of 'list' type, 'value' can be "
+ "semicolon-separated list of values. "
+ "For 'dict' value is semicolon-separated list of the "
+ "key:value pairs."
+ ),
)
return parser
class NeutronUnsetCommandWithExtraArgs(NeutronCommandWithExtraArgs):
-
def _parse_extra_properties(self, extra_properties):
result = {}
if extra_properties:
diff --git a/openstackclient/network/v2/address_group.py b/openstackclient/network/v2/address_group.py
index b22fd8aa..7c737184 100644
--- a/openstackclient/network/v2/address_group.py
+++ b/openstackclient/network/v2/address_group.py
@@ -31,9 +31,7 @@ def _get_columns(item):
column_map = {}
hidden_columns = ['location', 'tenant_id']
return utils.get_osc_show_columns_for_sdk_resource(
- item,
- column_map,
- hidden_columns
+ item, column_map, hidden_columns
)
@@ -65,27 +63,27 @@ class CreateAddressGroup(command.ShowOne, common.NeutronCommandWithExtraArgs):
def get_parser(self, prog_name):
parser = super(CreateAddressGroup, self).get_parser(prog_name)
parser.add_argument(
- 'name',
- metavar="<name>",
- help=_("New address group name")
+ 'name', metavar="<name>", help=_("New address group name")
)
parser.add_argument(
'--description',
metavar="<description>",
- help=_("New address group description")
+ help=_("New address group description"),
)
parser.add_argument(
"--address",
metavar="<ip-address>",
action='append',
default=[],
- help=_("IP address or CIDR "
- "(repeat option to set multiple addresses)"),
+ help=_(
+ "IP address or CIDR "
+ "(repeat option to set multiple addresses)"
+ ),
)
parser.add_argument(
'--project',
metavar="<project>",
- help=_("Owner's project (name or ID)")
+ help=_("Owner's project (name or ID)"),
)
identity_common.add_project_domain_option_to_parser(parser)
@@ -96,7 +94,8 @@ class CreateAddressGroup(command.ShowOne, common.NeutronCommandWithExtraArgs):
attrs = _get_attrs(self.app.client_manager, parsed_args)
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
obj = client.create_address_group(**attrs)
display_columns, columns = _get_columns(obj)
@@ -114,7 +113,7 @@ class DeleteAddressGroup(command.Command):
'address_group',
metavar="<address-group>",
nargs='+',
- help=_("Address group(s) to delete (name or ID)")
+ help=_("Address group(s) to delete (name or ID)"),
)
return parser
@@ -129,14 +128,19 @@ class DeleteAddressGroup(command.Command):
client.delete_address_group(obj)
except Exception as e:
result += 1
- LOG.error(_("Failed to delete address group with "
- "name or ID '%(group)s': %(e)s"),
- {'group': group, 'e': e})
+ LOG.error(
+ _(
+ "Failed to delete address group with "
+ "name or ID '%(group)s': %(e)s"
+ ),
+ {'group': group, 'e': e},
+ )
if result > 0:
total = len(parsed_args.address_group)
- msg = (_("%(result)s of %(total)s address groups failed "
- "to delete.") % {'result': result, 'total': total})
+ msg = _(
+ "%(result)s of %(total)s address groups failed " "to delete."
+ ) % {'result': result, 'total': total}
raise exceptions.CommandError(msg)
@@ -149,13 +153,15 @@ class ListAddressGroup(command.Lister):
parser.add_argument(
'--name',
metavar='<name>',
- help=_("List only address groups of given name in output")
+ help=_("List only address groups of given name in output"),
)
parser.add_argument(
'--project',
metavar="<project>",
- help=_("List address groups according to their project "
- "(name or ID)")
+ help=_(
+ "List address groups according to their project "
+ "(name or ID)"
+ ),
)
identity_common.add_project_domain_option_to_parser(parser)
@@ -190,10 +196,17 @@ class ListAddressGroup(command.Lister):
attrs['project_id'] = project_id
data = client.address_groups(**attrs)
- return (column_headers,
- (utils.get_item_properties(
- s, columns, formatters={},
- ) for s in data))
+ return (
+ column_headers,
+ (
+ utils.get_item_properties(
+ s,
+ columns,
+ formatters={},
+ )
+ for s in data
+ ),
+ )
class SetAddressGroup(common.NeutronCommandWithExtraArgs):
@@ -204,46 +217,48 @@ class SetAddressGroup(common.NeutronCommandWithExtraArgs):
parser.add_argument(
'address_group',
metavar="<address-group>",
- help=_("Address group to modify (name or ID)")
+ help=_("Address group to modify (name or ID)"),
)
parser.add_argument(
- '--name',
- metavar="<name>",
- help=_('Set address group name')
+ '--name', metavar="<name>", help=_('Set address group name')
)
parser.add_argument(
'--description',
metavar="<description>",
- help=_('Set address group description')
+ help=_('Set address group description'),
)
parser.add_argument(
"--address",
metavar="<ip-address>",
action='append',
default=[],
- help=_("IP address or CIDR "
- "(repeat option to set multiple addresses)"),
+ help=_(
+ "IP address or CIDR "
+ "(repeat option to set multiple addresses)"
+ ),
)
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
obj = client.find_address_group(
- parsed_args.address_group,
- ignore_missing=False)
+ parsed_args.address_group, ignore_missing=False
+ )
attrs = {}
if parsed_args.name is not None:
attrs['name'] = parsed_args.name
if parsed_args.description is not None:
attrs['description'] = parsed_args.description
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
if attrs:
client.update_address_group(obj, **attrs)
if parsed_args.address:
client.add_addresses_to_address_group(
- obj, _format_addresses(parsed_args.address))
+ obj, _format_addresses(parsed_args.address)
+ )
class ShowAddressGroup(command.ShowOne):
@@ -254,7 +269,7 @@ class ShowAddressGroup(command.ShowOne):
parser.add_argument(
'address_group',
metavar="<address-group>",
- help=_("Address group to display (name or ID)")
+ help=_("Address group to display (name or ID)"),
)
return parser
@@ -262,8 +277,8 @@ class ShowAddressGroup(command.ShowOne):
def take_action(self, parsed_args):
client = self.app.client_manager.network
obj = client.find_address_group(
- parsed_args.address_group,
- ignore_missing=False)
+ parsed_args.address_group, ignore_missing=False
+ )
display_columns, columns = _get_columns(obj)
data = utils.get_item_properties(obj, columns, formatters={})
@@ -278,23 +293,26 @@ class UnsetAddressGroup(command.Command):
parser.add_argument(
'address_group',
metavar="<address-group>",
- help=_("Address group to modify (name or ID)")
+ help=_("Address group to modify (name or ID)"),
)
parser.add_argument(
"--address",
metavar="<ip-address>",
action='append',
default=[],
- help=_("IP address or CIDR "
- "(repeat option to unset multiple addresses)"),
+ help=_(
+ "IP address or CIDR "
+ "(repeat option to unset multiple addresses)"
+ ),
)
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
obj = client.find_address_group(
- parsed_args.address_group,
- ignore_missing=False)
+ parsed_args.address_group, ignore_missing=False
+ )
if parsed_args.address:
client.remove_addresses_from_address_group(
- obj, _format_addresses(parsed_args.address))
+ obj, _format_addresses(parsed_args.address)
+ )
diff --git a/openstackclient/network/v2/address_scope.py b/openstackclient/network/v2/address_scope.py
index 91f581b5..f6f9c6d3 100644
--- a/openstackclient/network/v2/address_scope.py
+++ b/openstackclient/network/v2/address_scope.py
@@ -32,9 +32,7 @@ def _get_columns(item):
}
hidden_columns = ['location', 'tenant_id']
return utils.get_osc_show_columns_for_sdk_resource(
- item,
- column_map,
- hidden_columns
+ item, column_map, hidden_columns
)
@@ -66,21 +64,19 @@ class CreateAddressScope(command.ShowOne, common.NeutronCommandWithExtraArgs):
def get_parser(self, prog_name):
parser = super(CreateAddressScope, self).get_parser(prog_name)
parser.add_argument(
- 'name',
- metavar="<name>",
- help=_("New address scope name")
+ 'name', metavar="<name>", help=_("New address scope name")
)
parser.add_argument(
'--ip-version',
type=int,
default=4,
choices=[4, 6],
- help=_("IP version (default is 4)")
+ help=_("IP version (default is 4)"),
)
parser.add_argument(
'--project',
metavar="<project>",
- help=_("Owner's project (name or ID)")
+ help=_("Owner's project (name or ID)"),
)
identity_common.add_project_domain_option_to_parser(parser)
@@ -88,12 +84,14 @@ class CreateAddressScope(command.ShowOne, common.NeutronCommandWithExtraArgs):
share_group.add_argument(
'--share',
action='store_true',
- help=_('Share the address scope between projects')
+ help=_('Share the address scope between projects'),
)
share_group.add_argument(
'--no-share',
action='store_true',
- help=_('Do not share the address scope between projects (default)')
+ help=_(
+ 'Do not share the address scope between projects (default)'
+ ),
)
return parser
@@ -102,7 +100,8 @@ class CreateAddressScope(command.ShowOne, common.NeutronCommandWithExtraArgs):
client = self.app.client_manager.network
attrs = _get_attrs(self.app.client_manager, parsed_args)
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
obj = client.create_address_scope(**attrs)
display_columns, columns = _get_columns(obj)
data = utils.get_item_properties(obj, columns, formatters={})
@@ -119,7 +118,7 @@ class DeleteAddressScope(command.Command):
'address_scope',
metavar="<address-scope>",
nargs='+',
- help=_("Address scope(s) to delete (name or ID)")
+ help=_("Address scope(s) to delete (name or ID)"),
)
return parser
@@ -134,14 +133,19 @@ class DeleteAddressScope(command.Command):
client.delete_address_scope(obj)
except Exception as e:
result += 1
- LOG.error(_("Failed to delete address scope with "
- "name or ID '%(scope)s': %(e)s"),
- {'scope': scope, 'e': e})
+ LOG.error(
+ _(
+ "Failed to delete address scope with "
+ "name or ID '%(scope)s': %(e)s"
+ ),
+ {'scope': scope, 'e': e},
+ )
if result > 0:
total = len(parsed_args.address_scope)
- msg = (_("%(result)s of %(total)s address scopes failed "
- "to delete.") % {'result': result, 'total': total})
+ msg = _(
+ "%(result)s of %(total)s address scopes failed " "to delete."
+ ) % {'result': result, 'total': total}
raise exceptions.CommandError(msg)
@@ -156,7 +160,7 @@ class ListAddressScope(command.Lister):
parser.add_argument(
'--name',
metavar='<name>',
- help=_("List only address scopes of given name in output")
+ help=_("List only address scopes of given name in output"),
)
parser.add_argument(
'--ip-version',
@@ -164,13 +168,17 @@ class ListAddressScope(command.Lister):
choices=[4, 6],
metavar='<ip-version>',
dest='ip_version',
- help=_("List address scopes of given IP version networks (4 or 6)")
+ help=_(
+ "List address scopes of given IP version networks (4 or 6)"
+ ),
)
parser.add_argument(
'--project',
metavar="<project>",
- help=_("List address scopes according to their project "
- "(name or ID)")
+ help=_(
+ "List address scopes according to their project "
+ "(name or ID)"
+ ),
)
identity_common.add_project_domain_option_to_parser(parser)
@@ -178,12 +186,12 @@ class ListAddressScope(command.Lister):
shared_group.add_argument(
'--share',
action='store_true',
- help=_("List address scopes shared between projects")
+ help=_("List address scopes shared between projects"),
)
shared_group.add_argument(
'--no-share',
action='store_true',
- help=_("List address scopes not shared between projects")
+ help=_("List address scopes not shared between projects"),
)
return parser
@@ -222,10 +230,17 @@ class ListAddressScope(command.Lister):
attrs['project_id'] = project_id
data = client.address_scopes(**attrs)
- return (column_headers,
- (utils.get_item_properties(
- s, columns, formatters={},
- ) for s in data))
+ return (
+ column_headers,
+ (
+ utils.get_item_properties(
+ s,
+ columns,
+ formatters={},
+ )
+ for s in data
+ ),
+ )
# TODO(rtheis): Use the SDK resource mapped attribute names once the
@@ -238,23 +253,21 @@ class SetAddressScope(common.NeutronCommandWithExtraArgs):
parser.add_argument(
'address_scope',
metavar="<address-scope>",
- help=_("Address scope to modify (name or ID)")
+ help=_("Address scope to modify (name or ID)"),
)
parser.add_argument(
- '--name',
- metavar="<name>",
- help=_('Set address scope name')
+ '--name', metavar="<name>", help=_('Set address scope name')
)
share_group = parser.add_mutually_exclusive_group()
share_group.add_argument(
'--share',
action='store_true',
- help=_('Share the address scope between projects')
+ help=_('Share the address scope between projects'),
)
share_group.add_argument(
'--no-share',
action='store_true',
- help=_('Do not share the address scope between projects')
+ help=_('Do not share the address scope between projects'),
)
return parser
@@ -262,8 +275,8 @@ class SetAddressScope(common.NeutronCommandWithExtraArgs):
def take_action(self, parsed_args):
client = self.app.client_manager.network
obj = client.find_address_scope(
- parsed_args.address_scope,
- ignore_missing=False)
+ parsed_args.address_scope, ignore_missing=False
+ )
attrs = {}
if parsed_args.name is not None:
attrs['name'] = parsed_args.name
@@ -272,7 +285,8 @@ class SetAddressScope(common.NeutronCommandWithExtraArgs):
if parsed_args.no_share:
attrs['shared'] = False
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
client.update_address_scope(obj, **attrs)
@@ -284,7 +298,7 @@ class ShowAddressScope(command.ShowOne):
parser.add_argument(
'address_scope',
metavar="<address-scope>",
- help=_("Address scope to display (name or ID)")
+ help=_("Address scope to display (name or ID)"),
)
return parser
@@ -292,8 +306,8 @@ class ShowAddressScope(command.ShowOne):
def take_action(self, parsed_args):
client = self.app.client_manager.network
obj = client.find_address_scope(
- parsed_args.address_scope,
- ignore_missing=False)
+ parsed_args.address_scope, ignore_missing=False
+ )
display_columns, columns = _get_columns(obj)
data = utils.get_item_properties(obj, columns, formatters={})
diff --git a/openstackclient/network/v2/floating_ip.py b/openstackclient/network/v2/floating_ip.py
index 22096bc4..f878a389 100644
--- a/openstackclient/network/v2/floating_ip.py
+++ b/openstackclient/network/v2/floating_ip.py
@@ -30,9 +30,7 @@ def _get_network_columns(item):
column_map = {}
hidden_columns = ['location', 'tenant_id']
return utils.get_osc_show_columns_for_sdk_resource(
- item,
- column_map,
- hidden_columns
+ item, column_map, hidden_columns
)
@@ -47,18 +45,19 @@ def _get_attrs(client_manager, parsed_args):
# Name of a network could be empty string.
if parsed_args.network is not None:
- network = network_client.find_network(parsed_args.network,
- ignore_missing=False)
+ network = network_client.find_network(
+ parsed_args.network, ignore_missing=False
+ )
attrs['floating_network_id'] = network.id
if parsed_args.subnet:
- subnet = network_client.find_subnet(parsed_args.subnet,
- ignore_missing=False)
+ subnet = network_client.find_subnet(
+ parsed_args.subnet, ignore_missing=False
+ )
attrs['subnet_id'] = subnet.id
if parsed_args.port:
- port = network_client.find_port(parsed_args.port,
- ignore_missing=False)
+ port = network_client.find_port(parsed_args.port, ignore_missing=False)
attrs['port_id'] = port.id
if parsed_args.floating_ip_address:
@@ -69,7 +68,8 @@ def _get_attrs(client_manager, parsed_args):
if parsed_args.qos_policy:
attrs['qos_policy_id'] = network_client.find_qos_policy(
- parsed_args.qos_policy, ignore_missing=False).id
+ parsed_args.qos_policy, ignore_missing=False
+ ).id
if parsed_args.description is not None:
attrs['description'] = parsed_args.description
@@ -92,8 +92,9 @@ def _get_attrs(client_manager, parsed_args):
return attrs
-class CreateFloatingIP(common.NetworkAndComputeShowOne,
- common.NeutronCommandWithExtraArgs):
+class CreateFloatingIP(
+ common.NetworkAndComputeShowOne, common.NeutronCommandWithExtraArgs
+):
_description = _("Create floating IP")
def update_parser_common(self, parser):
@@ -103,7 +104,7 @@ class CreateFloatingIP(common.NetworkAndComputeShowOne,
parser.add_argument(
'network',
metavar='<network>',
- help=_("Network to allocate floating IP from (name or ID)")
+ help=_("Network to allocate floating IP from (name or ID)"),
)
return parser
@@ -112,72 +113,83 @@ class CreateFloatingIP(common.NetworkAndComputeShowOne,
'--subnet',
metavar='<subnet>',
help=self.enhance_help_neutron(
- _("Subnet on which you want to create the floating IP "
- "(name or ID)"))
+ _(
+ "Subnet on which you want to create the floating IP "
+ "(name or ID)"
+ )
+ ),
)
parser.add_argument(
'--port',
metavar='<port>',
help=self.enhance_help_neutron(
- _("Port to be associated with the floating IP "
- "(name or ID)"))
+ _("Port to be associated with the floating IP " "(name or ID)")
+ ),
)
parser.add_argument(
'--floating-ip-address',
metavar='<ip-address>',
dest='floating_ip_address',
- help=self.enhance_help_neutron(_("Floating IP address"))
+ help=self.enhance_help_neutron(_("Floating IP address")),
)
parser.add_argument(
'--fixed-ip-address',
metavar='<ip-address>',
dest='fixed_ip_address',
help=self.enhance_help_neutron(
- _("Fixed IP address mapped to the floating IP"))
+ _("Fixed IP address mapped to the floating IP")
+ ),
)
parser.add_argument(
'--qos-policy',
metavar='<qos-policy>',
help=self.enhance_help_neutron(
- _("Attach QoS policy to the floating IP (name or ID)"))
+ _("Attach QoS policy to the floating IP (name or ID)")
+ ),
)
parser.add_argument(
'--description',
metavar='<description>',
- help=self.enhance_help_neutron(_('Set floating IP description'))
+ help=self.enhance_help_neutron(_('Set floating IP description')),
)
parser.add_argument(
'--project',
metavar='<project>',
- help=self.enhance_help_neutron(_("Owner's project (name or ID)"))
+ help=self.enhance_help_neutron(_("Owner's project (name or ID)")),
)
parser.add_argument(
'--dns-domain',
metavar='<dns-domain>',
dest='dns_domain',
help=self.enhance_help_neutron(
- _("Set DNS domain for this floating IP"))
+ _("Set DNS domain for this floating IP")
+ ),
)
parser.add_argument(
'--dns-name',
metavar='<dns-name>',
dest='dns_name',
help=self.enhance_help_neutron(
- _("Set DNS name for this floating IP"))
+ _("Set DNS name for this floating IP")
+ ),
)
identity_common.add_project_domain_option_to_parser(
- parser, enhance_help=self.enhance_help_neutron)
+ parser, enhance_help=self.enhance_help_neutron
+ )
_tag.add_tag_option_to_parser_for_create(
- parser, _('floating IP'), enhance_help=self.enhance_help_neutron)
+ parser, _('floating IP'), enhance_help=self.enhance_help_neutron
+ )
return parser
def take_action_network(self, client, parsed_args):
attrs = _get_attrs(self.app.client_manager, parsed_args)
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
with common.check_missing_extension_if_error(
- self.app.client_manager.network, attrs):
+ self.app.client_manager.network, attrs
+ ):
obj = client.create_ip(**attrs)
# tags cannot be set when created, so tags need to be set later.
@@ -206,7 +218,7 @@ class DeleteFloatingIP(common.NetworkAndComputeDelete):
'floating_ip',
metavar="<floating-ip>",
nargs="+",
- help=_("Floating IP(s) to delete (IP address or ID)")
+ help=_("Floating IP(s) to delete (IP address or ID)"),
)
return parser
@@ -232,60 +244,79 @@ class ListFloatingIP(common.NetworkAndComputeLister):
'--network',
metavar='<network>',
help=self.enhance_help_neutron(
- _("List floating IP(s) according to "
- "given network (name or ID)"))
+ _(
+ "List floating IP(s) according to "
+ "given network (name or ID)"
+ )
+ ),
)
parser.add_argument(
'--port',
metavar='<port>',
help=self.enhance_help_neutron(
- _("List floating IP(s) according to given port (name or ID)"))
+ _("List floating IP(s) according to given port (name or ID)")
+ ),
)
parser.add_argument(
'--fixed-ip-address',
metavar='<ip-address>',
help=self.enhance_help_neutron(
- _("List floating IP(s) according to given fixed IP address"))
+ _("List floating IP(s) according to given fixed IP address")
+ ),
)
parser.add_argument(
'--floating-ip-address',
metavar='<ip-address>',
help=self.enhance_help_neutron(
- _("List floating IP(s) according to given floating IP "
- "address"))
+ _(
+ "List floating IP(s) according to given floating IP "
+ "address"
+ )
+ ),
)
parser.add_argument(
'--long',
action='store_true',
default=False,
help=self.enhance_help_neutron(
- _("List additional fields in output"))
+ _("List additional fields in output")
+ ),
)
parser.add_argument(
'--status',
metavar='<status>',
choices=['ACTIVE', 'DOWN'],
help=self.enhance_help_neutron(
- _("List floating IP(s) according to given status ('ACTIVE', "
- "'DOWN')"))
+ _(
+ "List floating IP(s) according to given status ('ACTIVE', "
+ "'DOWN')"
+ )
+ ),
)
parser.add_argument(
'--project',
metavar='<project>',
help=self.enhance_help_neutron(
- _("List floating IP(s) according to given project (name or "
- "ID)"))
+ _(
+ "List floating IP(s) according to given project (name or "
+ "ID)"
+ )
+ ),
)
identity_common.add_project_domain_option_to_parser(parser)
parser.add_argument(
'--router',
metavar='<router>',
help=self.enhance_help_neutron(
- _("List floating IP(s) according to given router (name or "
- "ID)"))
+ _(
+ "List floating IP(s) according to given router (name or "
+ "ID)"
+ )
+ ),
)
_tag.add_tag_filtering_option_to_parser(
- parser, _('floating IP'), enhance_help=self.enhance_help_neutron)
+ parser, _('floating IP'), enhance_help=self.enhance_help_neutron
+ )
return parser
@@ -330,12 +361,14 @@ class ListFloatingIP(common.NetworkAndComputeLister):
query = {}
if parsed_args.network is not None:
- network = network_client.find_network(parsed_args.network,
- ignore_missing=False)
+ network = network_client.find_network(
+ parsed_args.network, ignore_missing=False
+ )
query['floating_network_id'] = network.id
if parsed_args.port is not None:
- port = network_client.find_port(parsed_args.port,
- ignore_missing=False)
+ port = network_client.find_port(
+ parsed_args.port, ignore_missing=False
+ )
query['port_id'] = port.id
if parsed_args.fixed_ip_address is not None:
query['fixed_ip_address'] = parsed_args.fixed_ip_address
@@ -351,19 +384,26 @@ class ListFloatingIP(common.NetworkAndComputeLister):
)
query['project_id'] = project.id
if parsed_args.router is not None:
- router = network_client.find_router(parsed_args.router,
- ignore_missing=False)
+ router = network_client.find_router(
+ parsed_args.router, ignore_missing=False
+ )
query['router_id'] = router.id
_tag.get_tag_filtering_args(parsed_args, query)
data = client.ips(**query)
- return (headers,
- (utils.get_item_properties(
- s, columns,
+ return (
+ headers,
+ (
+ utils.get_item_properties(
+ s,
+ columns,
formatters={},
- ) for s in data))
+ )
+ for s in data
+ ),
+ )
def take_action_compute(self, client, parsed_args):
columns = (
@@ -383,11 +423,17 @@ class ListFloatingIP(common.NetworkAndComputeLister):
data = client.api.floating_ip_list()
- return (headers,
- (utils.get_dict_properties(
- s, columns,
+ return (
+ headers,
+ (
+ utils.get_dict_properties(
+ s,
+ columns,
formatters={},
- ) for s in data))
+ )
+ for s in data
+ ),
+ )
class SetFloatingIP(common.NeutronCommandWithExtraArgs):
@@ -398,33 +444,37 @@ class SetFloatingIP(common.NeutronCommandWithExtraArgs):
parser.add_argument(
'floating_ip',
metavar='<floating-ip>',
- help=_("Floating IP to modify (IP address or ID)"))
+ help=_("Floating IP to modify (IP address or ID)"),
+ )
parser.add_argument(
'--port',
metavar='<port>',
- help=_("Associate the floating IP with port (name or ID)")),
+ help=_("Associate the floating IP with port (name or ID)"),
+ ),
parser.add_argument(
'--fixed-ip-address',
metavar='<ip-address>',
dest='fixed_ip_address',
- help=_("Fixed IP of the port "
- "(required only if port has multiple IPs)")
+ help=_(
+ "Fixed IP of the port "
+ "(required only if port has multiple IPs)"
+ ),
)
parser.add_argument(
'--description',
metavar='<description>',
- help=_('Set floating IP description')
+ help=_('Set floating IP description'),
)
qos_policy_group = parser.add_mutually_exclusive_group()
qos_policy_group.add_argument(
'--qos-policy',
metavar='<qos-policy>',
- help=_("Attach QoS policy to the floating IP (name or ID)")
+ help=_("Attach QoS policy to the floating IP (name or ID)"),
)
qos_policy_group.add_argument(
'--no-qos-policy',
action='store_true',
- help=_("Remove the QoS policy attached to the floating IP")
+ help=_("Remove the QoS policy attached to the floating IP"),
)
_tag.add_tag_option_to_parser_for_set(parser, _('floating IP'))
@@ -439,8 +489,7 @@ class SetFloatingIP(common.NeutronCommandWithExtraArgs):
ignore_missing=False,
)
if parsed_args.port:
- port = client.find_port(parsed_args.port,
- ignore_missing=False)
+ port = client.find_port(parsed_args.port, ignore_missing=False)
attrs['port_id'] = port.id
if parsed_args.fixed_ip_address:
@@ -451,13 +500,15 @@ class SetFloatingIP(common.NeutronCommandWithExtraArgs):
if parsed_args.qos_policy:
attrs['qos_policy_id'] = client.find_qos_policy(
- parsed_args.qos_policy, ignore_missing=False).id
+ parsed_args.qos_policy, ignore_missing=False
+ ).id
if 'no_qos_policy' in parsed_args and parsed_args.no_qos_policy:
attrs['qos_policy_id'] = None
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
if attrs:
client.update_ip(obj, **attrs)
@@ -473,7 +524,7 @@ class ShowFloatingIP(common.NetworkAndComputeShowOne):
parser.add_argument(
'floating_ip',
metavar="<floating-ip>",
- help=_("Floating IP to display (IP address or ID)")
+ help=_("Floating IP to display (IP address or ID)"),
)
return parser
@@ -501,18 +552,19 @@ class UnsetFloatingIP(common.NeutronCommandWithExtraArgs):
parser.add_argument(
'floating_ip',
metavar='<floating-ip>',
- help=_("Floating IP to disassociate (IP address or ID)"))
+ help=_("Floating IP to disassociate (IP address or ID)"),
+ )
parser.add_argument(
'--port',
action='store_true',
default=False,
- help=_("Disassociate any port associated with the floating IP")
+ help=_("Disassociate any port associated with the floating IP"),
)
parser.add_argument(
'--qos-policy',
action='store_true',
default=False,
- help=_("Remove the QoS policy attached to the floating IP")
+ help=_("Remove the QoS policy attached to the floating IP"),
)
_tag.add_tag_option_to_parser_for_unset(parser, _('floating IP'))
@@ -530,7 +582,8 @@ class UnsetFloatingIP(common.NeutronCommandWithExtraArgs):
if parsed_args.qos_policy:
attrs['qos_policy_id'] = None
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
if attrs:
client.update_ip(obj, **attrs)
diff --git a/openstackclient/network/v2/floating_ip_pool.py b/openstackclient/network/v2/floating_ip_pool.py
index 32852004..43d7ac85 100644
--- a/openstackclient/network/v2/floating_ip_pool.py
+++ b/openstackclient/network/v2/floating_ip_pool.py
@@ -25,17 +25,23 @@ class ListFloatingIPPool(common.NetworkAndComputeLister):
_description = _("List pools of floating IP addresses")
def take_action_network(self, client, parsed_args):
- msg = _("Floating ip pool operations are only available for "
- "Compute v2 network.")
+ msg = _(
+ "Floating ip pool operations are only available for "
+ "Compute v2 network."
+ )
raise exceptions.CommandError(msg)
def take_action_compute(self, client, parsed_args):
- columns = (
- 'Name',
- )
+ columns = ('Name',)
data = client.api.floating_ip_pool_list()
- return (columns,
- (utils.get_dict_properties(
- s, columns,
- ) for s in data))
+ return (
+ columns,
+ (
+ utils.get_dict_properties(
+ s,
+ columns,
+ )
+ for s in data
+ ),
+ )
diff --git a/openstackclient/network/v2/floating_ip_port_forwarding.py b/openstackclient/network/v2/floating_ip_port_forwarding.py
index 0156af8e..324708ae 100644
--- a/openstackclient/network/v2/floating_ip_port_forwarding.py
+++ b/openstackclient/network/v2/floating_ip_port_forwarding.py
@@ -31,8 +31,10 @@ def validate_ports_diff(ports):
ports_diff = ports[-1] - ports[0]
if ports_diff < 0:
- msg = _("The last number in port range must be"
- " greater or equal to the first")
+ msg = _(
+ "The last number in port range must be"
+ " greater or equal to the first"
+ )
raise exceptions.CommandError(msg)
return ports_diff
@@ -42,8 +44,10 @@ def validate_ports_match(internal_ports, external_ports):
external_ports_diff = validate_ports_diff(external_ports)
if internal_ports_diff != 0 and internal_ports_diff != external_ports_diff:
- msg = _("The relation between internal and external ports does not "
- "match the pattern 1:N and N:N")
+ msg = _(
+ "The relation between internal and external ports does not "
+ "match the pattern 1:N and N:N"
+ )
raise exceptions.CommandError(msg)
@@ -84,66 +88,80 @@ def _get_columns(item):
column_map = {}
hidden_columns = ['location', 'tenant_id']
return utils.get_osc_show_columns_for_sdk_resource(
- item,
- column_map,
- hidden_columns
+ item, column_map, hidden_columns
)
-class CreateFloatingIPPortForwarding(command.ShowOne,
- common.NeutronCommandWithExtraArgs):
+class CreateFloatingIPPortForwarding(
+ command.ShowOne, common.NeutronCommandWithExtraArgs
+):
_description = _("Create floating IP port forwarding")
def get_parser(self, prog_name):
- parser = super(CreateFloatingIPPortForwarding,
- self).get_parser(prog_name)
+ parser = super(CreateFloatingIPPortForwarding, self).get_parser(
+ prog_name
+ )
parser.add_argument(
'--internal-ip-address',
required=True,
metavar='<internal-ip-address>',
- help=_("The fixed IPv4 address of the network "
- "port associated to the floating IP port forwarding")
+ help=_(
+ "The fixed IPv4 address of the network "
+ "port associated to the floating IP port forwarding"
+ ),
)
parser.add_argument(
'--port',
metavar='<port>',
required=True,
- help=_("The name or ID of the network port associated "
- "to the floating IP port forwarding")
+ help=_(
+ "The name or ID of the network port associated "
+ "to the floating IP port forwarding"
+ ),
)
parser.add_argument(
'--internal-protocol-port',
metavar='<port-number>',
required=True,
- help=_("The protocol port number "
- "of the network port fixed IPv4 address "
- "associated to the floating IP port forwarding")
+ help=_(
+ "The protocol port number "
+ "of the network port fixed IPv4 address "
+ "associated to the floating IP port forwarding"
+ ),
)
parser.add_argument(
'--external-protocol-port',
metavar='<port-number>',
required=True,
- help=_("The protocol port number of "
- "the port forwarding's floating IP address")
+ help=_(
+ "The protocol port number of "
+ "the port forwarding's floating IP address"
+ ),
)
parser.add_argument(
'--protocol',
metavar='<protocol>',
required=True,
- help=_("The protocol used in the floating IP "
- "port forwarding, for instance: TCP, UDP")
+ help=_(
+ "The protocol used in the floating IP "
+ "port forwarding, for instance: TCP, UDP"
+ ),
),
parser.add_argument(
'--description',
metavar='<description>',
- help=_("A text to describe/contextualize the use of the "
- "port forwarding configuration")
+ help=_(
+ "A text to describe/contextualize the use of the "
+ "port forwarding configuration"
+ ),
)
parser.add_argument(
'floating_ip',
metavar='<floating-ip>',
- help=_("Floating IP that the port forwarding belongs to "
- "(IP address or ID)")
+ help=_(
+ "Floating IP that the port forwarding belongs to "
+ "(IP address or ID)"
+ ),
)
return parser
@@ -159,8 +177,7 @@ class CreateFloatingIPPortForwarding(command.ShowOne,
validate_and_assign_port_ranges(parsed_args, attrs)
if parsed_args.port:
- port = client.find_port(parsed_args.port,
- ignore_missing=False)
+ port = client.find_port(parsed_args.port, ignore_missing=False)
attrs['internal_port_id'] = port.id
attrs['internal_ip_address'] = parsed_args.internal_ip_address
attrs['protocol'] = parsed_args.protocol
@@ -169,11 +186,11 @@ class CreateFloatingIPPortForwarding(command.ShowOne,
attrs['description'] = parsed_args.description
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
obj = client.create_floating_ip_port_forwarding(
- floating_ip.id,
- **attrs
+ floating_ip.id, **attrs
)
display_columns, columns = _get_columns(obj)
data = utils.get_item_properties(obj, columns)
@@ -184,19 +201,22 @@ class DeleteFloatingIPPortForwarding(command.Command):
_description = _("Delete floating IP port forwarding")
def get_parser(self, prog_name):
- parser = super(DeleteFloatingIPPortForwarding,
- self).get_parser(prog_name)
+ parser = super(DeleteFloatingIPPortForwarding, self).get_parser(
+ prog_name
+ )
parser.add_argument(
'floating_ip',
metavar='<floating-ip>',
- help=_("Floating IP that the port forwarding belongs to "
- "(IP address or ID)")
+ help=_(
+ "Floating IP that the port forwarding belongs to "
+ "(IP address or ID)"
+ ),
)
parser.add_argument(
'port_forwarding_id',
nargs="+",
metavar="<port-forwarding-id>",
- help=_("The ID of the floating IP port forwarding(s) to delete")
+ help=_("The ID of the floating IP port forwarding(s) to delete"),
)
return parser
@@ -217,13 +237,18 @@ class DeleteFloatingIPPortForwarding(command.Command):
)
except Exception as e:
result += 1
- LOG.error(_("Failed to delete floating IP port forwarding "
- "'%(port_forwarding_id)s': %(e)s"),
- {'port_forwarding_id': port_forwarding_id, 'e': e})
+ LOG.error(
+ _(
+ "Failed to delete floating IP port forwarding "
+ "'%(port_forwarding_id)s': %(e)s"
+ ),
+ {'port_forwarding_id': port_forwarding_id, 'e': e},
+ )
if result > 0:
total = len(parsed_args.port_forwarding_id)
- msg = (_("%(result)s of %(total)s Port forwarding failed "
- "to delete.") % {'result': result, 'total': total})
+ msg = _(
+ "%(result)s of %(total)s Port forwarding failed " "to delete."
+ ) % {'result': result, 'total': total}
raise exceptions.CommandError(msg)
@@ -231,31 +256,38 @@ class ListFloatingIPPortForwarding(command.Lister):
_description = _("List floating IP port forwarding")
def get_parser(self, prog_name):
- parser = super(ListFloatingIPPortForwarding,
- self).get_parser(prog_name)
+ parser = super(ListFloatingIPPortForwarding, self).get_parser(
+ prog_name
+ )
parser.add_argument(
'floating_ip',
metavar='<floating-ip>',
- help=_("Floating IP that the port forwarding belongs to "
- "(IP address or ID)")
+ help=_(
+ "Floating IP that the port forwarding belongs to "
+ "(IP address or ID)"
+ ),
)
parser.add_argument(
'--port',
metavar='<port>',
- help=_("Filter the list result by the ID or name of "
- "the internal network port")
+ help=_(
+ "Filter the list result by the ID or name of "
+ "the internal network port"
+ ),
)
parser.add_argument(
'--external-protocol-port',
metavar='<port-number>',
dest='external_protocol_port',
- help=_("Filter the list result by the "
- "protocol port number of the floating IP")
+ help=_(
+ "Filter the list result by the "
+ "protocol port number of the floating IP"
+ ),
)
parser.add_argument(
'--protocol',
metavar='protocol',
- help=_("Filter the list result by the port protocol")
+ help=_("Filter the list result by the port protocol"),
)
return parser
@@ -289,8 +321,7 @@ class ListFloatingIPPortForwarding(command.Lister):
query = {}
if parsed_args.port:
- port = client.find_port(parsed_args.port,
- ignore_missing=False)
+ port = client.find_port(parsed_args.port, ignore_missing=False)
query['internal_port_id'] = port.id
external_port = parsed_args.external_protocol_port
if external_port:
@@ -298,7 +329,8 @@ class ListFloatingIPPortForwarding(command.Lister):
query['external_port_range'] = external_port
else:
query['external_port'] = int(
- parsed_args.external_protocol_port)
+ parsed_args.external_protocol_port
+ )
if parsed_args.protocol is not None:
query['protocol'] = parsed_args.protocol
@@ -309,66 +341,83 @@ class ListFloatingIPPortForwarding(command.Lister):
data = client.floating_ip_port_forwardings(obj, **query)
- return (headers,
- (utils.get_item_properties(
- s, columns,
+ return (
+ headers,
+ (
+ utils.get_item_properties(
+ s,
+ columns,
formatters={},
- ) for s in data))
+ )
+ for s in data
+ ),
+ )
class SetFloatingIPPortForwarding(common.NeutronCommandWithExtraArgs):
_description = _("Set floating IP Port Forwarding Properties")
def get_parser(self, prog_name):
- parser = super(SetFloatingIPPortForwarding,
- self).get_parser(prog_name)
+ parser = super(SetFloatingIPPortForwarding, self).get_parser(prog_name)
parser.add_argument(
'floating_ip',
metavar='<floating-ip>',
- help=_("Floating IP that the port forwarding belongs to "
- "(IP address or ID)")
+ help=_(
+ "Floating IP that the port forwarding belongs to "
+ "(IP address or ID)"
+ ),
)
parser.add_argument(
'port_forwarding_id',
metavar='<port-forwarding-id>',
- help=_("The ID of the floating IP port forwarding")
+ help=_("The ID of the floating IP port forwarding"),
)
parser.add_argument(
'--port',
metavar='<port>',
- help=_("The ID of the network port associated to "
- "the floating IP port forwarding")
+ help=_(
+ "The ID of the network port associated to "
+ "the floating IP port forwarding"
+ ),
)
parser.add_argument(
'--internal-ip-address',
metavar='<internal-ip-address>',
- help=_("The fixed IPv4 address of the network port "
- "associated to the floating IP port forwarding")
+ help=_(
+ "The fixed IPv4 address of the network port "
+ "associated to the floating IP port forwarding"
+ ),
)
parser.add_argument(
'--internal-protocol-port',
metavar='<port-number>',
- help=_("The TCP/UDP/other protocol port number of the "
- "network port fixed IPv4 address associated to "
- "the floating IP port forwarding")
+ help=_(
+ "The TCP/UDP/other protocol port number of the "
+ "network port fixed IPv4 address associated to "
+ "the floating IP port forwarding"
+ ),
)
parser.add_argument(
'--external-protocol-port',
metavar='<port-number>',
- help=_("The TCP/UDP/other protocol port number of the "
- "port forwarding's floating IP address")
+ help=_(
+ "The TCP/UDP/other protocol port number of the "
+ "port forwarding's floating IP address"
+ ),
)
parser.add_argument(
'--protocol',
metavar='<protocol>',
choices=['tcp', 'udp'],
- help=_("The IP protocol used in the floating IP port forwarding")
+ help=_("The IP protocol used in the floating IP port forwarding"),
),
parser.add_argument(
'--description',
metavar='<description>',
- help=_("A text to describe/contextualize the use of "
- "the port forwarding configuration")
+ help=_(
+ "A text to describe/contextualize the use of "
+ "the port forwarding configuration"
+ ),
)
return parser
@@ -382,8 +431,7 @@ class SetFloatingIPPortForwarding(common.NeutronCommandWithExtraArgs):
attrs = {}
if parsed_args.port:
- port = client.find_port(parsed_args.port,
- ignore_missing=False)
+ port = client.find_port(parsed_args.port, ignore_missing=False)
attrs['internal_port_id'] = port.id
if parsed_args.internal_ip_address:
@@ -398,28 +446,33 @@ class SetFloatingIPPortForwarding(common.NeutronCommandWithExtraArgs):
attrs['description'] = parsed_args.description
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
client.update_floating_ip_port_forwarding(
- floating_ip.id, parsed_args.port_forwarding_id, **attrs)
+ floating_ip.id, parsed_args.port_forwarding_id, **attrs
+ )
class ShowFloatingIPPortForwarding(command.ShowOne):
_description = _("Display floating IP Port Forwarding details")
def get_parser(self, prog_name):
- parser = super(ShowFloatingIPPortForwarding,
- self).get_parser(prog_name)
+ parser = super(ShowFloatingIPPortForwarding, self).get_parser(
+ prog_name
+ )
parser.add_argument(
'floating_ip',
metavar='<floating-ip>',
- help=_("Floating IP that the port forwarding belongs to "
- "(IP address or ID)")
+ help=_(
+ "Floating IP that the port forwarding belongs to "
+ "(IP address or ID)"
+ ),
)
parser.add_argument(
'port_forwarding_id',
metavar="<port-forwarding-id>",
- help=_("The ID of the floating IP port forwarding")
+ help=_("The ID of the floating IP port forwarding"),
)
return parser
diff --git a/openstackclient/network/v2/ip_availability.py b/openstackclient/network/v2/ip_availability.py
index b065ab1e..49b0c07c 100644
--- a/openstackclient/network/v2/ip_availability.py
+++ b/openstackclient/network/v2/ip_availability.py
@@ -29,9 +29,7 @@ def _get_columns(item):
column_map = {}
hidden_columns = ['id', 'name', 'location', 'tenant_id']
return utils.get_osc_show_columns_for_sdk_resource(
- item,
- column_map,
- hidden_columns
+ item, column_map, hidden_columns
)
@@ -49,8 +47,10 @@ class ListIPAvailability(command.Lister):
choices=[4, 6],
metavar='<ip-version>',
dest='ip_version',
- help=_("List IP availability of given IP version "
- "networks (default is 4)"),
+ help=_(
+ "List IP availability of given IP version "
+ "networks (default is 4)"
+ ),
)
parser.add_argument(
'--project',
@@ -89,10 +89,16 @@ class ListIPAvailability(command.Lister):
).id
filters['project_id'] = project_id
data = client.network_ip_availabilities(**filters)
- return (column_headers,
- (utils.get_item_properties(
- s, columns,
- ) for s in data))
+ return (
+ column_headers,
+ (
+ utils.get_item_properties(
+ s,
+ columns,
+ )
+ for s in data
+ ),
+ )
class ShowIPAvailability(command.ShowOne):
@@ -109,10 +115,12 @@ class ShowIPAvailability(command.ShowOne):
def take_action(self, parsed_args):
client = self.app.client_manager.network
- network_id = client.find_network(parsed_args.network,
- ignore_missing=False).id
- obj = client.find_network_ip_availability(network_id,
- ignore_missing=False)
+ network_id = client.find_network(
+ parsed_args.network, ignore_missing=False
+ ).id
+ obj = client.find_network_ip_availability(
+ network_id, ignore_missing=False
+ )
display_columns, columns = _get_columns(obj)
data = utils.get_item_properties(obj, columns, formatters=_formatters)
return (display_columns, data)
diff --git a/openstackclient/network/v2/l3_conntrack_helper.py b/openstackclient/network/v2/l3_conntrack_helper.py
index df153dd8..f55a4613 100644
--- a/openstackclient/network/v2/l3_conntrack_helper.py
+++ b/openstackclient/network/v2/l3_conntrack_helper.py
@@ -28,9 +28,7 @@ def _get_columns(item):
column_map = {}
hidden_columns = ['location', 'tenant_id']
return utils.get_osc_show_columns_for_sdk_resource(
- item,
- column_map,
- hidden_columns
+ item, column_map, hidden_columns
)
@@ -55,27 +53,29 @@ class CreateConntrackHelper(command.ShowOne):
parser.add_argument(
'router',
metavar='<router>',
- help=_('Router for which conntrack helper will be created')
+ help=_('Router for which conntrack helper will be created'),
)
parser.add_argument(
'--helper',
required=True,
metavar='<helper>',
- help=_('The netfilter conntrack helper module')
+ help=_('The netfilter conntrack helper module'),
)
parser.add_argument(
'--protocol',
required=True,
metavar='<protocol>',
- help=_('The network protocol for the netfilter conntrack target '
- 'rule')
+ help=_(
+ 'The network protocol for the netfilter conntrack target '
+ 'rule'
+ ),
)
parser.add_argument(
'--port',
required=True,
metavar='<port>',
type=int,
- help=_('The network port for the netfilter conntrack target rule')
+ help=_('The network port for the netfilter conntrack target rule'),
)
return parser
@@ -99,13 +99,13 @@ class DeleteConntrackHelper(command.Command):
parser.add_argument(
'router',
metavar='<router>',
- help=_('Router that the conntrack helper belong to')
+ help=_('Router that the conntrack helper belong to'),
)
parser.add_argument(
'conntrack_helper_id',
metavar='<conntrack-helper-id>',
nargs='+',
- help=_('The ID of the conntrack helper(s) to delete')
+ help=_('The ID of the conntrack helper(s) to delete'),
)
return parser
@@ -118,17 +118,24 @@ class DeleteConntrackHelper(command.Command):
for ct_helper in parsed_args.conntrack_helper_id:
try:
client.delete_conntrack_helper(
- ct_helper, router.id, ignore_missing=False)
+ ct_helper, router.id, ignore_missing=False
+ )
except Exception as e:
result += 1
- LOG.error(_("Failed to delete L3 conntrack helper with "
- "ID '%(ct_helper)s': %(e)s"),
- {'ct_helper': ct_helper, 'e': e})
+ LOG.error(
+ _(
+ "Failed to delete L3 conntrack helper with "
+ "ID '%(ct_helper)s': %(e)s"
+ ),
+ {'ct_helper': ct_helper, 'e': e},
+ )
if result > 0:
total = len(parsed_args.conntrack_helper_id)
- msg = (_("%(result)s of %(total)s L3 conntrack helpers failed "
- "to delete.") % {'result': result, 'total': total})
+ msg = _(
+ "%(result)s of %(total)s L3 conntrack helpers failed "
+ "to delete."
+ ) % {'result': result, 'total': total}
raise exceptions.CommandError(msg)
@@ -140,23 +147,25 @@ class ListConntrackHelper(command.Lister):
parser.add_argument(
'router',
metavar='<router>',
- help=_('Router that the conntrack helper belong to')
+ help=_('Router that the conntrack helper belong to'),
)
parser.add_argument(
'--helper',
metavar='<helper>',
- help=_('The netfilter conntrack helper module')
+ help=_('The netfilter conntrack helper module'),
)
parser.add_argument(
'--protocol',
metavar='<protocol>',
- help=_('The network protocol for the netfilter conntrack target '
- 'rule')
+ help=_(
+ 'The network protocol for the netfilter conntrack target '
+ 'rule'
+ ),
)
parser.add_argument(
'--port',
metavar='<port>',
- help=_('The network port for the netfilter conntrack target rule')
+ help=_('The network port for the netfilter conntrack target rule'),
)
return parser
@@ -180,10 +189,17 @@ class ListConntrackHelper(command.Lister):
attrs = _get_attrs(client, parsed_args)
data = client.conntrack_helpers(attrs.pop('router_id'), **attrs)
- return (column_headers,
- (utils.get_item_properties(
- s, columns, formatters={},
- ) for s in data))
+ return (
+ column_headers,
+ (
+ utils.get_item_properties(
+ s,
+ columns,
+ formatters={},
+ )
+ for s in data
+ ),
+ )
class SetConntrackHelper(command.Command):
@@ -194,29 +210,31 @@ class SetConntrackHelper(command.Command):
parser.add_argument(
'router',
metavar='<router>',
- help=_('Router that the conntrack helper belong to')
+ help=_('Router that the conntrack helper belong to'),
)
parser.add_argument(
'conntrack_helper_id',
metavar='<conntrack-helper-id>',
- help=_('The ID of the conntrack helper(s)')
+ help=_('The ID of the conntrack helper(s)'),
)
parser.add_argument(
'--helper',
metavar='<helper>',
- help=_('The netfilter conntrack helper module')
+ help=_('The netfilter conntrack helper module'),
)
parser.add_argument(
'--protocol',
metavar='<protocol>',
- help=_('The network protocol for the netfilter conntrack target '
- 'rule')
+ help=_(
+ 'The network protocol for the netfilter conntrack target '
+ 'rule'
+ ),
)
parser.add_argument(
'--port',
metavar='<port>',
type=int,
- help=_('The network port for the netfilter conntrack target rule')
+ help=_('The network port for the netfilter conntrack target rule'),
)
return parser
@@ -225,8 +243,10 @@ class SetConntrackHelper(command.Command):
attrs = _get_attrs(client, parsed_args)
if attrs:
client.update_conntrack_helper(
- parsed_args.conntrack_helper_id, attrs.pop('router_id'),
- **attrs)
+ parsed_args.conntrack_helper_id,
+ attrs.pop('router_id'),
+ **attrs
+ )
class ShowConntrackHelper(command.ShowOne):
@@ -237,12 +257,12 @@ class ShowConntrackHelper(command.ShowOne):
parser.add_argument(
'router',
metavar='<router>',
- help=_('Router that the conntrack helper belong to')
+ help=_('Router that the conntrack helper belong to'),
)
parser.add_argument(
'conntrack_helper_id',
metavar='<conntrack-helper-id>',
- help=_('The ID of the conntrack helper')
+ help=_('The ID of the conntrack helper'),
)
return parser
@@ -251,7 +271,8 @@ class ShowConntrackHelper(command.ShowOne):
client = self.app.client_manager.network
router = client.find_router(parsed_args.router, ignore_missing=False)
obj = client.get_conntrack_helper(
- parsed_args.conntrack_helper_id, router.id)
+ parsed_args.conntrack_helper_id, router.id
+ )
display_columns, columns = _get_columns(obj)
data = utils.get_item_properties(obj, columns, formatters={})
diff --git a/openstackclient/network/v2/local_ip.py b/openstackclient/network/v2/local_ip.py
index e8fb5f8a..0d92f2c1 100644
--- a/openstackclient/network/v2/local_ip.py
+++ b/openstackclient/network/v2/local_ip.py
@@ -31,7 +31,8 @@ def _get_columns(item):
column_map = {}
hidden_columns = ['location', 'tenant_id']
return utils.get_osc_show_columns_for_sdk_resource(
- item, column_map, hidden_columns)
+ item, column_map, hidden_columns
+ )
def _get_attrs(client_manager, parsed_args):
@@ -51,14 +52,16 @@ def _get_attrs(client_manager, parsed_args):
).id
attrs['project_id'] = project_id
if parsed_args.network:
- network = network_client.find_network(parsed_args.network,
- ignore_missing=False)
+ network = network_client.find_network(
+ parsed_args.network, ignore_missing=False
+ )
attrs['network_id'] = network.id
if parsed_args.local_ip_address:
attrs['local_ip_address'] = parsed_args.local_ip_address
if parsed_args.local_port:
- port = network_client.find_port(parsed_args.local_port,
- ignore_missing=False)
+ port = network_client.find_port(
+ parsed_args.local_port, ignore_missing=False
+ )
attrs['local_port_id'] = port.id
if parsed_args.ip_mode:
attrs['ip_mode'] = parsed_args.ip_mode
@@ -71,24 +74,22 @@ class CreateLocalIP(command.ShowOne):
def get_parser(self, prog_name):
parser = super().get_parser(prog_name)
parser.add_argument(
- '--name',
- metavar="<name>",
- help=_("New local IP name")
+ '--name', metavar="<name>", help=_("New local IP name")
)
parser.add_argument(
'--description',
metavar="<description>",
- help=_("New local IP description")
+ help=_("New local IP description"),
)
parser.add_argument(
'--network',
metavar='<network>',
- help=_("Network to allocate Local IP (name or ID)")
+ help=_("Network to allocate Local IP (name or ID)"),
)
parser.add_argument(
'--local-port',
metavar='<local-port>',
- help=_("Port to allocate Local IP (name or ID)")
+ help=_("Port to allocate Local IP (name or ID)"),
)
parser.add_argument(
"--local-ip-address",
@@ -96,9 +97,7 @@ class CreateLocalIP(command.ShowOne):
help=_("IP address or CIDR "),
)
parser.add_argument(
- '--ip-mode',
- metavar='<ip-mode>',
- help=_("local IP ip mode")
+ '--ip-mode', metavar='<ip-mode>', help=_("local IP ip mode")
)
identity_common.add_project_domain_option_to_parser(parser)
@@ -125,7 +124,7 @@ class DeleteLocalIP(command.Command):
'local_ip',
metavar="<local-ip>",
nargs='+',
- help=_("Local IP(s) to delete (name or ID)")
+ help=_("Local IP(s) to delete (name or ID)"),
)
return parser
@@ -140,14 +139,19 @@ class DeleteLocalIP(command.Command):
client.delete_local_ip(obj)
except Exception as e:
result += 1
- LOG.error(_("Failed to delete Local IP with "
- "name or ID '%(lip)s': %(e)s"),
- {'lip': lip, 'e': e})
+ LOG.error(
+ _(
+ "Failed to delete Local IP with "
+ "name or ID '%(lip)s': %(e)s"
+ ),
+ {'lip': lip, 'e': e},
+ )
if result > 0:
total = len(parsed_args.local_ip)
- msg = (_("%(result)s of %(total)s local IPs failed "
- "to delete.") % {'result': result, 'total': total})
+ msg = _(
+ "%(result)s of %(total)s local IPs failed " "to delete."
+ ) % {'result': result, 'total': total}
raise exceptions.CommandError(msg)
@@ -159,25 +163,21 @@ class SetLocalIP(command.Command):
parser.add_argument(
'local_ip',
metavar="<local-ip>",
- help=_("Local IP to modify (name or ID)")
+ help=_("Local IP to modify (name or ID)"),
)
parser.add_argument(
- '--name',
- metavar="<name>",
- help=_('Set local IP name')
+ '--name', metavar="<name>", help=_('Set local IP name')
)
parser.add_argument(
'--description',
metavar="<description>",
- help=_('Set local IP description')
+ help=_('Set local IP description'),
)
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
- obj = client.find_local_ip(
- parsed_args.local_ip,
- ignore_missing=False)
+ obj = client.find_local_ip(parsed_args.local_ip, ignore_missing=False)
attrs = {}
if parsed_args.name is not None:
attrs['name'] = parsed_args.name
@@ -196,37 +196,36 @@ class ListLocalIP(command.Lister):
parser.add_argument(
'--name',
metavar='<name>',
- help=_("List only local IPs of given name in output")
+ help=_("List only local IPs of given name in output"),
)
parser.add_argument(
'--project',
metavar="<project>",
- help=_("List Local IPs according to their project "
- "(name or ID)")
+ help=_(
+ "List Local IPs according to their project " "(name or ID)"
+ ),
)
parser.add_argument(
'--network',
metavar='<network>',
- help=_("List Local IP(s) according to "
- "given network (name or ID)")
+ help=_(
+ "List Local IP(s) according to " "given network (name or ID)"
+ ),
)
parser.add_argument(
'--local-port',
metavar='<local-port>',
- help=_("List Local IP(s) according to "
- "given port (name or ID)")
+ help=_("List Local IP(s) according to " "given port (name or ID)"),
)
parser.add_argument(
'--local-ip-address',
metavar='<local-ip-address>',
- help=_("List Local IP(s) according to "
- "given Local IP Address")
+ help=_("List Local IP(s) according to " "given Local IP Address"),
)
parser.add_argument(
'--ip-mode',
metavar='<ip_mode>',
- help=_("List Local IP(s) according to "
- "given IP mode")
+ help=_("List Local IP(s) according to " "given IP mode"),
)
identity_common.add_project_domain_option_to_parser(parser)
@@ -267,12 +266,14 @@ class ListLocalIP(command.Lister):
).id
attrs['project_id'] = project_id
if parsed_args.network is not None:
- network = client.find_network(parsed_args.network,
- ignore_missing=False)
+ network = client.find_network(
+ parsed_args.network, ignore_missing=False
+ )
attrs['network_id'] = network.id
if parsed_args.local_port:
- port = client.find_port(parsed_args.local_port,
- ignore_missing=False)
+ port = client.find_port(
+ parsed_args.local_port, ignore_missing=False
+ )
attrs['local_port_id'] = port.id
if parsed_args.local_ip_address:
attrs['local_ip_address'] = parsed_args.local_ip_address
@@ -280,10 +281,17 @@ class ListLocalIP(command.Lister):
attrs['ip_mode'] = parsed_args.ip_mode
data = client.local_ips(**attrs)
- return (column_headers,
- (utils.get_item_properties(s,
- columns,
- formatters={},) for s in data))
+ return (
+ column_headers,
+ (
+ utils.get_item_properties(
+ s,
+ columns,
+ formatters={},
+ )
+ for s in data
+ ),
+ )
class ShowLocalIP(command.ShowOne):
@@ -294,16 +302,14 @@ class ShowLocalIP(command.ShowOne):
parser.add_argument(
'local_ip',
metavar="<local-ip>",
- help=_("Local IP to display (name or ID)")
+ help=_("Local IP to display (name or ID)"),
)
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
- obj = client.find_local_ip(
- parsed_args.local_ip,
- ignore_missing=False)
+ obj = client.find_local_ip(parsed_args.local_ip, ignore_missing=False)
display_columns, columns = _get_columns(obj)
data = utils.get_item_properties(obj, columns, formatters={})
diff --git a/openstackclient/network/v2/local_ip_association.py b/openstackclient/network/v2/local_ip_association.py
index 4cd7707a..d54ac9c9 100644
--- a/openstackclient/network/v2/local_ip_association.py
+++ b/openstackclient/network/v2/local_ip_association.py
@@ -31,7 +31,8 @@ def _get_columns(item):
column_map = {}
hidden_columns = ['location', 'name', 'id', 'tenant_id']
return utils.get_osc_show_columns_for_sdk_resource(
- item, column_map, hidden_columns)
+ item, column_map, hidden_columns
+ )
class CreateLocalIPAssociation(command.ShowOne):
@@ -42,18 +43,19 @@ class CreateLocalIPAssociation(command.ShowOne):
parser.add_argument(
'local_ip',
metavar='<local-ip>',
- help=_("Local IP that the port association belongs to "
- "(Name or ID)")
+ help=_(
+ "Local IP that the port association belongs to " "(Name or ID)"
+ ),
)
parser.add_argument(
'fixed_port',
metavar='<fixed-port>',
- help=_("The ID or Name of Port to allocate Local IP Association")
+ help=_("The ID or Name of Port to allocate Local IP Association"),
)
parser.add_argument(
'--fixed-ip',
metavar='<fixed-ip>',
- help=_("Fixed IP for Local IP Association")
+ help=_("Fixed IP for Local IP Association"),
)
identity_common.add_project_domain_option_to_parser(parser)
@@ -64,8 +66,7 @@ class CreateLocalIPAssociation(command.ShowOne):
client = self.app.client_manager.network
attrs = {}
- port = client.find_port(parsed_args.fixed_port,
- ignore_missing=False)
+ port = client.find_port(parsed_args.fixed_port, ignore_missing=False)
attrs['fixed_port_id'] = port.id
if parsed_args.fixed_ip:
attrs['fixed_ip'] = parsed_args.fixed_ip
@@ -88,14 +89,15 @@ class DeleteLocalIPAssociation(command.Command):
parser.add_argument(
'local_ip',
metavar="<local-ip>",
- help=_("Local IP that the port association belongs to "
- "(Name or ID)")
+ help=_(
+ "Local IP that the port association belongs to " "(Name or ID)"
+ ),
)
parser.add_argument(
'fixed_port_id',
nargs="+",
metavar="<fixed-port-id>",
- help=_("The fixed port ID of Local IP Association")
+ help=_("The fixed port ID of Local IP Association"),
)
return parser
@@ -116,15 +118,21 @@ class DeleteLocalIPAssociation(command.Command):
)
except Exception as e:
result += 1
- LOG.error(_("Failed to delete Local IP Association with "
- "fixed port "
- "name or ID '%(fixed_port_id)s': %(e)s"),
- {'fixed port ID': fixed_port_id, 'e': e})
+ LOG.error(
+ _(
+ "Failed to delete Local IP Association with "
+ "fixed port "
+ "name or ID '%(fixed_port_id)s': %(e)s"
+ ),
+ {'fixed port ID': fixed_port_id, 'e': e},
+ )
if result > 0:
total = len(parsed_args.fixed_port_id)
- msg = (_("%(result)s of %(total)s Local IP Associations failed "
- "to delete.") % {'result': result, 'total': total})
+ msg = _(
+ "%(result)s of %(total)s Local IP Associations failed "
+ "to delete."
+ ) % {'result': result, 'total': total}
raise exceptions.CommandError(msg)
@@ -137,23 +145,24 @@ class ListLocalIPAssociation(command.Lister):
parser.add_argument(
'local_ip',
metavar='<local-ip>',
- help=_("Local IP that port associations belongs to")
+ help=_("Local IP that port associations belongs to"),
)
parser.add_argument(
'--fixed-port',
metavar='<fixed-port>',
- help=_("Filter the list result by the ID or name of "
- "the fixed port")
+ help=_(
+ "Filter the list result by the ID or name of " "the fixed port"
+ ),
)
parser.add_argument(
'--fixed-ip',
metavar='<fixed-ip>',
- help=_("Filter the list result by fixed ip")
+ help=_("Filter the list result by fixed ip"),
)
parser.add_argument(
'--host',
metavar='<host>',
- help=_("Filter the list result by given host")
+ help=_("Filter the list result by given host"),
)
identity_common.add_project_domain_option_to_parser(parser)
@@ -173,7 +182,7 @@ class ListLocalIPAssociation(command.Lister):
'Local IP Address',
'Fixed port ID',
'Fixed IP',
- 'Host'
+ 'Host',
)
attrs = {}
obj = client.find_local_ip(
@@ -181,8 +190,9 @@ class ListLocalIPAssociation(command.Lister):
ignore_missing=False,
)
if parsed_args.fixed_port:
- port = client.find_port(parsed_args.fixed_port,
- ignore_missing=False)
+ port = client.find_port(
+ parsed_args.fixed_port, ignore_missing=False
+ )
attrs['fixed_port_id'] = port.id
if parsed_args.fixed_ip:
attrs['fixed_ip'] = parsed_args.fixed_ip
@@ -191,7 +201,10 @@ class ListLocalIPAssociation(command.Lister):
data = client.local_ip_associations(obj, **attrs)
- return (column_headers,
- (utils.get_item_properties(s,
- columns,
- formatters={}) for s in data))
+ return (
+ column_headers,
+ (
+ utils.get_item_properties(s, columns, formatters={})
+ for s in data
+ ),
+ )
diff --git a/openstackclient/network/v2/ndp_proxy.py b/openstackclient/network/v2/ndp_proxy.py
index 25b287f3..8699d2fb 100644
--- a/openstackclient/network/v2/ndp_proxy.py
+++ b/openstackclient/network/v2/ndp_proxy.py
@@ -31,7 +31,8 @@ def _get_columns(item):
column_map = {}
hidden_columns = ['location']
return utils.get_osc_show_columns_for_sdk_resource(
- item, column_map, hidden_columns)
+ item, column_map, hidden_columns
+ )
class CreateNDPProxy(command.ShowOne):
@@ -40,31 +41,36 @@ class CreateNDPProxy(command.ShowOne):
def get_parser(self, prog_name):
parser = super().get_parser(prog_name)
parser.add_argument(
- 'router',
- metavar='<router>',
- help=_("The name or ID of a router"))
+ 'router', metavar='<router>', help=_("The name or ID of a router")
+ )
parser.add_argument(
- '--name',
- metavar='<name>',
- help=_("New NDP proxy name")
+ '--name', metavar='<name>', help=_("New NDP proxy name")
)
parser.add_argument(
'--port',
metavar='<port>',
required=True,
- help=_("The name or ID of the network port associated "
- "to the NDP proxy"))
+ help=_(
+ "The name or ID of the network port associated "
+ "to the NDP proxy"
+ ),
+ )
parser.add_argument(
'--ip-address',
metavar='<ip-address>',
- help=_("The IPv6 address that is to be proxied. In case the port "
- "has multiple addresses assigned, use this option to "
- "select which address is to be used."))
+ help=_(
+ "The IPv6 address that is to be proxied. In case the port "
+ "has multiple addresses assigned, use this option to "
+ "select which address is to be used."
+ ),
+ )
parser.add_argument(
'--description',
metavar='<description>',
- help=_("A text to describe/contextualize the use of the "
- "NDP proxy configuration")
+ help=_(
+ "A text to describe/contextualize the use of the "
+ "NDP proxy configuration"
+ ),
)
return parser
@@ -81,8 +87,7 @@ class CreateNDPProxy(command.ShowOne):
if parsed_args.ip_address:
attrs['ip_address'] = parsed_args.ip_address
- port = client.find_port(parsed_args.port,
- ignore_missing=False)
+ port = client.find_port(parsed_args.port, ignore_missing=False)
attrs['port_id'] = port.id
if parsed_args.description is not None:
@@ -103,7 +108,7 @@ class DeleteNDPProxy(command.Command):
'ndp_proxy',
nargs="+",
metavar="<ndp-proxy>",
- help=_("NDP proxy(s) to delete (name or ID)")
+ help=_("NDP proxy(s) to delete (name or ID)"),
)
return parser
@@ -117,13 +122,15 @@ class DeleteNDPProxy(command.Command):
client.delete_ndp_proxy(obj)
except Exception as e:
result += 1
- LOG.error(_("Failed to delete NDP proxy "
- "'%(ndp_proxy)s': %(e)s"),
- {'ndp_proxy': ndp_proxy, 'e': e})
+ LOG.error(
+ _("Failed to delete NDP proxy " "'%(ndp_proxy)s': %(e)s"),
+ {'ndp_proxy': ndp_proxy, 'e': e},
+ )
if result > 0:
total = len(parsed_args.ndp_proxy)
- msg = (_("%(result)s of %(total)s NDP Proxy failed "
- "to delete.") % {'result': result, 'total': total})
+ msg = _(
+ "%(result)s of %(total)s NDP Proxy failed " "to delete."
+ ) % {'result': result, 'total': total}
raise exceptions.CommandError(msg)
@@ -135,27 +142,27 @@ class ListNDPProxy(command.Lister):
parser.add_argument(
'--router',
metavar='<router>',
- help=_("List only NDP proxies belong to this router (name or ID)")
+ help=_("List only NDP proxies belong to this router (name or ID)"),
)
parser.add_argument(
'--port',
metavar='<port>',
- help=_("List only NDP proxies assocate to this port (name or ID)")
+ help=_("List only NDP proxies assocate to this port (name or ID)"),
)
parser.add_argument(
'--ip-address',
metavar='ip-address',
- help=_("List only NDP proxies according to their IPv6 address")
+ help=_("List only NDP proxies according to their IPv6 address"),
)
parser.add_argument(
'--project',
metavar='<project>',
- help=_("List NDP proxies according to their project (name or ID)")
+ help=_("List NDP proxies according to their project (name or ID)"),
)
parser.add_argument(
'--name',
metavar='<name>',
- help=_("List NDP proxies according to their name")
+ help=_("List NDP proxies according to their name"),
)
identity_common.add_project_domain_option_to_parser(parser)
@@ -184,12 +191,12 @@ class ListNDPProxy(command.Lister):
query = {}
if parsed_args.router:
- router = client.find_router(parsed_args.router,
- ignore_missing=False)
+ router = client.find_router(
+ parsed_args.router, ignore_missing=False
+ )
query['router_id'] = router.id
if parsed_args.port:
- port = client.find_port(parsed_args.port,
- ignore_missing=False)
+ port = client.find_port(parsed_args.port, ignore_missing=False)
query['port_id'] = port.id
if parsed_args.ip_address is not None:
query['ip_address'] = parsed_args.ip_address
@@ -205,11 +212,17 @@ class ListNDPProxy(command.Lister):
data = client.ndp_proxies(**query)
- return (headers,
- (utils.get_item_properties(
- s, columns,
+ return (
+ headers,
+ (
+ utils.get_item_properties(
+ s,
+ columns,
formatters={},
- ) for s in data))
+ )
+ for s in data
+ ),
+ )
class SetNDPProxy(command.Command):
@@ -220,18 +233,18 @@ class SetNDPProxy(command.Command):
parser.add_argument(
'ndp_proxy',
metavar='<ndp-proxy>',
- help=_("The ID or name of the NDP proxy to update")
+ help=_("The ID or name of the NDP proxy to update"),
)
parser.add_argument(
- '--name',
- metavar='<name>',
- help=_("Set NDP proxy name")
+ '--name', metavar='<name>', help=_("Set NDP proxy name")
)
parser.add_argument(
'--description',
metavar='<description>',
- help=_("A text to describe/contextualize the use of "
- "the NDP proxy configuration")
+ help=_(
+ "A text to describe/contextualize the use of "
+ "the NDP proxy configuration"
+ ),
)
return parser
@@ -244,7 +257,8 @@ class SetNDPProxy(command.Command):
attrs['name'] = parsed_args.name
obj = client.find_ndp_proxy(
- parsed_args.ndp_proxy, ignore_missing=False)
+ parsed_args.ndp_proxy, ignore_missing=False
+ )
client.update_ndp_proxy(obj, **attrs)
@@ -256,14 +270,15 @@ class ShowNDPProxy(command.ShowOne):
parser.add_argument(
'ndp_proxy',
metavar="<ndp-proxy>",
- help=_("The ID or name of the NDP proxy")
+ help=_("The ID or name of the NDP proxy"),
)
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
- obj = client.find_ndp_proxy(parsed_args.ndp_proxy,
- ignore_missing=False)
+ obj = client.find_ndp_proxy(
+ parsed_args.ndp_proxy, ignore_missing=False
+ )
display_columns, columns = _get_columns(obj)
data = utils.get_item_properties(obj, columns)
return (display_columns, data)
diff --git a/openstackclient/network/v2/network.py b/openstackclient/network/v2/network.py
index 54e2821c..1901e219 100644
--- a/openstackclient/network/v2/network.py
+++ b/openstackclient/network/v2/network.py
@@ -63,9 +63,7 @@ def _get_columns_network(item):
hidden_columns = ['location', 'tenant_id']
hidden_columns = ['location']
return utils.get_osc_show_columns_for_sdk_resource(
- item,
- column_map,
- hidden_columns
+ item, column_map, hidden_columns
)
@@ -102,8 +100,10 @@ def _get_attrs_network(client_manager, parsed_args):
attrs['project_id'] = project_id
# "network set" command doesn't support setting availability zone hints.
- if 'availability_zone_hints' in parsed_args and \
- parsed_args.availability_zone_hints is not None:
+ if (
+ 'availability_zone_hints' in parsed_args
+ and parsed_args.availability_zone_hints is not None
+ ):
attrs['availability_zone_hints'] = parsed_args.availability_zone_hints
# set description
@@ -132,8 +132,9 @@ def _get_attrs_network(client_manager, parsed_args):
attrs['provider:segmentation_id'] = parsed_args.segmentation_id
if parsed_args.qos_policy is not None:
network_client = client_manager.network
- _qos_policy = network_client.find_qos_policy(parsed_args.qos_policy,
- ignore_missing=False)
+ _qos_policy = network_client.find_qos_policy(
+ parsed_args.qos_policy, ignore_missing=False
+ )
attrs['qos_policy_id'] = _qos_policy.id
if 'no_qos_policy' in parsed_args and parsed_args.no_qos_policy:
attrs['qos_policy_id'] = None
@@ -162,53 +163,63 @@ def _add_additional_network_options(parser):
parser.add_argument(
'--provider-network-type',
metavar='<provider-network-type>',
- help=_("The physical mechanism by which the virtual network "
- "is implemented. For example: "
- "flat, geneve, gre, local, vlan, vxlan."))
+ help=_(
+ "The physical mechanism by which the virtual network "
+ "is implemented. For example: "
+ "flat, geneve, gre, local, vlan, vxlan."
+ ),
+ )
parser.add_argument(
'--provider-physical-network',
metavar='<provider-physical-network>',
dest='physical_network',
- help=_("Name of the physical network over which the virtual "
- "network is implemented"))
+ help=_(
+ "Name of the physical network over which the virtual "
+ "network is implemented"
+ ),
+ )
parser.add_argument(
'--provider-segment',
metavar='<provider-segment>',
dest='segmentation_id',
- help=_("VLAN ID for VLAN networks or Tunnel ID for "
- "GENEVE/GRE/VXLAN networks"))
+ help=_(
+ "VLAN ID for VLAN networks or Tunnel ID for "
+ "GENEVE/GRE/VXLAN networks"
+ ),
+ )
parser.add_argument(
'--dns-domain',
metavar='<dns-domain>',
dest='dns_domain',
- help=_("Set DNS domain for this network "
- "(requires DNS integration extension)")
+ help=_(
+ "Set DNS domain for this network "
+ "(requires DNS integration extension)"
+ ),
)
# TODO(sindhu): Use the SDK resource mapped attribute names once the
# OSC minimum requirements include SDK 1.0.
-class CreateNetwork(common.NetworkAndComputeShowOne,
- common.NeutronCommandWithExtraArgs):
+class CreateNetwork(
+ common.NetworkAndComputeShowOne, common.NeutronCommandWithExtraArgs
+):
_description = _("Create new network")
def update_parser_common(self, parser):
parser.add_argument(
- 'name',
- metavar='<name>',
- help=_("New network name")
+ 'name', metavar='<name>', help=_("New network name")
)
share_group = parser.add_mutually_exclusive_group()
share_group.add_argument(
'--share',
action='store_true',
default=None,
- help=_("Share the network between projects")
+ help=_("Share the network between projects"),
)
share_group.add_argument(
'--no-share',
action='store_true',
- help=_("Do not share the network between projects")
+ help=_("Do not share the network between projects"),
)
return parser
@@ -218,27 +229,27 @@ class CreateNetwork(common.NetworkAndComputeShowOne,
'--enable',
action='store_true',
default=True,
- help=self.enhance_help_neutron(_("Enable network (default)"))
+ help=self.enhance_help_neutron(_("Enable network (default)")),
)
admin_group.add_argument(
'--disable',
action='store_true',
- help=self.enhance_help_neutron(_("Disable network"))
+ help=self.enhance_help_neutron(_("Disable network")),
)
parser.add_argument(
'--project',
metavar='<project>',
- help=self.enhance_help_neutron(_("Owner's project (name or ID)"))
+ help=self.enhance_help_neutron(_("Owner's project (name or ID)")),
)
parser.add_argument(
'--description',
metavar='<description>',
- help=self.enhance_help_neutron(_("Set network description"))
+ help=self.enhance_help_neutron(_("Set network description")),
)
parser.add_argument(
'--mtu',
metavar='<mtu>',
- help=self.enhance_help_neutron(_("Set network mtu"))
+ help=self.enhance_help_neutron(_("Set network mtu")),
)
identity_common.add_project_domain_option_to_parser(parser)
parser.add_argument(
@@ -247,77 +258,102 @@ class CreateNetwork(common.NetworkAndComputeShowOne,
dest='availability_zone_hints',
metavar='<availability-zone>',
help=self.enhance_help_neutron(
- _("Availability Zone in which to create this network "
- "(Network Availability Zone extension required, "
- "repeat option to set multiple availability zones)"))
+ _(
+ "Availability Zone in which to create this network "
+ "(Network Availability Zone extension required, "
+ "repeat option to set multiple availability zones)"
+ )
+ ),
)
port_security_group = parser.add_mutually_exclusive_group()
port_security_group.add_argument(
'--enable-port-security',
action='store_true',
help=self.enhance_help_neutron(
- _("Enable port security by default for ports created on "
- "this network (default)"))
+ _(
+ "Enable port security by default for ports created on "
+ "this network (default)"
+ )
+ ),
)
port_security_group.add_argument(
'--disable-port-security',
action='store_true',
help=self.enhance_help_neutron(
- _("Disable port security by default for ports created on "
- "this network"))
+ _(
+ "Disable port security by default for ports created on "
+ "this network"
+ )
+ ),
)
external_router_grp = parser.add_mutually_exclusive_group()
external_router_grp.add_argument(
'--external',
action='store_true',
help=self.enhance_help_neutron(
- _("The network has an external routing facility that's not "
- "managed by Neutron and can be used as in: "
- "openstack router set --external-gateway NETWORK "
- "(external-net extension required)"))
+ _(
+ "The network has an external routing facility that's not "
+ "managed by Neutron and can be used as in: "
+ "openstack router set --external-gateway NETWORK "
+ "(external-net extension required)"
+ )
+ ),
)
external_router_grp.add_argument(
'--internal',
action='store_true',
help=self.enhance_help_neutron(
- _("Opposite of '--external' (default)"))
+ _("Opposite of '--external' (default)")
+ ),
)
default_router_grp = parser.add_mutually_exclusive_group()
default_router_grp.add_argument(
'--default',
action='store_true',
help=self.enhance_help_neutron(
- _("Specify if this network should be used as the default "
- "external network"))
+ _(
+ "Specify if this network should be used as the default "
+ "external network"
+ )
+ ),
)
default_router_grp.add_argument(
'--no-default',
action='store_true',
help=self.enhance_help_neutron(
- _("Do not use the network as the default external network "
- "(default)"))
+ _(
+ "Do not use the network as the default external network "
+ "(default)"
+ )
+ ),
)
parser.add_argument(
'--qos-policy',
metavar='<qos-policy>',
help=self.enhance_help_neutron(
- _("QoS policy to attach to this network (name or ID)"))
+ _("QoS policy to attach to this network (name or ID)")
+ ),
)
vlan_transparent_grp = parser.add_mutually_exclusive_group()
vlan_transparent_grp.add_argument(
'--transparent-vlan',
action='store_true',
help=self.enhance_help_neutron(
- _("Make the network VLAN transparent")))
+ _("Make the network VLAN transparent")
+ ),
+ )
vlan_transparent_grp.add_argument(
'--no-transparent-vlan',
action='store_true',
help=self.enhance_help_neutron(
- _("Do not make the network VLAN transparent")))
+ _("Do not make the network VLAN transparent")
+ ),
+ )
_add_additional_network_options(parser)
_tag.add_tag_option_to_parser_for_create(
- parser, _('network'), enhance_help=self.enhance_help_neutron)
+ parser, _('network'), enhance_help=self.enhance_help_neutron
+ )
return parser
def update_parser_compute(self, parser):
@@ -326,7 +362,8 @@ class CreateNetwork(common.NetworkAndComputeShowOne,
metavar='<subnet>',
required=True,
help=self.enhance_help_nova_network(
- _("IPv4 subnet for fixed IPs (in CIDR notation)"))
+ _("IPv4 subnet for fixed IPs (in CIDR notation)")
+ ),
)
return parser
@@ -337,9 +374,11 @@ class CreateNetwork(common.NetworkAndComputeShowOne,
if parsed_args.no_transparent_vlan:
attrs['vlan_transparent'] = False
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
with common.check_missing_extension_if_error(
- self.app.client_manager.network, attrs):
+ self.app.client_manager.network, attrs
+ ):
obj = client.create_network(**attrs)
# tags cannot be set when created, so tags need to be set later.
@@ -368,7 +407,7 @@ class DeleteNetwork(common.NetworkAndComputeDelete):
'network',
metavar="<network>",
nargs="+",
- help=_("Network(s) to delete (name or ID)")
+ help=_("Network(s) to delete (name or ID)"),
)
return parser
@@ -391,98 +430,114 @@ class ListNetwork(common.NetworkAndComputeLister):
router_ext_group.add_argument(
'--external',
action='store_true',
- help=self.enhance_help_neutron(_("List external networks"))
+ help=self.enhance_help_neutron(_("List external networks")),
)
router_ext_group.add_argument(
'--internal',
action='store_true',
- help=self.enhance_help_neutron(_("List internal networks"))
+ help=self.enhance_help_neutron(_("List internal networks")),
)
parser.add_argument(
'--long',
action='store_true',
help=self.enhance_help_neutron(
- _("List additional fields in output"))
+ _("List additional fields in output")
+ ),
)
parser.add_argument(
'--name',
metavar='<name>',
help=self.enhance_help_neutron(
- _("List networks according to their name"))
+ _("List networks according to their name")
+ ),
)
admin_state_group = parser.add_mutually_exclusive_group()
admin_state_group.add_argument(
'--enable',
action='store_true',
- help=self.enhance_help_neutron(_("List enabled networks"))
+ help=self.enhance_help_neutron(_("List enabled networks")),
)
admin_state_group.add_argument(
'--disable',
action='store_true',
- help=self.enhance_help_neutron(_("List disabled networks"))
+ help=self.enhance_help_neutron(_("List disabled networks")),
)
parser.add_argument(
'--project',
metavar='<project>',
- help=_("List networks according to their project (name or ID)")
+ help=_("List networks according to their project (name or ID)"),
)
identity_common.add_project_domain_option_to_parser(
- parser, enhance_help=self.enhance_help_neutron)
+ parser, enhance_help=self.enhance_help_neutron
+ )
shared_group = parser.add_mutually_exclusive_group()
shared_group.add_argument(
'--share',
action='store_true',
help=self.enhance_help_neutron(
- _("List networks shared between projects"))
+ _("List networks shared between projects")
+ ),
)
shared_group.add_argument(
'--no-share',
action='store_true',
help=self.enhance_help_neutron(
- _("List networks not shared between projects"))
+ _("List networks not shared between projects")
+ ),
)
parser.add_argument(
'--status',
metavar='<status>',
choices=['ACTIVE', 'BUILD', 'DOWN', 'ERROR'],
help=self.enhance_help_neutron(
- _("List networks according to their status "
- "('ACTIVE', 'BUILD', 'DOWN', 'ERROR')"))
+ _(
+ "List networks according to their status "
+ "('ACTIVE', 'BUILD', 'DOWN', 'ERROR')"
+ )
+ ),
)
parser.add_argument(
'--provider-network-type',
metavar='<provider-network-type>',
- choices=['flat', 'geneve', 'gre', 'local',
- 'vlan', 'vxlan'],
+ choices=['flat', 'geneve', 'gre', 'local', 'vlan', 'vxlan'],
help=self.enhance_help_neutron(
- _("List networks according to their physical mechanisms. The "
- "supported options are: flat, geneve, gre, local, vlan, "
- "vxlan."))
+ _(
+ "List networks according to their physical mechanisms. "
+ "The supported options are: flat, geneve, gre, local, "
+ "vlan, vxlan."
+ )
+ ),
)
parser.add_argument(
'--provider-physical-network',
metavar='<provider-physical-network>',
dest='physical_network',
help=self.enhance_help_neutron(
- _("List networks according to name of the physical network"))
+ _("List networks according to name of the physical network")
+ ),
)
parser.add_argument(
'--provider-segment',
metavar='<provider-segment>',
dest='segmentation_id',
help=self.enhance_help_neutron(
- _("List networks according to VLAN ID for VLAN networks or "
- "Tunnel ID for GENEVE/GRE/VXLAN networks"))
+ _(
+ "List networks according to VLAN ID for VLAN networks or "
+ "Tunnel ID for GENEVE/GRE/VXLAN networks"
+ )
+ ),
)
parser.add_argument(
'--agent',
metavar='<agent-id>',
dest='agent_id',
help=self.enhance_help_neutron(
- _('List networks hosted by agent (ID only)'))
+ _('List networks hosted by agent (ID only)')
+ ),
)
_tag.add_tag_filtering_option_to_parser(
- parser, _('networks'), enhance_help=self.enhance_help_neutron)
+ parser, _('networks'), enhance_help=self.enhance_help_neutron
+ )
return parser
def take_action_network(self, client, parsed_args):
@@ -515,11 +570,7 @@ class ListNetwork(common.NetworkAndComputeLister):
'Tags',
)
elif parsed_args.agent_id:
- columns = (
- 'id',
- 'name',
- 'subnet_ids'
- )
+ columns = ('id', 'name', 'subnet_ids')
column_headers = (
'ID',
'Name',
@@ -529,17 +580,19 @@ class ListNetwork(common.NetworkAndComputeLister):
dhcp_agent = client.get_agent(parsed_args.agent_id)
data = client.dhcp_agent_hosting_networks(dhcp_agent)
- return (column_headers,
- (utils.get_item_properties(
- s, columns,
+ return (
+ column_headers,
+ (
+ utils.get_item_properties(
+ s,
+ columns,
formatters=_formatters,
- ) for s in data))
- else:
- columns = (
- 'id',
- 'name',
- 'subnet_ids'
+ )
+ for s in data
+ ),
)
+ else:
+ columns = ('id', 'name', 'subnet_ids')
column_headers = (
'ID',
'Name',
@@ -597,11 +650,17 @@ class ListNetwork(common.NetworkAndComputeLister):
data = client.networks(**args)
- return (column_headers,
- (utils.get_item_properties(
- s, columns,
+ return (
+ column_headers,
+ (
+ utils.get_item_properties(
+ s,
+ columns,
formatters=_formatters,
- ) for s in data))
+ )
+ for s in data
+ ),
+ )
def take_action_compute(self, client, parsed_args):
columns = (
@@ -617,11 +676,17 @@ class ListNetwork(common.NetworkAndComputeLister):
data = client.api.network_list()
- return (column_headers,
- (utils.get_dict_properties(
- s, columns,
+ return (
+ column_headers,
+ (
+ utils.get_dict_properties(
+ s,
+ columns,
formatters=_formatters,
- ) for s in data))
+ )
+ for s in data
+ ),
+ )
# TODO(sindhu): Use the SDK resource mapped attribute names once the
@@ -634,95 +699,95 @@ class SetNetwork(common.NeutronCommandWithExtraArgs):
parser.add_argument(
'network',
metavar="<network>",
- help=_("Network to modify (name or ID)")
+ help=_("Network to modify (name or ID)"),
)
parser.add_argument(
- '--name',
- metavar='<name>',
- help=_("Set network name")
+ '--name', metavar='<name>', help=_("Set network name")
)
admin_group = parser.add_mutually_exclusive_group()
admin_group.add_argument(
'--enable',
action='store_true',
default=None,
- help=_("Enable network")
+ help=_("Enable network"),
)
admin_group.add_argument(
- '--disable',
- action='store_true',
- help=_("Disable network")
+ '--disable', action='store_true', help=_("Disable network")
)
share_group = parser.add_mutually_exclusive_group()
share_group.add_argument(
'--share',
action='store_true',
default=None,
- help=_("Share the network between projects")
+ help=_("Share the network between projects"),
)
share_group.add_argument(
'--no-share',
action='store_true',
- help=_("Do not share the network between projects")
+ help=_("Do not share the network between projects"),
)
parser.add_argument(
'--description',
metavar="<description>",
- help=_("Set network description")
+ help=_("Set network description"),
)
parser.add_argument(
- '--mtu',
- metavar="<mtu>",
- help=_("Set network mtu")
+ '--mtu', metavar="<mtu>", help=_("Set network mtu")
)
port_security_group = parser.add_mutually_exclusive_group()
port_security_group.add_argument(
'--enable-port-security',
action='store_true',
- help=_("Enable port security by default for ports created on "
- "this network")
+ help=_(
+ "Enable port security by default for ports created on "
+ "this network"
+ ),
)
port_security_group.add_argument(
'--disable-port-security',
action='store_true',
- help=_("Disable port security by default for ports created on "
- "this network")
+ help=_(
+ "Disable port security by default for ports created on "
+ "this network"
+ ),
)
external_router_grp = parser.add_mutually_exclusive_group()
external_router_grp.add_argument(
'--external',
action='store_true',
- help=_("The network has an external routing facility that's not "
- "managed by Neutron and can be used as in: "
- "openstack router set --external-gateway NETWORK "
- "(external-net extension required)")
+ help=_(
+ "The network has an external routing facility that's not "
+ "managed by Neutron and can be used as in: "
+ "openstack router set --external-gateway NETWORK "
+ "(external-net extension required)"
+ ),
)
external_router_grp.add_argument(
'--internal',
action='store_true',
- help=_("Opposite of '--external'")
+ help=_("Opposite of '--external'"),
)
default_router_grp = parser.add_mutually_exclusive_group()
default_router_grp.add_argument(
'--default',
action='store_true',
- help=_("Set the network as the default external network")
+ help=_("Set the network as the default external network"),
)
default_router_grp.add_argument(
'--no-default',
action='store_true',
- help=_("Do not use the network as the default external network")
+ help=_("Do not use the network as the default external network"),
)
qos_group = parser.add_mutually_exclusive_group()
qos_group.add_argument(
'--qos-policy',
metavar='<qos-policy>',
- help=_("QoS policy to attach to this network (name or ID)")
+ help=_("QoS policy to attach to this network (name or ID)"),
)
qos_group.add_argument(
'--no-qos-policy',
action='store_true',
- help=_("Remove the QoS policy attached to this network")
+ help=_("Remove the QoS policy attached to this network"),
)
_tag.add_tag_option_to_parser_for_set(parser, _('network'))
_add_additional_network_options(parser)
@@ -734,10 +799,12 @@ class SetNetwork(common.NeutronCommandWithExtraArgs):
attrs = _get_attrs_network(self.app.client_manager, parsed_args)
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
if attrs:
with common.check_missing_extension_if_error(
- self.app.client_manager.network, attrs):
+ self.app.client_manager.network, attrs
+ ):
client.update_network(obj, **attrs)
# tags is a subresource and it needs to be updated separately.
@@ -751,7 +818,7 @@ class ShowNetwork(common.NetworkAndComputeShowOne):
parser.add_argument(
'network',
metavar="<network>",
- help=_("Network to display (name or ID)")
+ help=_("Network to display (name or ID)"),
)
return parser
@@ -776,7 +843,7 @@ class UnsetNetwork(common.NeutronUnsetCommandWithExtraArgs):
parser.add_argument(
'network',
metavar="<network>",
- help=_("Network to modify (name or ID)")
+ help=_("Network to modify (name or ID)"),
)
_tag.add_tag_option_to_parser_for_unset(parser, _('network'))
return parser
diff --git a/openstackclient/network/v2/network_agent.py b/openstackclient/network/v2/network_agent.py
index f67f67bd..085e6cff 100644
--- a/openstackclient/network/v2/network_agent.py
+++ b/openstackclient/network/v2/network_agent.py
@@ -52,9 +52,7 @@ def _get_network_columns(item):
}
hidden_columns = ['location', 'name', 'tenant_id']
return utils.get_osc_show_columns_for_sdk_resource(
- item,
- column_map,
- hidden_columns
+ item, column_map, hidden_columns
)
@@ -66,15 +64,18 @@ class AddNetworkToAgent(command.Command):
parser.add_argument(
'--dhcp',
action='store_true',
- help=_('Add network to a DHCP agent'))
+ help=_('Add network to a DHCP agent'),
+ )
parser.add_argument(
'agent_id',
metavar='<agent-id>',
- help=_('Agent to which a network is added (ID only)'))
+ help=_('Agent to which a network is added (ID only)'),
+ )
parser.add_argument(
'network',
metavar='<network>',
- help=_('Network to be added to an agent (name or ID)'))
+ help=_('Network to be added to an agent (name or ID)'),
+ )
return parser
@@ -82,13 +83,15 @@ class AddNetworkToAgent(command.Command):
client = self.app.client_manager.network
agent = client.get_agent(parsed_args.agent_id)
network = client.find_network(
- parsed_args.network, ignore_missing=False)
+ parsed_args.network, ignore_missing=False
+ )
if parsed_args.dhcp:
try:
client.add_dhcp_agent_to_network(agent, network)
except Exception:
msg = 'Failed to add {} to {}'.format(
- network.name, agent.agent_type)
+ network.name, agent.agent_type
+ )
exceptions.CommandError(msg)
@@ -98,19 +101,17 @@ class AddRouterToAgent(command.Command):
def get_parser(self, prog_name):
parser = super(AddRouterToAgent, self).get_parser(prog_name)
parser.add_argument(
- '--l3',
- action='store_true',
- help=_('Add router to an L3 agent')
+ '--l3', action='store_true', help=_('Add router to an L3 agent')
)
parser.add_argument(
'agent_id',
metavar='<agent-id>',
- help=_("Agent to which a router is added (ID only)")
+ help=_("Agent to which a router is added (ID only)"),
)
parser.add_argument(
'router',
metavar='<router>',
- help=_("Router to be added to an agent (name or ID)")
+ help=_("Router to be added to an agent (name or ID)"),
)
return parser
@@ -132,7 +133,7 @@ class DeleteNetworkAgent(command.Command):
'network_agent',
metavar="<network-agent>",
nargs='+',
- help=(_("Network agent(s) to delete (ID only)"))
+ help=(_("Network agent(s) to delete (ID only)")),
)
return parser
@@ -145,14 +146,19 @@ class DeleteNetworkAgent(command.Command):
client.delete_agent(agent, ignore_missing=False)
except Exception as e:
result += 1
- LOG.error(_("Failed to delete network agent with "
- "ID '%(agent)s': %(e)s"),
- {'agent': agent, 'e': e})
+ LOG.error(
+ _(
+ "Failed to delete network agent with "
+ "ID '%(agent)s': %(e)s"
+ ),
+ {'agent': agent, 'e': e},
+ )
if result > 0:
total = len(parsed_args.network_agent)
- msg = (_("%(result)s of %(total)s network agents failed "
- "to delete.") % {'result': result, 'total': total})
+ msg = _(
+ "%(result)s of %(total)s network agents failed " "to delete."
+ ) % {'result': result, 'total': total}
raise exceptions.CommandError(msg)
@@ -166,35 +172,48 @@ class ListNetworkAgent(command.Lister):
parser.add_argument(
'--agent-type',
metavar='<agent-type>',
- choices=["bgp", "dhcp", "open-vswitch", "linux-bridge", "ofa",
- "l3", "loadbalancer", "metering", "metadata", "macvtap",
- "nic", "baremetal"],
- help=_("List only agents with the specified agent type. "
- "The supported agent types are: bgp, dhcp, open-vswitch, "
- "linux-bridge, ofa, l3, loadbalancer, metering, "
- "metadata, macvtap, nic, baremetal.")
+ choices=[
+ "bgp",
+ "dhcp",
+ "open-vswitch",
+ "linux-bridge",
+ "ofa",
+ "l3",
+ "loadbalancer",
+ "metering",
+ "metadata",
+ "macvtap",
+ "nic",
+ "baremetal",
+ ],
+ help=_(
+ "List only agents with the specified agent type. "
+ "The supported agent types are: bgp, dhcp, open-vswitch, "
+ "linux-bridge, ofa, l3, loadbalancer, metering, "
+ "metadata, macvtap, nic, baremetal."
+ ),
)
parser.add_argument(
'--host',
metavar='<host>',
- help=_("List only agents running on the specified host")
+ help=_("List only agents running on the specified host"),
)
agent_type_group = parser.add_mutually_exclusive_group()
agent_type_group.add_argument(
'--network',
metavar='<network>',
- help=_('List agents hosting a network (name or ID)')
+ help=_('List agents hosting a network (name or ID)'),
)
agent_type_group.add_argument(
'--router',
metavar='<router>',
- help=_('List agents hosting this router (name or ID)')
+ help=_('List agents hosting this router (name or ID)'),
)
parser.add_argument(
'--long',
action='store_true',
default=False,
- help=_("List additional fields in output")
+ help=_("List additional fields in output"),
)
return parser
@@ -208,7 +227,7 @@ class ListNetworkAgent(command.Lister):
'availability_zone',
'is_alive',
'is_admin_state_up',
- 'binary'
+ 'binary',
)
column_headers = (
'ID',
@@ -217,7 +236,7 @@ class ListNetworkAgent(command.Lister):
'Availability Zone',
'Alive',
'State',
- 'Binary'
+ 'Binary',
)
key_value = {
@@ -232,21 +251,23 @@ class ListNetworkAgent(command.Lister):
'metadata': 'Metadata agent',
'macvtap': 'Macvtap agent',
'nic': 'NIC Switch agent',
- 'baremetal': 'Baremetal Node'
+ 'baremetal': 'Baremetal Node',
}
filters = {}
if parsed_args.network is not None:
network = client.find_network(
- parsed_args.network, ignore_missing=False)
+ parsed_args.network, ignore_missing=False
+ )
data = client.network_hosting_dhcp_agents(network)
elif parsed_args.router is not None:
if parsed_args.long:
columns += ('ha_state',)
column_headers += ('HA State',)
- router = client.find_router(parsed_args.router,
- ignore_missing=False)
+ router = client.find_router(
+ parsed_args.router, ignore_missing=False
+ )
data = client.routers_hosting_l3_agents(router)
else:
if parsed_args.agent_type is not None:
@@ -255,10 +276,17 @@ class ListNetworkAgent(command.Lister):
filters['host'] = parsed_args.host
data = client.agents(**filters)
- return (column_headers,
- (utils.get_item_properties(
- s, columns, formatters=_formatters,
- ) for s in data))
+ return (
+ column_headers,
+ (
+ utils.get_item_properties(
+ s,
+ columns,
+ formatters=_formatters,
+ )
+ for s in data
+ ),
+ )
class RemoveNetworkFromAgent(command.Command):
@@ -269,28 +297,33 @@ class RemoveNetworkFromAgent(command.Command):
parser.add_argument(
'--dhcp',
action='store_true',
- help=_('Remove network from DHCP agent'))
+ help=_('Remove network from DHCP agent'),
+ )
parser.add_argument(
'agent_id',
metavar='<agent-id>',
- help=_('Agent to which a network is removed (ID only)'))
+ help=_('Agent to which a network is removed (ID only)'),
+ )
parser.add_argument(
'network',
metavar='<network>',
- help=_('Network to be removed from an agent (name or ID)'))
+ help=_('Network to be removed from an agent (name or ID)'),
+ )
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
agent = client.get_agent(parsed_args.agent_id)
network = client.find_network(
- parsed_args.network, ignore_missing=False)
+ parsed_args.network, ignore_missing=False
+ )
if parsed_args.dhcp:
try:
client.remove_dhcp_agent_from_network(agent, network)
except Exception:
msg = 'Failed to remove {} to {}'.format(
- network.name, agent.agent_type)
+ network.name, agent.agent_type
+ )
exceptions.CommandError(msg)
@@ -302,17 +335,17 @@ class RemoveRouterFromAgent(command.Command):
parser.add_argument(
'--l3',
action='store_true',
- help=_('Remove router from an L3 agent')
+ help=_('Remove router from an L3 agent'),
)
parser.add_argument(
'agent_id',
metavar='<agent-id>',
- help=_("Agent from which router will be removed (ID only)")
+ help=_("Agent from which router will be removed (ID only)"),
)
parser.add_argument(
'router',
metavar='<router>',
- help=_("Router to be removed from an agent (name or ID)")
+ help=_("Router to be removed from an agent (name or ID)"),
)
return parser
@@ -335,23 +368,19 @@ class SetNetworkAgent(command.Command):
parser.add_argument(
'network_agent',
metavar="<network-agent>",
- help=(_("Network agent to modify (ID only)"))
+ help=(_("Network agent to modify (ID only)")),
)
parser.add_argument(
'--description',
metavar='<description>',
- help=_("Set network agent description")
+ help=_("Set network agent description"),
)
admin_group = parser.add_mutually_exclusive_group()
admin_group.add_argument(
- '--enable',
- action='store_true',
- help=_("Enable network agent")
+ '--enable', action='store_true', help=_("Enable network agent")
)
admin_group.add_argument(
- '--disable',
- action='store_true',
- help=_("Disable network agent")
+ '--disable', action='store_true', help=_("Disable network agent")
)
return parser
@@ -378,7 +407,7 @@ class ShowNetworkAgent(command.ShowOne):
parser.add_argument(
'network_agent',
metavar="<network-agent>",
- help=(_("Network agent to display (ID only)"))
+ help=(_("Network agent to display (ID only)")),
)
return parser
@@ -386,5 +415,9 @@ class ShowNetworkAgent(command.ShowOne):
client = self.app.client_manager.network
obj = client.get_agent(parsed_args.network_agent)
display_columns, columns = _get_network_columns(obj)
- data = utils.get_item_properties(obj, columns, formatters=_formatters,)
+ data = utils.get_item_properties(
+ obj,
+ columns,
+ formatters=_formatters,
+ )
return display_columns, data
diff --git a/openstackclient/network/v2/network_auto_allocated_topology.py b/openstackclient/network/v2/network_auto_allocated_topology.py
index c612f053..b2d0fe1d 100644
--- a/openstackclient/network/v2/network_auto_allocated_topology.py
+++ b/openstackclient/network/v2/network_auto_allocated_topology.py
@@ -28,9 +28,7 @@ def _get_columns(item):
column_map = {}
hidden_columns = ['name', 'location', 'tenant_id']
return utils.get_osc_show_columns_for_sdk_resource(
- item,
- column_map,
- hidden_columns
+ item, column_map, hidden_columns
)
@@ -71,22 +69,28 @@ class CreateAutoAllocatedTopology(command.ShowOne):
parser.add_argument(
'--project',
metavar='<project>',
- help=_("Return the auto allocated topology for a given project. "
- "Default is current project")
+ help=_(
+ "Return the auto allocated topology for a given project. "
+ "Default is current project"
+ ),
)
identity_common.add_project_domain_option_to_parser(parser)
parser.add_argument(
'--check-resources',
action='store_true',
- help=_("Validate the requirements for auto allocated topology. "
- "Does not return a topology.")
+ help=_(
+ "Validate the requirements for auto allocated topology. "
+ "Does not return a topology."
+ ),
)
parser.add_argument(
'--or-show',
action='store_true',
default=True,
- help=_("If topology exists returns the topology's "
- "information (Default)")
+ help=_(
+ "If topology exists returns the topology's "
+ "information (Default)"
+ ),
)
return parser
@@ -95,9 +99,9 @@ class CreateAutoAllocatedTopology(command.ShowOne):
obj = client.validate_auto_allocated_topology(parsed_args.project)
columns = _format_check_resource_columns()
- data = utils.get_item_properties(_format_check_resource(obj),
- columns,
- formatters={})
+ data = utils.get_item_properties(
+ _format_check_resource(obj), columns, formatters={}
+ )
return (columns, data)
@@ -126,8 +130,10 @@ class DeleteAutoAllocatedTopology(command.Command):
parser.add_argument(
'--project',
metavar='<project>',
- help=_('Delete auto allocated topology for a given project. '
- 'Default is the current project')
+ help=_(
+ 'Delete auto allocated topology for a given project. '
+ 'Default is the current project'
+ ),
)
identity_common.add_project_domain_option_to_parser(parser)
diff --git a/openstackclient/network/v2/network_flavor.py b/openstackclient/network/v2/network_flavor.py
index 864184c0..7c088d50 100644
--- a/openstackclient/network/v2/network_flavor.py
+++ b/openstackclient/network/v2/network_flavor.py
@@ -33,9 +33,7 @@ def _get_columns(item):
hidden_columns = ['location', 'tenant_id']
return utils.get_osc_show_columns_for_sdk_resource(
- item,
- column_map,
- hidden_columns
+ item, column_map, hidden_columns
)
@@ -65,28 +63,28 @@ class AddNetworkFlavorToProfile(command.Command):
_description = _("Add a service profile to a network flavor")
def get_parser(self, prog_name):
- parser = super(
- AddNetworkFlavorToProfile, self).get_parser(prog_name)
+ parser = super(AddNetworkFlavorToProfile, self).get_parser(prog_name)
parser.add_argument(
- 'flavor',
- metavar="<flavor>",
- help=_("Network flavor (name or ID)")
+ 'flavor', metavar="<flavor>", help=_("Network flavor (name or ID)")
)
parser.add_argument(
'service_profile',
metavar="<service-profile>",
- help=_("Service profile (ID only)")
+ help=_("Service profile (ID only)"),
)
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
obj_flavor = client.find_flavor(
- parsed_args.flavor, ignore_missing=False)
+ parsed_args.flavor, ignore_missing=False
+ )
obj_service_profile = client.find_service_profile(
- parsed_args.service_profile, ignore_missing=False)
+ parsed_args.service_profile, ignore_missing=False
+ )
client.associate_flavor_with_service_profile(
- obj_flavor, obj_service_profile)
+ obj_flavor, obj_service_profile
+ )
# TODO(dasanind): Use the SDK resource mapped attribute names once the
@@ -97,26 +95,25 @@ class CreateNetworkFlavor(command.ShowOne, common.NeutronCommandWithExtraArgs):
def get_parser(self, prog_name):
parser = super(CreateNetworkFlavor, self).get_parser(prog_name)
parser.add_argument(
- 'name',
- metavar="<name>",
- help=_("Name for the flavor")
+ 'name', metavar="<name>", help=_("Name for the flavor")
)
parser.add_argument(
'--service-type',
metavar="<service-type>",
required=True,
- help=_('Service type to which the flavor applies to: e.g. VPN '
- '(See openstack network service provider list for loaded '
- 'examples.)')
+ help=_(
+ 'Service type to which the flavor applies to: e.g. VPN '
+ '(See openstack network service provider list for loaded '
+ 'examples.)'
+ ),
)
parser.add_argument(
- '--description',
- help=_('Description for the flavor')
+ '--description', help=_('Description for the flavor')
)
parser.add_argument(
'--project',
metavar="<project>",
- help=_("Owner's project (name or ID)")
+ help=_("Owner's project (name or ID)"),
)
identity_common.add_project_domain_option_to_parser(parser)
@@ -124,12 +121,10 @@ class CreateNetworkFlavor(command.ShowOne, common.NeutronCommandWithExtraArgs):
enable_group.add_argument(
'--enable',
action='store_true',
- help=_("Enable the flavor (default)")
+ help=_("Enable the flavor (default)"),
)
enable_group.add_argument(
- '--disable',
- action='store_true',
- help=_("Disable the flavor")
+ '--disable', action='store_true', help=_("Disable the flavor")
)
return parser
@@ -138,7 +133,8 @@ class CreateNetworkFlavor(command.ShowOne, common.NeutronCommandWithExtraArgs):
client = self.app.client_manager.network
attrs = _get_attrs(self.app.client_manager, parsed_args)
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
obj = client.create_flavor(**attrs)
display_columns, columns = _get_columns(obj)
data = utils.get_item_properties(obj, columns, formatters={})
@@ -156,7 +152,7 @@ class DeleteNetworkFlavor(command.Command):
'flavor',
metavar='<flavor>',
nargs='+',
- help=_('Flavor(s) to delete (name or ID)')
+ help=_('Flavor(s) to delete (name or ID)'),
)
return parser
@@ -170,13 +166,19 @@ class DeleteNetworkFlavor(command.Command):
client.delete_flavor(obj)
except Exception as e:
result += 1
- LOG.error(_("Failed to delete flavor with "
- "name or ID '%(flavor)s': %(e)s"),
- {"flavor": flavor, "e": e})
+ LOG.error(
+ _(
+ "Failed to delete flavor with "
+ "name or ID '%(flavor)s': %(e)s"
+ ),
+ {"flavor": flavor, "e": e},
+ )
if result > 0:
total = len(parsed_args.flavor)
- msg = (_("%(result)s of %(total)s flavors failed "
- "to delete.") % {"result": result, "total": total})
+ msg = _("%(result)s of %(total)s flavors failed " "to delete.") % {
+ "result": result,
+ "total": total,
+ }
raise exceptions.CommandError(msg)
@@ -186,55 +188,56 @@ class ListNetworkFlavor(command.Lister):
def take_action(self, parsed_args):
client = self.app.client_manager.network
- columns = (
- 'id',
- 'name',
- 'is_enabled',
- 'service_type',
- 'description'
- )
+ columns = ('id', 'name', 'is_enabled', 'service_type', 'description')
column_headers = (
'ID',
'Name',
'Enabled',
'Service Type',
- 'Description'
+ 'Description',
)
data = client.flavors()
- return (column_headers,
- (utils.get_item_properties(
- s, columns,
- ) for s in data))
+ return (
+ column_headers,
+ (
+ utils.get_item_properties(
+ s,
+ columns,
+ )
+ for s in data
+ ),
+ )
class RemoveNetworkFlavorFromProfile(command.Command):
- _description = _(
- "Remove service profile from network flavor")
+ _description = _("Remove service profile from network flavor")
def get_parser(self, prog_name):
- parser = super(
- RemoveNetworkFlavorFromProfile, self).get_parser(prog_name)
+ parser = super(RemoveNetworkFlavorFromProfile, self).get_parser(
+ prog_name
+ )
parser.add_argument(
- 'flavor',
- metavar="<flavor>",
- help=_("Network flavor (name or ID)")
+ 'flavor', metavar="<flavor>", help=_("Network flavor (name or ID)")
)
parser.add_argument(
'service_profile',
metavar="<service-profile>",
- help=_("Service profile (ID only)")
+ help=_("Service profile (ID only)"),
)
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
obj_flavor = client.find_flavor(
- parsed_args.flavor, ignore_missing=False)
+ parsed_args.flavor, ignore_missing=False
+ )
obj_service_profile = client.find_service_profile(
- parsed_args.service_profile, ignore_missing=False)
+ parsed_args.service_profile, ignore_missing=False
+ )
client.disassociate_flavor_from_service_profile(
- obj_flavor, obj_service_profile)
+ obj_flavor, obj_service_profile
+ )
# TODO(dasanind): Use only the SDK resource mapped attribute names once the
@@ -247,36 +250,27 @@ class SetNetworkFlavor(common.NeutronCommandWithExtraArgs):
parser.add_argument(
'flavor',
metavar="<flavor>",
- help=_("Flavor to update (name or ID)")
+ help=_("Flavor to update (name or ID)"),
)
parser.add_argument(
- '--description',
- help=_('Set network flavor description')
+ '--description', help=_('Set network flavor description')
)
enable_group = parser.add_mutually_exclusive_group()
enable_group.add_argument(
- '--disable',
- action='store_true',
- help=_("Disable network flavor")
+ '--disable', action='store_true', help=_("Disable network flavor")
)
enable_group.add_argument(
- '--enable',
- action='store_true',
- help=_("Enable network flavor")
+ '--enable', action='store_true', help=_("Enable network flavor")
)
parser.add_argument(
- '--name',
- metavar="<name>",
- help=_('Set flavor name')
+ '--name', metavar="<name>", help=_('Set flavor name')
)
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
- obj = client.find_flavor(
- parsed_args.flavor,
- ignore_missing=False)
+ obj = client.find_flavor(parsed_args.flavor, ignore_missing=False)
attrs = {}
if parsed_args.name is not None:
attrs['name'] = parsed_args.name
@@ -287,7 +281,8 @@ class SetNetworkFlavor(common.NeutronCommandWithExtraArgs):
if parsed_args.disable:
attrs['enabled'] = False
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
client.update_flavor(obj, **attrs)
@@ -299,7 +294,7 @@ class ShowNetworkFlavor(command.ShowOne):
parser.add_argument(
'flavor',
metavar='<flavor>',
- help=_('Flavor to display (name or ID)')
+ help=_('Flavor to display (name or ID)'),
)
return parser
diff --git a/openstackclient/network/v2/network_flavor_profile.py b/openstackclient/network/v2/network_flavor_profile.py
index 66c6dcff..c063d5dd 100644
--- a/openstackclient/network/v2/network_flavor_profile.py
+++ b/openstackclient/network/v2/network_flavor_profile.py
@@ -31,9 +31,7 @@ def _get_columns(item):
hidden_columns = ['location', 'name', 'tenant_id']
return utils.get_osc_show_columns_for_sdk_resource(
- item,
- column_map,
- hidden_columns
+ item, column_map, hidden_columns
)
@@ -63,8 +61,9 @@ def _get_attrs(client_manager, parsed_args):
# TODO(ndahiwade): Use the SDK resource mapped attribute names once the
# OSC minimum requirements include SDK 1.0.
-class CreateNetworkFlavorProfile(command.ShowOne,
- common.NeutronCommandWithExtraArgs):
+class CreateNetworkFlavorProfile(
+ command.ShowOne, common.NeutronCommandWithExtraArgs
+):
_description = _("Create new network flavor profile")
def get_parser(self, prog_name):
@@ -72,34 +71,38 @@ class CreateNetworkFlavorProfile(command.ShowOne,
parser.add_argument(
'--project',
metavar="<project>",
- help=_("Owner's project (name or ID)")
+ help=_("Owner's project (name or ID)"),
)
identity_common.add_project_domain_option_to_parser(parser)
parser.add_argument(
'--description',
metavar="<description>",
- help=_("Description for the flavor profile")
+ help=_("Description for the flavor profile"),
)
enable_group = parser.add_mutually_exclusive_group()
enable_group.add_argument(
'--enable',
action='store_true',
- help=_("Enable the flavor profile")
+ help=_("Enable the flavor profile"),
)
enable_group.add_argument(
'--disable',
action='store_true',
- help=_("Disable the flavor profile")
+ help=_("Disable the flavor profile"),
)
parser.add_argument(
'--driver',
- help=_("Python module path to driver. This becomes "
- "required if --metainfo is missing and vice versa")
+ help=_(
+ "Python module path to driver. This becomes "
+ "required if --metainfo is missing and vice versa"
+ ),
)
parser.add_argument(
'--metainfo',
- help=_("Metainfo for the flavor profile. This becomes "
- "required if --driver is missing and vice versa")
+ help=_(
+ "Metainfo for the flavor profile. This becomes "
+ "required if --driver is missing and vice versa"
+ ),
)
return parser
@@ -108,7 +111,8 @@ class CreateNetworkFlavorProfile(command.ShowOne,
client = self.app.client_manager.network
attrs = _get_attrs(self.app.client_manager, parsed_args)
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
if parsed_args.driver is None and parsed_args.metainfo is None:
msg = _("Either --driver or --metainfo or both are required")
@@ -131,7 +135,7 @@ class DeleteNetworkFlavorProfile(command.Command):
'flavor_profile',
metavar='<flavor-profile>',
nargs='+',
- help=_("Flavor profile(s) to delete (ID only)")
+ help=_("Flavor profile(s) to delete (ID only)"),
)
return parser
@@ -141,18 +145,24 @@ class DeleteNetworkFlavorProfile(command.Command):
for flavor_profile in parsed_args.flavor_profile:
try:
- obj = client.find_service_profile(flavor_profile,
- ignore_missing=False)
+ obj = client.find_service_profile(
+ flavor_profile, ignore_missing=False
+ )
client.delete_service_profile(obj)
except Exception as e:
result += 1
- LOG.error(_("Failed to delete flavor profile with "
- "ID '%(flavor_profile)s': %(e)s"),
- {"flavor_profile": flavor_profile, "e": e})
+ LOG.error(
+ _(
+ "Failed to delete flavor profile with "
+ "ID '%(flavor_profile)s': %(e)s"
+ ),
+ {"flavor_profile": flavor_profile, "e": e},
+ )
if result > 0:
total = len(parsed_args.flavor_profile)
- msg = (_("%(result)s of %(total)s flavor_profiles failed "
- "to delete.") % {"result": result, "total": total})
+ msg = _(
+ "%(result)s of %(total)s flavor_profiles failed " "to delete."
+ ) % {"result": result, "total": total}
raise exceptions.CommandError(msg)
@@ -178,10 +188,16 @@ class ListNetworkFlavorProfile(command.Lister):
)
data = client.service_profiles()
- return (column_headers,
- (utils.get_item_properties(
- s, columns,
- ) for s in data))
+ return (
+ column_headers,
+ (
+ utils.get_item_properties(
+ s,
+ columns,
+ )
+ for s in data
+ ),
+ )
# TODO(ndahiwade): Use the SDK resource mapped attribute names once the
@@ -194,45 +210,51 @@ class SetNetworkFlavorProfile(common.NeutronCommandWithExtraArgs):
parser.add_argument(
'flavor_profile',
metavar="<flavor-profile>",
- help=_("Flavor profile to update (ID only)")
+ help=_("Flavor profile to update (ID only)"),
)
identity_common.add_project_domain_option_to_parser(parser)
parser.add_argument(
'--description',
metavar="<description>",
- help=_("Description for the flavor profile")
+ help=_("Description for the flavor profile"),
)
enable_group = parser.add_mutually_exclusive_group()
enable_group.add_argument(
'--enable',
action='store_true',
- help=_("Enable the flavor profile")
+ help=_("Enable the flavor profile"),
)
enable_group.add_argument(
'--disable',
action='store_true',
- help=_("Disable the flavor profile")
+ help=_("Disable the flavor profile"),
)
parser.add_argument(
'--driver',
- help=_("Python module path to driver. This becomes "
- "required if --metainfo is missing and vice versa")
+ help=_(
+ "Python module path to driver. This becomes "
+ "required if --metainfo is missing and vice versa"
+ ),
)
parser.add_argument(
'--metainfo',
- help=_("Metainfo for the flavor profile. This becomes "
- "required if --driver is missing and vice versa")
+ help=_(
+ "Metainfo for the flavor profile. This becomes "
+ "required if --driver is missing and vice versa"
+ ),
)
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
- obj = client.find_service_profile(parsed_args.flavor_profile,
- ignore_missing=False)
+ obj = client.find_service_profile(
+ parsed_args.flavor_profile, ignore_missing=False
+ )
attrs = _get_attrs(self.app.client_manager, parsed_args)
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
client.update_service_profile(obj, **attrs)
@@ -245,14 +267,15 @@ class ShowNetworkFlavorProfile(command.ShowOne):
parser.add_argument(
'flavor_profile',
metavar='<flavor-profile>',
- help=_("Flavor profile to display (ID only)")
+ help=_("Flavor profile to display (ID only)"),
)
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
- obj = client.find_service_profile(parsed_args.flavor_profile,
- ignore_missing=False)
+ obj = client.find_service_profile(
+ parsed_args.flavor_profile, ignore_missing=False
+ )
display_columns, columns = _get_columns(obj)
data = utils.get_item_properties(obj, columns)
return (display_columns, data)
diff --git a/openstackclient/network/v2/network_meter.py b/openstackclient/network/v2/network_meter.py
index 99b0bdd4..d39bc31f 100644
--- a/openstackclient/network/v2/network_meter.py
+++ b/openstackclient/network/v2/network_meter.py
@@ -32,9 +32,7 @@ def _get_columns(item):
}
hidden_columns = ['location', 'tenant_id']
return utils.get_osc_show_columns_for_sdk_resource(
- item,
- column_map,
- hidden_columns
+ item, column_map, hidden_columns
)
@@ -72,12 +70,12 @@ class CreateMeter(command.ShowOne, common.NeutronCommandWithExtraArgs):
parser.add_argument(
'--description',
metavar='<description>',
- help=_("Create description for meter")
+ help=_("Create description for meter"),
)
parser.add_argument(
'--project',
metavar='<project>',
- help=_("Owner's project (name or ID)")
+ help=_("Owner's project (name or ID)"),
)
identity_common.add_project_domain_option_to_parser(parser)
@@ -86,12 +84,12 @@ class CreateMeter(command.ShowOne, common.NeutronCommandWithExtraArgs):
'--share',
action='store_true',
default=None,
- help=_("Share meter between projects")
+ help=_("Share meter between projects"),
)
share_group.add_argument(
'--no-share',
action='store_true',
- help=_("Do not share meter between projects")
+ help=_("Do not share meter between projects"),
)
parser.add_argument(
'name',
@@ -105,7 +103,8 @@ class CreateMeter(command.ShowOne, common.NeutronCommandWithExtraArgs):
client = self.app.client_manager.network
attrs = _get_attrs(self.app.client_manager, parsed_args)
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
obj = client.create_metering_label(**attrs)
display_columns, columns = _get_columns(obj)
data = utils.get_item_properties(obj, columns, formatters={})
@@ -125,7 +124,7 @@ class DeleteMeter(command.Command):
'meter',
metavar='<meter>',
nargs='+',
- help=_('Meter to delete (name or ID)')
+ help=_('Meter to delete (name or ID)'),
)
return parser
@@ -139,13 +138,16 @@ class DeleteMeter(command.Command):
client.delete_metering_label(obj)
except Exception as e:
result += 1
- LOG.error(_("Failed to delete meter with "
- "ID '%(meter)s': %(e)s"),
- {"meter": meter, "e": e})
+ LOG.error(
+ _("Failed to delete meter with " "ID '%(meter)s': %(e)s"),
+ {"meter": meter, "e": e},
+ )
if result > 0:
total = len(parsed_args.meter)
- msg = (_("%(result)s of %(total)s meters failed "
- "to delete.") % {"result": result, "total": total})
+ msg = _("%(result)s of %(total)s meters failed " "to delete.") % {
+ "result": result,
+ "total": total,
+ }
raise exceptions.CommandError(msg)
@@ -169,10 +171,16 @@ class ListMeter(command.Lister):
)
data = client.metering_labels()
- return (column_headers,
- (utils.get_item_properties(
- s, columns,
- ) for s in data))
+ return (
+ column_headers,
+ (
+ utils.get_item_properties(
+ s,
+ columns,
+ )
+ for s in data
+ ),
+ )
class ShowMeter(command.ShowOne):
@@ -181,16 +189,15 @@ class ShowMeter(command.ShowOne):
def get_parser(self, prog_name):
parser = super(ShowMeter, self).get_parser(prog_name)
parser.add_argument(
- 'meter',
- metavar='<meter>',
- help=_('Meter to display (name or ID)')
+ 'meter', metavar='<meter>', help=_('Meter to display (name or ID)')
)
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
- obj = client.find_metering_label(parsed_args.meter,
- ignore_missing=False)
+ obj = client.find_metering_label(
+ parsed_args.meter, ignore_missing=False
+ )
display_columns, columns = _get_columns(obj)
data = utils.get_item_properties(obj, columns)
return display_columns, data
diff --git a/openstackclient/network/v2/network_meter_rule.py b/openstackclient/network/v2/network_meter_rule.py
index 2c50e5a6..4e513e34 100644
--- a/openstackclient/network/v2/network_meter_rule.py
+++ b/openstackclient/network/v2/network_meter_rule.py
@@ -30,9 +30,7 @@ def _get_columns(item):
column_map = {}
hidden_columns = ['location', 'tenant_id']
return utils.get_osc_show_columns_for_sdk_resource(
- item,
- column_map,
- hidden_columns
+ item, column_map, hidden_columns
)
@@ -76,30 +74,30 @@ class CreateMeterRule(command.ShowOne, common.NeutronCommandWithExtraArgs):
parser.add_argument(
'--project',
metavar='<project>',
- help=_("Owner's project (name or ID)")
+ help=_("Owner's project (name or ID)"),
)
identity_common.add_project_domain_option_to_parser(parser)
exclude_group = parser.add_mutually_exclusive_group()
exclude_group.add_argument(
'--exclude',
action='store_true',
- help=_("Exclude remote IP prefix from traffic count")
+ help=_("Exclude remote IP prefix from traffic count"),
)
exclude_group.add_argument(
'--include',
action='store_true',
- help=_("Include remote IP prefix from traffic count (default)")
+ help=_("Include remote IP prefix from traffic count (default)"),
)
direction_group = parser.add_mutually_exclusive_group()
direction_group.add_argument(
'--ingress',
action='store_true',
- help=_("Apply rule to incoming network traffic (default)")
+ help=_("Apply rule to incoming network traffic (default)"),
)
direction_group.add_argument(
'--egress',
action='store_true',
- help=_('Apply rule to outgoing network traffic')
+ help=_('Apply rule to outgoing network traffic'),
)
parser.add_argument(
'--remote-ip-prefix',
@@ -129,12 +127,14 @@ class CreateMeterRule(command.ShowOne, common.NeutronCommandWithExtraArgs):
def take_action(self, parsed_args):
client = self.app.client_manager.network
- _meter = client.find_metering_label(parsed_args.meter,
- ignore_missing=False)
+ _meter = client.find_metering_label(
+ parsed_args.meter, ignore_missing=False
+ )
parsed_args.meter = _meter.id
attrs = _get_attrs(self.app.client_manager, parsed_args)
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
obj = client.create_metering_label_rule(**attrs)
display_columns, columns = _get_columns(obj)
data = utils.get_item_properties(obj, columns, formatters={})
@@ -152,7 +152,7 @@ class DeleteMeterRule(command.Command):
'meter_rule_id',
metavar='<meter-rule-id>',
nargs='+',
- help=_('Meter rule to delete (ID only)')
+ help=_('Meter rule to delete (ID only)'),
)
return parser
@@ -167,14 +167,19 @@ class DeleteMeterRule(command.Command):
client.delete_metering_label_rule(obj)
except Exception as e:
result += 1
- LOG.error(_("Failed to delete meter rule with "
- "ID '%(id)s': %(e)s"),
- {"id": id, "e": e})
+ LOG.error(
+ _(
+ "Failed to delete meter rule with "
+ "ID '%(id)s': %(e)s"
+ ),
+ {"id": id, "e": e},
+ )
if result > 0:
total = len(parsed_args.meter_rule_id)
- msg = (_("%(result)s of %(total)s meter rules failed "
- "to delete.") % {"result": result, "total": total})
+ msg = _(
+ "%(result)s of %(total)s meter rules failed " "to delete."
+ ) % {"result": result, "total": total}
raise exceptions.CommandError(msg)
@@ -201,10 +206,16 @@ class ListMeterRule(command.Lister):
'Destination IP Prefix',
)
data = client.metering_label_rules()
- return (column_headers,
- (utils.get_item_properties(
- s, columns,
- ) for s in data))
+ return (
+ column_headers,
+ (
+ utils.get_item_properties(
+ s,
+ columns,
+ )
+ for s in data
+ ),
+ )
class ShowMeterRule(command.ShowOne):
@@ -215,14 +226,15 @@ class ShowMeterRule(command.ShowOne):
parser.add_argument(
'meter_rule_id',
metavar='<meter-rule-id>',
- help=_('Meter rule (ID only)')
+ help=_('Meter rule (ID only)'),
)
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
- obj = client.find_metering_label_rule(parsed_args.meter_rule_id,
- ignore_missing=False)
+ obj = client.find_metering_label_rule(
+ parsed_args.meter_rule_id, ignore_missing=False
+ )
display_columns, columns = _get_columns(obj)
data = utils.get_item_properties(obj, columns)
return display_columns, data
diff --git a/openstackclient/network/v2/network_qos_policy.py b/openstackclient/network/v2/network_qos_policy.py
index 29967d7d..ca0f8711 100644
--- a/openstackclient/network/v2/network_qos_policy.py
+++ b/openstackclient/network/v2/network_qos_policy.py
@@ -43,9 +43,7 @@ def _get_columns(item):
}
hidden_columns = ['location', 'tenant_id']
return utils.get_osc_show_columns_for_sdk_resource(
- item,
- column_map,
- hidden_columns
+ item, column_map, hidden_columns
)
@@ -81,39 +79,40 @@ def _get_attrs(client_manager, parsed_args):
# TODO(abhiraut): Use the SDK resource mapped attribute names once the
# OSC minimum requirements include SDK 1.0.
-class CreateNetworkQosPolicy(command.ShowOne,
- common.NeutronCommandWithExtraArgs):
+class CreateNetworkQosPolicy(
+ command.ShowOne, common.NeutronCommandWithExtraArgs
+):
_description = _("Create a QoS policy")
def get_parser(self, prog_name):
parser = super(CreateNetworkQosPolicy, self).get_parser(prog_name)
parser.add_argument(
- 'name',
- metavar='<name>',
- help=_("Name of QoS policy to create")
+ 'name', metavar='<name>', help=_("Name of QoS policy to create")
)
parser.add_argument(
'--description',
metavar='<description>',
- help=_("Description of the QoS policy")
+ help=_("Description of the QoS policy"),
)
share_group = parser.add_mutually_exclusive_group()
share_group.add_argument(
'--share',
action='store_true',
default=None,
- help=_("Make the QoS policy accessible by other projects")
+ help=_("Make the QoS policy accessible by other projects"),
)
share_group.add_argument(
'--no-share',
action='store_true',
- help=_("Make the QoS policy not accessible by other projects "
- "(default)")
+ help=_(
+ "Make the QoS policy not accessible by other projects "
+ "(default)"
+ ),
)
parser.add_argument(
'--project',
metavar='<project>',
- help=_("Owner's project (name or ID)")
+ help=_("Owner's project (name or ID)"),
)
identity_common.add_project_domain_option_to_parser(parser)
default_group = parser.add_mutually_exclusive_group()
@@ -133,7 +132,8 @@ class CreateNetworkQosPolicy(command.ShowOne,
client = self.app.client_manager.network
attrs = _get_attrs(self.app.client_manager, parsed_args)
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
obj = client.create_qos_policy(**attrs)
display_columns, columns = _get_columns(obj)
data = utils.get_item_properties(obj, columns, formatters={})
@@ -149,7 +149,7 @@ class DeleteNetworkQosPolicy(command.Command):
'policy',
metavar="<qos-policy>",
nargs="+",
- help=_("QoS policy(s) to delete (name or ID)")
+ help=_("QoS policy(s) to delete (name or ID)"),
)
return parser
@@ -163,14 +163,19 @@ class DeleteNetworkQosPolicy(command.Command):
client.delete_qos_policy(obj)
except Exception as e:
result += 1
- LOG.error(_("Failed to delete QoS policy "
- "name or ID '%(qos_policy)s': %(e)s"),
- {'qos_policy': policy, 'e': e})
+ LOG.error(
+ _(
+ "Failed to delete QoS policy "
+ "name or ID '%(qos_policy)s': %(e)s"
+ ),
+ {'qos_policy': policy, 'e': e},
+ )
if result > 0:
total = len(parsed_args.policy)
- msg = (_("%(result)s of %(total)s QoS policies failed "
- "to delete.") % {'result': result, 'total': total})
+ msg = _(
+ "%(result)s of %(total)s QoS policies failed " "to delete."
+ ) % {'result': result, 'total': total}
raise exceptions.CommandError(msg)
@@ -184,19 +189,21 @@ class ListNetworkQosPolicy(command.Lister):
parser.add_argument(
'--project',
metavar='<project>',
- help=_("List qos policies according to their project (name or ID)")
+ help=_(
+ "List qos policies according to their project (name or ID)"
+ ),
)
identity_common.add_project_domain_option_to_parser(parser)
shared_group = parser.add_mutually_exclusive_group()
shared_group.add_argument(
'--share',
action='store_true',
- help=_("List qos policies shared between projects")
+ help=_("List qos policies shared between projects"),
)
shared_group.add_argument(
'--no-share',
action='store_true',
- help=_("List qos policies not shared between projects")
+ help=_("List qos policies not shared between projects"),
)
return parser
@@ -218,10 +225,17 @@ class ListNetworkQosPolicy(command.Lister):
)
attrs = _get_attrs(self.app.client_manager, parsed_args)
data = client.qos_policies(**attrs)
- return (column_headers,
- (utils.get_item_properties(
- s, columns, formatters={},
- ) for s in data))
+ return (
+ column_headers,
+ (
+ utils.get_item_properties(
+ s,
+ columns,
+ formatters={},
+ )
+ for s in data
+ ),
+ )
# TODO(abhiraut): Use the SDK resource mapped attribute names once the
@@ -234,17 +248,15 @@ class SetNetworkQosPolicy(common.NeutronCommandWithExtraArgs):
parser.add_argument(
'policy',
metavar="<qos-policy>",
- help=_("QoS policy to modify (name or ID)")
+ help=_("QoS policy to modify (name or ID)"),
)
parser.add_argument(
- '--name',
- metavar="<name>",
- help=_('Set QoS policy name')
+ '--name', metavar="<name>", help=_('Set QoS policy name')
)
parser.add_argument(
'--description',
metavar='<description>',
- help=_("Description of the QoS policy")
+ help=_("Description of the QoS policy"),
)
enable_group = parser.add_mutually_exclusive_group()
enable_group.add_argument(
@@ -272,12 +284,11 @@ class SetNetworkQosPolicy(common.NeutronCommandWithExtraArgs):
def take_action(self, parsed_args):
client = self.app.client_manager.network
- obj = client.find_qos_policy(
- parsed_args.policy,
- ignore_missing=False)
+ obj = client.find_qos_policy(parsed_args.policy, ignore_missing=False)
attrs = _get_attrs(self.app.client_manager, parsed_args)
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
client.update_qos_policy(obj, **attrs)
@@ -289,14 +300,13 @@ class ShowNetworkQosPolicy(command.ShowOne):
parser.add_argument(
'policy',
metavar="<qos-policy>",
- help=_("QoS policy to display (name or ID)")
+ help=_("QoS policy to display (name or ID)"),
)
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
- obj = client.find_qos_policy(parsed_args.policy,
- ignore_missing=False)
+ obj = client.find_qos_policy(parsed_args.policy, ignore_missing=False)
display_columns, columns = _get_columns(obj)
data = utils.get_item_properties(obj, columns, formatters=_formatters)
return (display_columns, data)
diff --git a/openstackclient/network/v2/network_qos_rule.py b/openstackclient/network/v2/network_qos_rule.py
index cb2d2339..a6529c8b 100644
--- a/openstackclient/network/v2/network_qos_rule.py
+++ b/openstackclient/network/v2/network_qos_rule.py
@@ -30,17 +30,40 @@ MANDATORY_PARAMETERS = {
RULE_TYPE_MINIMUM_BANDWIDTH: {'min_kbps', 'direction'},
RULE_TYPE_MINIMUM_PACKET_RATE: {'min_kpps', 'direction'},
RULE_TYPE_DSCP_MARKING: {'dscp_mark'},
- RULE_TYPE_BANDWIDTH_LIMIT: {'max_kbps'}}
+ RULE_TYPE_BANDWIDTH_LIMIT: {'max_kbps'},
+}
OPTIONAL_PARAMETERS = {
RULE_TYPE_MINIMUM_BANDWIDTH: set(),
RULE_TYPE_MINIMUM_PACKET_RATE: set(),
RULE_TYPE_DSCP_MARKING: set(),
- RULE_TYPE_BANDWIDTH_LIMIT: {'direction', 'max_burst_kbps'}}
+ RULE_TYPE_BANDWIDTH_LIMIT: {'direction', 'max_burst_kbps'},
+}
DIRECTION_EGRESS = 'egress'
DIRECTION_INGRESS = 'ingress'
DIRECTION_ANY = 'any'
-DSCP_VALID_MARKS = [0, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32,
- 34, 36, 38, 40, 46, 48, 56]
+DSCP_VALID_MARKS = [
+ 0,
+ 8,
+ 10,
+ 12,
+ 14,
+ 16,
+ 18,
+ 20,
+ 22,
+ 24,
+ 26,
+ 28,
+ 30,
+ 32,
+ 34,
+ 36,
+ 38,
+ 40,
+ 46,
+ 48,
+ 56,
+]
ACTION_CREATE = 'create'
ACTION_DELETE = 'delete'
@@ -53,9 +76,7 @@ def _get_columns(item):
column_map = {}
hidden_columns = ['location', 'tenant_id']
return utils.get_osc_show_columns_for_sdk_resource(
- item,
- column_map,
- hidden_columns
+ item, column_map, hidden_columns
)
@@ -63,31 +84,38 @@ def _check_type_parameters(attrs, type, is_create):
req_params = MANDATORY_PARAMETERS[type]
opt_params = OPTIONAL_PARAMETERS[type]
type_params = req_params | opt_params
- notreq_params = set(itertools.chain(
- *[v for k, v in MANDATORY_PARAMETERS.items() if k != type]))
+ notreq_params = set(
+ itertools.chain(
+ *[v for k, v in MANDATORY_PARAMETERS.items() if k != type]
+ )
+ )
notreq_params -= type_params
if is_create and None in map(attrs.get, req_params):
- msg = (_('"Create" rule command for type "%(rule_type)s" requires '
- 'arguments: %(args)s') %
- {'rule_type': type, 'args': ", ".join(sorted(req_params))})
+ msg = _(
+ '"Create" rule command for type "%(rule_type)s" requires '
+ 'arguments: %(args)s'
+ ) % {'rule_type': type, 'args': ", ".join(sorted(req_params))}
raise exceptions.CommandError(msg)
if set(attrs.keys()) & notreq_params:
- msg = (_('Rule type "%(rule_type)s" only requires arguments: %(args)s')
- % {'rule_type': type, 'args': ", ".join(sorted(type_params))})
+ msg = _(
+ 'Rule type "%(rule_type)s" only requires arguments: %(args)s'
+ ) % {'rule_type': type, 'args': ", ".join(sorted(type_params))}
raise exceptions.CommandError(msg)
def _get_attrs(network_client, parsed_args, is_create=False):
attrs = {}
- qos = network_client.find_qos_policy(parsed_args.qos_policy,
- ignore_missing=False)
+ qos = network_client.find_qos_policy(
+ parsed_args.qos_policy, ignore_missing=False
+ )
attrs['qos_policy_id'] = qos.id
if not is_create:
attrs['id'] = parsed_args.id
rule_type = _find_rule_type(qos, parsed_args.id)
if not rule_type:
- msg = (_('Rule ID %(rule_id)s not found') %
- {'rule_id': parsed_args.id})
+ msg = _('Rule ID %(rule_id)s not found') % {
+ 'rule_id': parsed_args.id
+ }
raise exceptions.CommandError(msg)
else:
rule_type = parsed_args.type
@@ -112,9 +140,10 @@ def _get_attrs(network_client, parsed_args, is_create=False):
if rule_type == RULE_TYPE_MINIMUM_PACKET_RATE:
attrs['direction'] = DIRECTION_ANY
else:
- msg = (_('Direction "any" can only be used with '
- '%(rule_type_min_pps)s rule type') %
- {'rule_type_min_pps': RULE_TYPE_MINIMUM_PACKET_RATE})
+ msg = _(
+ 'Direction "any" can only be used with '
+ '%(rule_type_min_pps)s rule type'
+ ) % {'rule_type_min_pps': RULE_TYPE_MINIMUM_PACKET_RATE}
raise exceptions.CommandError(msg)
_check_type_parameters(attrs, rule_type, is_create)
return attrs
@@ -130,8 +159,10 @@ def _get_item_properties(item, fields):
def _rule_action_call(client, action, rule_type):
rule_type = rule_type.replace('-', '_')
- func_name = '%(action)s_qos_%(rule_type)s_rule' % {'action': action,
- 'rule_type': rule_type}
+ func_name = '%(action)s_qos_%(rule_type)s_rule' % {
+ 'action': action,
+ 'rule_type': rule_type,
+ }
return getattr(client, func_name)
@@ -147,81 +178,91 @@ def _add_rule_arguments(parser):
dest='max_kbps',
metavar='<max-kbps>',
type=int,
- help=_('Maximum bandwidth in kbps')
+ help=_('Maximum bandwidth in kbps'),
)
parser.add_argument(
'--max-burst-kbits',
dest='max_burst_kbits',
metavar='<max-burst-kbits>',
type=int,
- help=_('Maximum burst in kilobits, 0 or not specified means '
- 'automatic, which is 80%% of the bandwidth limit, which works '
- 'for typical TCP traffic. For details check the QoS user '
- 'workflow.')
+ help=_(
+ 'Maximum burst in kilobits, 0 or not specified means '
+ 'automatic, which is 80%% of the bandwidth limit, which works '
+ 'for typical TCP traffic. For details check the QoS user '
+ 'workflow.'
+ ),
)
parser.add_argument(
'--dscp-mark',
dest='dscp_mark',
metavar='<dscp-mark>',
type=int,
- help=_('DSCP mark: value can be 0, even numbers from 8-56, '
- 'excluding 42, 44, 50, 52, and 54')
+ help=_(
+ 'DSCP mark: value can be 0, even numbers from 8-56, '
+ 'excluding 42, 44, 50, 52, and 54'
+ ),
)
parser.add_argument(
'--min-kbps',
dest='min_kbps',
metavar='<min-kbps>',
type=int,
- help=_('Minimum guaranteed bandwidth in kbps')
+ help=_('Minimum guaranteed bandwidth in kbps'),
)
parser.add_argument(
'--min-kpps',
dest='min_kpps',
metavar='<min-kpps>',
type=int,
- help=_('Minimum guaranteed packet rate in kpps')
+ help=_('Minimum guaranteed packet rate in kpps'),
)
direction_group = parser.add_mutually_exclusive_group()
direction_group.add_argument(
'--ingress',
action='store_true',
- help=_("Ingress traffic direction from the project point of view")
+ help=_("Ingress traffic direction from the project point of view"),
)
direction_group.add_argument(
'--egress',
action='store_true',
- help=_("Egress traffic direction from the project point of view")
+ help=_("Egress traffic direction from the project point of view"),
)
direction_group.add_argument(
'--any',
action='store_true',
- help=_("Any traffic direction from the project point of view. Can be "
- "used only with minimum packet rate rule.")
+ help=_(
+ "Any traffic direction from the project point of view. Can be "
+ "used only with minimum packet rate rule."
+ ),
)
-class CreateNetworkQosRule(command.ShowOne,
- common.NeutronCommandWithExtraArgs):
+class CreateNetworkQosRule(
+ command.ShowOne, common.NeutronCommandWithExtraArgs
+):
_description = _("Create new Network QoS rule")
def get_parser(self, prog_name):
- parser = super(CreateNetworkQosRule, self).get_parser(
- prog_name)
+ parser = super(CreateNetworkQosRule, self).get_parser(prog_name)
parser.add_argument(
'qos_policy',
metavar='<qos-policy>',
- help=_('QoS policy that contains the rule (name or ID)')
+ help=_('QoS policy that contains the rule (name or ID)'),
)
parser.add_argument(
'--type',
metavar='<type>',
required=True,
- choices=[RULE_TYPE_MINIMUM_BANDWIDTH,
- RULE_TYPE_MINIMUM_PACKET_RATE,
- RULE_TYPE_DSCP_MARKING,
- RULE_TYPE_BANDWIDTH_LIMIT],
- help=(_('QoS rule type (%s)') %
- ", ".join(MANDATORY_PARAMETERS.keys()))
+ choices=[
+ RULE_TYPE_MINIMUM_BANDWIDTH,
+ RULE_TYPE_MINIMUM_PACKET_RATE,
+ RULE_TYPE_DSCP_MARKING,
+ RULE_TYPE_BANDWIDTH_LIMIT,
+ ],
+ help=(
+ _('QoS rule type (%s)')
+ % ", ".join(MANDATORY_PARAMETERS.keys())
+ ),
)
_add_rule_arguments(parser)
return parser
@@ -231,12 +272,13 @@ class CreateNetworkQosRule(command.ShowOne,
try:
attrs = _get_attrs(network_client, parsed_args, is_create=True)
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
obj = _rule_action_call(
- network_client, ACTION_CREATE, parsed_args.type)(
- attrs.pop('qos_policy_id'), **attrs)
+ network_client, ACTION_CREATE, parsed_args.type
+ )(attrs.pop('qos_policy_id'), **attrs)
except Exception as e:
- msg = (_('Failed to create Network QoS rule: %(e)s') % {'e': e})
+ msg = _('Failed to create Network QoS rule: %(e)s') % {'e': e}
raise exceptions.CommandError(msg)
display_columns, columns = _get_columns(obj)
data = utils.get_item_properties(obj, columns)
@@ -251,12 +293,12 @@ class DeleteNetworkQosRule(command.Command):
parser.add_argument(
'qos_policy',
metavar='<qos-policy>',
- help=_('QoS policy that contains the rule (name or ID)')
+ help=_('QoS policy that contains the rule (name or ID)'),
)
parser.add_argument(
'id',
metavar='<rule-id>',
- help=_('Network QoS rule to delete (ID)')
+ help=_('Network QoS rule to delete (ID)'),
)
return parser
@@ -264,16 +306,19 @@ class DeleteNetworkQosRule(command.Command):
network_client = self.app.client_manager.network
rule_id = parsed_args.id
try:
- qos = network_client.find_qos_policy(parsed_args.qos_policy,
- ignore_missing=False)
+ qos = network_client.find_qos_policy(
+ parsed_args.qos_policy, ignore_missing=False
+ )
rule_type = _find_rule_type(qos, rule_id)
if not rule_type:
raise Exception('Rule %s not found' % rule_id)
_rule_action_call(network_client, ACTION_DELETE, rule_type)(
- rule_id, qos.id)
+ rule_id, qos.id
+ )
except Exception as e:
- msg = (_('Failed to delete Network QoS rule ID "%(rule)s": %(e)s')
- % {'rule': rule_id, 'e': e})
+ msg = _(
+ 'Failed to delete Network QoS rule ID "%(rule)s": %(e)s'
+ ) % {'rule': rule_id, 'e': e}
raise exceptions.CommandError(msg)
@@ -285,7 +330,7 @@ class ListNetworkQosRule(command.Lister):
parser.add_argument(
'qos_policy',
metavar='<qos-policy>',
- help=_('QoS policy that contains the rule (name or ID)')
+ help=_('QoS policy that contains the rule (name or ID)'),
)
return parser
@@ -313,11 +358,14 @@ class ListNetworkQosRule(command.Lister):
'DSCP mark',
'Direction',
)
- qos = client.find_qos_policy(parsed_args.qos_policy,
- ignore_missing=False)
+ qos = client.find_qos_policy(
+ parsed_args.qos_policy, ignore_missing=False
+ )
data = qos.rules
- return (column_headers,
- (_get_item_properties(s, columns) for s in data))
+ return (
+ column_headers,
+ (_get_item_properties(s, columns) for s in data),
+ )
class SetNetworkQosRule(common.NeutronCommandWithExtraArgs):
@@ -328,12 +376,12 @@ class SetNetworkQosRule(common.NeutronCommandWithExtraArgs):
parser.add_argument(
'qos_policy',
metavar='<qos-policy>',
- help=_('QoS policy that contains the rule (name or ID)')
+ help=_('QoS policy that contains the rule (name or ID)'),
)
parser.add_argument(
'id',
metavar='<rule-id>',
- help=_('Network QoS rule to delete (ID)')
+ help=_('Network QoS rule to delete (ID)'),
)
_add_rule_arguments(parser)
return parser
@@ -341,22 +389,28 @@ class SetNetworkQosRule(common.NeutronCommandWithExtraArgs):
def take_action(self, parsed_args):
network_client = self.app.client_manager.network
try:
- qos = network_client.find_qos_policy(parsed_args.qos_policy,
- ignore_missing=False)
+ qos = network_client.find_qos_policy(
+ parsed_args.qos_policy, ignore_missing=False
+ )
rule_type = _find_rule_type(qos, parsed_args.id)
if not rule_type:
raise Exception('Rule not found')
attrs = _get_attrs(network_client, parsed_args)
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
qos_id = attrs.pop('qos_policy_id')
- qos_rule = _rule_action_call(network_client, ACTION_FIND,
- rule_type)(attrs.pop('id'), qos_id)
+ qos_rule = _rule_action_call(
+ network_client, ACTION_FIND, rule_type
+ )(attrs.pop('id'), qos_id)
_rule_action_call(network_client, ACTION_SET, rule_type)(
- qos_rule, qos_id, **attrs)
+ qos_rule, qos_id, **attrs
+ )
except Exception as e:
- msg = (_('Failed to set Network QoS rule ID "%(rule)s": %(e)s') %
- {'rule': parsed_args.id, 'e': e})
+ msg = _('Failed to set Network QoS rule ID "%(rule)s": %(e)s') % {
+ 'rule': parsed_args.id,
+ 'e': e,
+ }
raise exceptions.CommandError(msg)
@@ -368,12 +422,12 @@ class ShowNetworkQosRule(command.ShowOne):
parser.add_argument(
'qos_policy',
metavar='<qos-policy>',
- help=_('QoS policy that contains the rule (name or ID)')
+ help=_('QoS policy that contains the rule (name or ID)'),
)
parser.add_argument(
'id',
metavar='<rule-id>',
- help=_('Network QoS rule to delete (ID)')
+ help=_('Network QoS rule to delete (ID)'),
)
return parser
@@ -381,16 +435,20 @@ class ShowNetworkQosRule(command.ShowOne):
network_client = self.app.client_manager.network
rule_id = parsed_args.id
try:
- qos = network_client.find_qos_policy(parsed_args.qos_policy,
- ignore_missing=False)
+ qos = network_client.find_qos_policy(
+ parsed_args.qos_policy, ignore_missing=False
+ )
rule_type = _find_rule_type(qos, rule_id)
if not rule_type:
raise Exception('Rule not found')
obj = _rule_action_call(network_client, ACTION_SHOW, rule_type)(
- rule_id, qos.id)
+ rule_id, qos.id
+ )
except Exception as e:
- msg = (_('Failed to set Network QoS rule ID "%(rule)s": %(e)s') %
- {'rule': rule_id, 'e': e})
+ msg = _('Failed to set Network QoS rule ID "%(rule)s": %(e)s') % {
+ 'rule': rule_id,
+ 'e': e,
+ }
raise exceptions.CommandError(msg)
display_columns, columns = _get_columns(obj)
data = utils.get_item_properties(obj, columns)
diff --git a/openstackclient/network/v2/network_qos_rule_type.py b/openstackclient/network/v2/network_qos_rule_type.py
index 3f4f6a19..24702070 100644
--- a/openstackclient/network/v2/network_qos_rule_type.py
+++ b/openstackclient/network/v2/network_qos_rule_type.py
@@ -26,7 +26,8 @@ def _get_columns(item):
}
hidden_columns = ["id", "location", "name", 'tenant_id']
return utils.get_osc_show_columns_for_sdk_resource(
- item, column_map, hidden_columns)
+ item, column_map, hidden_columns
+ )
class ListNetworkQosRuleType(command.Lister):
@@ -38,25 +39,25 @@ class ListNetworkQosRuleType(command.Lister):
supported.add_argument(
'--all-supported',
action='store_true',
- help=_("List all the QoS rule types supported by any loaded "
- "mechanism drivers (the union of all sets of supported "
- "rules)")
+ help=_(
+ "List all the QoS rule types supported by any loaded "
+ "mechanism drivers (the union of all sets of supported "
+ "rules)"
+ ),
)
supported.add_argument(
'--all-rules',
action='store_true',
- help=_("List all QoS rule types implemented in Neutron QoS driver")
+ help=_(
+ "List all QoS rule types implemented in Neutron QoS driver"
+ ),
)
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
- columns = (
- 'type',
- )
- column_headers = (
- 'Type',
- )
+ columns = ('type',)
+ column_headers = ('Type',)
args = {}
if parsed_args.all_supported:
@@ -65,10 +66,17 @@ class ListNetworkQosRuleType(command.Lister):
args['all_rules'] = True
data = client.qos_rule_types(**args)
- return (column_headers,
- (utils.get_item_properties(
- s, columns, formatters={},
- ) for s in data))
+ return (
+ column_headers,
+ (
+ utils.get_item_properties(
+ s,
+ columns,
+ formatters={},
+ )
+ for s in data
+ ),
+ )
class ShowNetworkQosRuleType(command.ShowOne):
@@ -79,7 +87,7 @@ class ShowNetworkQosRuleType(command.ShowOne):
parser.add_argument(
'rule_type',
metavar="<qos-rule-type-name>",
- help=_("Name of QoS rule type")
+ help=_("Name of QoS rule type"),
)
return parser
diff --git a/openstackclient/network/v2/network_rbac.py b/openstackclient/network/v2/network_rbac.py
index fa4fca7c..cb28ea3b 100644
--- a/openstackclient/network/v2/network_rbac.py
+++ b/openstackclient/network/v2/network_rbac.py
@@ -32,9 +32,7 @@ def _get_columns(item):
}
hidden_columns = ['location', 'name', 'tenant_id']
return utils.get_osc_show_columns_for_sdk_resource(
- item,
- column_map,
- hidden_columns
+ item, column_map, hidden_columns
)
@@ -46,27 +44,28 @@ def _get_attrs(client_manager, parsed_args):
network_client = client_manager.network
if parsed_args.type == 'network':
object_id = network_client.find_network(
- parsed_args.rbac_object, ignore_missing=False).id
+ parsed_args.rbac_object, ignore_missing=False
+ ).id
if parsed_args.type == 'qos_policy':
object_id = network_client.find_qos_policy(
- parsed_args.rbac_object,
- ignore_missing=False).id
+ parsed_args.rbac_object, ignore_missing=False
+ ).id
if parsed_args.type == 'security_group':
object_id = network_client.find_security_group(
- parsed_args.rbac_object,
- ignore_missing=False).id
+ parsed_args.rbac_object, ignore_missing=False
+ ).id
if parsed_args.type == 'address_scope':
object_id = network_client.find_address_scope(
- parsed_args.rbac_object,
- ignore_missing=False).id
+ parsed_args.rbac_object, ignore_missing=False
+ ).id
if parsed_args.type == 'subnetpool':
object_id = network_client.find_subnet_pool(
- parsed_args.rbac_object,
- ignore_missing=False).id
+ parsed_args.rbac_object, ignore_missing=False
+ ).id
if parsed_args.type == 'address_group':
object_id = network_client.find_address_group(
- parsed_args.rbac_object,
- ignore_missing=False).id
+ parsed_args.rbac_object, ignore_missing=False
+ ).id
attrs['object_id'] = object_id
@@ -101,51 +100,68 @@ class CreateNetworkRBAC(command.ShowOne, common.NeutronCommandWithExtraArgs):
parser.add_argument(
'rbac_object',
metavar="<rbac-object>",
- help=_("The object to which this RBAC policy affects (name or ID)")
+ help=_(
+ "The object to which this RBAC policy affects (name or ID)"
+ ),
)
parser.add_argument(
'--type',
metavar="<type>",
required=True,
- choices=['address_group', 'address_scope', 'security_group',
- 'subnetpool', 'qos_policy', 'network'],
- help=_('Type of the object that RBAC policy '
- 'affects ("address_group", "address_scope", '
- '"security_group", "subnetpool", "qos_policy" or '
- '"network")')
+ choices=[
+ 'address_group',
+ 'address_scope',
+ 'security_group',
+ 'subnetpool',
+ 'qos_policy',
+ 'network',
+ ],
+ help=_(
+ 'Type of the object that RBAC policy '
+ 'affects ("address_group", "address_scope", '
+ '"security_group", "subnetpool", "qos_policy" or '
+ '"network")'
+ ),
)
parser.add_argument(
'--action',
metavar="<action>",
required=True,
choices=['access_as_external', 'access_as_shared'],
- help=_('Action for the RBAC policy '
- '("access_as_external" or "access_as_shared")')
+ help=_(
+ 'Action for the RBAC policy '
+ '("access_as_external" or "access_as_shared")'
+ ),
)
target_project_group = parser.add_mutually_exclusive_group(
- required=True)
+ required=True
+ )
target_project_group.add_argument(
'--target-project',
metavar="<target-project>",
- help=_('The project to which the RBAC policy '
- 'will be enforced (name or ID)')
+ help=_(
+ 'The project to which the RBAC policy '
+ 'will be enforced (name or ID)'
+ ),
)
target_project_group.add_argument(
'--target-all-projects',
action='store_true',
- help=_('Allow creating RBAC policy for all projects.')
+ help=_('Allow creating RBAC policy for all projects.'),
)
parser.add_argument(
'--target-project-domain',
metavar='<target-project-domain>',
- help=_('Domain the target project belongs to (name or ID). '
- 'This can be used in case collisions between project names '
- 'exist.'),
+ help=_(
+ 'Domain the target project belongs to (name or ID). '
+ 'This can be used in case collisions between project names '
+ 'exist.'
+ ),
)
parser.add_argument(
'--project',
metavar="<project>",
- help=_('The owner project (name or ID)')
+ help=_('The owner project (name or ID)'),
)
identity_common.add_project_domain_option_to_parser(parser)
return parser
@@ -154,7 +170,8 @@ class CreateNetworkRBAC(command.ShowOne, common.NeutronCommandWithExtraArgs):
client = self.app.client_manager.network
attrs = _get_attrs(self.app.client_manager, parsed_args)
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
obj = client.create_rbac_policy(**attrs)
display_columns, columns = _get_columns(obj)
data = utils.get_item_properties(obj, columns)
@@ -170,7 +187,7 @@ class DeleteNetworkRBAC(command.Command):
'rbac_policy',
metavar="<rbac-policy>",
nargs='+',
- help=_("RBAC policy(s) to delete (ID only)")
+ help=_("RBAC policy(s) to delete (ID only)"),
)
return parser
@@ -184,14 +201,19 @@ class DeleteNetworkRBAC(command.Command):
client.delete_rbac_policy(obj)
except Exception as e:
result += 1
- LOG.error(_("Failed to delete RBAC policy with "
- "ID '%(rbac)s': %(e)s"),
- {'rbac': rbac, 'e': e})
+ LOG.error(
+ _(
+ "Failed to delete RBAC policy with "
+ "ID '%(rbac)s': %(e)s"
+ ),
+ {'rbac': rbac, 'e': e},
+ )
if result > 0:
total = len(parsed_args.rbac_policy)
- msg = (_("%(result)s of %(total)s RBAC policies failed "
- "to delete.") % {'result': result, 'total': total})
+ msg = _(
+ "%(result)s of %(total)s RBAC policies failed " "to delete."
+ ) % {'result': result, 'total': total}
raise exceptions.CommandError(msg)
@@ -203,30 +225,40 @@ class ListNetworkRBAC(command.Lister):
parser.add_argument(
'--type',
metavar='<type>',
- choices=['address_group', 'address_scope', 'security_group',
- 'subnetpool', 'qos_policy', 'network'],
- help=_('List network RBAC policies according to '
- 'given object type ("address_group", "address_scope", '
- '"security_group", "subnetpool", "qos_policy" or '
- '"network")')
+ choices=[
+ 'address_group',
+ 'address_scope',
+ 'security_group',
+ 'subnetpool',
+ 'qos_policy',
+ 'network',
+ ],
+ help=_(
+ 'List network RBAC policies according to '
+ 'given object type ("address_group", "address_scope", '
+ '"security_group", "subnetpool", "qos_policy" or '
+ '"network")'
+ ),
)
parser.add_argument(
'--action',
metavar='<action>',
choices=['access_as_external', 'access_as_shared'],
- help=_('List network RBAC policies according to given '
- 'action ("access_as_external" or "access_as_shared")')
+ help=_(
+ 'List network RBAC policies according to given '
+ 'action ("access_as_external" or "access_as_shared")'
+ ),
)
parser.add_argument(
'--target-project',
metavar='<target-project>',
- help=_('List network RBAC policies for a specific target project')
+ help=_('List network RBAC policies for a specific target project'),
)
parser.add_argument(
'--long',
action='store_true',
default=False,
- help=_("List additional fields in output")
+ help=_("List additional fields in output"),
)
return parser
@@ -265,10 +297,16 @@ class ListNetworkRBAC(command.Lister):
data = client.rbac_policies(**query)
- return (column_headers,
- (utils.get_item_properties(
- s, columns,
- ) for s in data))
+ return (
+ column_headers,
+ (
+ utils.get_item_properties(
+ s,
+ columns,
+ )
+ for s in data
+ ),
+ )
# TODO(abhiraut): Use the SDK resource mapped attribute names once the
@@ -281,27 +319,32 @@ class SetNetworkRBAC(common.NeutronCommandWithExtraArgs):
parser.add_argument(
'rbac_policy',
metavar="<rbac-policy>",
- help=_("RBAC policy to be modified (ID only)")
+ help=_("RBAC policy to be modified (ID only)"),
)
parser.add_argument(
'--target-project',
metavar="<target-project>",
- help=_('The project to which the RBAC policy '
- 'will be enforced (name or ID)')
+ help=_(
+ 'The project to which the RBAC policy '
+ 'will be enforced (name or ID)'
+ ),
)
parser.add_argument(
'--target-project-domain',
metavar='<target-project-domain>',
- help=_('Domain the target project belongs to (name or ID). '
- 'This can be used in case collisions between project names '
- 'exist.'),
+ help=_(
+ 'Domain the target project belongs to (name or ID). '
+ 'This can be used in case collisions between project names '
+ 'exist.'
+ ),
)
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
- obj = client.find_rbac_policy(parsed_args.rbac_policy,
- ignore_missing=False)
+ obj = client.find_rbac_policy(
+ parsed_args.rbac_policy, ignore_missing=False
+ )
attrs = {}
if parsed_args.target_project:
identity_client = self.app.client_manager.identity
@@ -312,7 +355,8 @@ class SetNetworkRBAC(common.NeutronCommandWithExtraArgs):
).id
attrs['target_tenant'] = project_id
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
client.update_rbac_policy(obj, **attrs)
@@ -324,14 +368,15 @@ class ShowNetworkRBAC(command.ShowOne):
parser.add_argument(
'rbac_policy',
metavar="<rbac-policy>",
- help=_("RBAC policy (ID only)")
+ help=_("RBAC policy (ID only)"),
)
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
- obj = client.find_rbac_policy(parsed_args.rbac_policy,
- ignore_missing=False)
+ obj = client.find_rbac_policy(
+ parsed_args.rbac_policy, ignore_missing=False
+ )
display_columns, columns = _get_columns(obj)
data = utils.get_item_properties(obj, columns)
return display_columns, data
diff --git a/openstackclient/network/v2/network_segment.py b/openstackclient/network/v2/network_segment.py
index c6c88e30..a17f37c0 100644
--- a/openstackclient/network/v2/network_segment.py
+++ b/openstackclient/network/v2/network_segment.py
@@ -29,22 +29,19 @@ def _get_columns(item):
column_map = {}
hidden_columns = ['location', 'tenant_id']
return utils.get_osc_show_columns_for_sdk_resource(
- item,
- column_map,
- hidden_columns
+ item, column_map, hidden_columns
)
-class CreateNetworkSegment(command.ShowOne,
- common.NeutronCommandWithExtraArgs):
+class CreateNetworkSegment(
+ command.ShowOne, common.NeutronCommandWithExtraArgs
+):
_description = _("Create new network segment")
def get_parser(self, prog_name):
parser = super(CreateNetworkSegment, self).get_parser(prog_name)
parser.add_argument(
- 'name',
- metavar='<name>',
- help=_('New network segment name')
+ 'name', metavar='<name>', help=_('New network segment name')
)
parser.add_argument(
'--description',
@@ -60,10 +57,12 @@ class CreateNetworkSegment(command.ShowOne,
'--segment',
metavar='<segment>',
type=int,
- help=_('Segment identifier for this network segment which is '
- 'based on the network type, VLAN ID for vlan network '
- 'type and tunnel ID for geneve, gre and vxlan network '
- 'types'),
+ help=_(
+ 'Segment identifier for this network segment which is '
+ 'based on the network type, VLAN ID for vlan network '
+ 'type and tunnel ID for geneve, gre and vxlan network '
+ 'types'
+ ),
)
parser.add_argument(
'--network',
@@ -76,8 +75,10 @@ class CreateNetworkSegment(command.ShowOne,
metavar='<network-type>',
choices=['flat', 'geneve', 'gre', 'local', 'vlan', 'vxlan'],
required=True,
- help=_('Network type of this network segment '
- '(flat, geneve, gre, local, vlan or vxlan)'),
+ help=_(
+ 'Network type of this network segment '
+ '(flat, geneve, gre, local, vlan or vxlan)'
+ ),
)
return parser
@@ -85,8 +86,9 @@ class CreateNetworkSegment(command.ShowOne,
client = self.app.client_manager.network
attrs = {}
attrs['name'] = parsed_args.name
- attrs['network_id'] = client.find_network(parsed_args.network,
- ignore_missing=False).id
+ attrs['network_id'] = client.find_network(
+ parsed_args.network, ignore_missing=False
+ ).id
attrs['network_type'] = parsed_args.network_type
if parsed_args.description is not None:
attrs['description'] = parsed_args.description
@@ -95,7 +97,8 @@ class CreateNetworkSegment(command.ShowOne,
if parsed_args.segment is not None:
attrs['segmentation_id'] = parsed_args.segment
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
obj = client.create_segment(**attrs)
display_columns, columns = _get_columns(obj)
data = utils.get_item_properties(obj, columns)
@@ -121,19 +124,25 @@ class DeleteNetworkSegment(command.Command):
result = 0
for network_segment in parsed_args.network_segment:
try:
- obj = client.find_segment(network_segment,
- ignore_missing=False)
+ obj = client.find_segment(
+ network_segment, ignore_missing=False
+ )
client.delete_segment(obj)
except Exception as e:
result += 1
- LOG.error(_("Failed to delete network segment with "
- "ID '%(network_segment)s': %(e)s"),
- {'network_segment': network_segment, 'e': e})
+ LOG.error(
+ _(
+ "Failed to delete network segment with "
+ "ID '%(network_segment)s': %(e)s"
+ ),
+ {'network_segment': network_segment, 'e': e},
+ )
if result > 0:
total = len(parsed_args.network_segment)
- msg = (_("%(result)s of %(total)s network segments failed "
- "to delete.") % {'result': result, 'total': total})
+ msg = _(
+ "%(result)s of %(total)s network segments failed " "to delete."
+ ) % {'result': result, 'total': total}
raise exceptions.CommandError(msg)
@@ -151,8 +160,10 @@ class ListNetworkSegment(command.Lister):
parser.add_argument(
'--network',
metavar='<network>',
- help=_('List network segments that belong to this '
- 'network (name or ID)'),
+ help=_(
+ 'List network segments that belong to this '
+ 'network (name or ID)'
+ ),
)
return parser
@@ -162,8 +173,7 @@ class ListNetworkSegment(command.Lister):
filters = {}
if parsed_args.network:
_network = network_client.find_network(
- parsed_args.network,
- ignore_missing=False
+ parsed_args.network, ignore_missing=False
)
filters = {'network_id': _network.id}
data = network_client.segments(**filters)
@@ -183,18 +193,20 @@ class ListNetworkSegment(command.Lister):
'segmentation_id',
)
if parsed_args.long:
- headers = headers + (
- 'Physical Network',
- )
- columns = columns + (
- 'physical_network',
- )
-
- return (headers,
- (utils.get_item_properties(
- s, columns,
+ headers = headers + ('Physical Network',)
+ columns = columns + ('physical_network',)
+
+ return (
+ headers,
+ (
+ utils.get_item_properties(
+ s,
+ columns,
formatters={},
- ) for s in data))
+ )
+ for s in data
+ ),
+ )
class SetNetworkSegment(common.NeutronCommandWithExtraArgs):
@@ -221,15 +233,17 @@ class SetNetworkSegment(common.NeutronCommandWithExtraArgs):
def take_action(self, parsed_args):
client = self.app.client_manager.network
- obj = client.find_segment(parsed_args.network_segment,
- ignore_missing=False)
+ obj = client.find_segment(
+ parsed_args.network_segment, ignore_missing=False
+ )
attrs = {}
if parsed_args.description is not None:
attrs['description'] = parsed_args.description
if parsed_args.name is not None:
attrs['name'] = parsed_args.name
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
client.update_segment(obj, **attrs)
@@ -248,8 +262,7 @@ class ShowNetworkSegment(command.ShowOne):
def take_action(self, parsed_args):
client = self.app.client_manager.network
obj = client.find_segment(
- parsed_args.network_segment,
- ignore_missing=False
+ parsed_args.network_segment, ignore_missing=False
)
display_columns, columns = _get_columns(obj)
data = utils.get_item_properties(obj, columns)
diff --git a/openstackclient/network/v2/network_segment_range.py b/openstackclient/network/v2/network_segment_range.py
index 1291d9d8..96a03cf6 100644
--- a/openstackclient/network/v2/network_segment_range.py
+++ b/openstackclient/network/v2/network_segment_range.py
@@ -35,9 +35,7 @@ def _get_columns(item):
column_map = {}
hidden_columns = ['location', 'tenant_id']
return utils.get_osc_show_columns_for_sdk_resource(
- item,
- column_map,
- hidden_columns
+ item, column_map, hidden_columns
)
@@ -45,8 +43,9 @@ def _get_ranges(item):
item = sorted([int(i) for i in item])
for a, b in itertools.groupby(enumerate(item), lambda xy: xy[1] - xy[0]):
b = list(b)
- yield "%s-%s" % (b[0][1], b[-1][1]) if b[0][1] != b[-1][1] else \
- str(b[0][1])
+ yield "%s-%s" % (b[0][1], b[-1][1]) if b[0][1] != b[-1][1] else str(
+ b[0][1]
+ )
def _hack_tuple_value_update_by_index(tup, index, value):
@@ -73,7 +72,8 @@ def _exchange_dict_keys_with_values(orig_dict):
def _update_available_from_props(columns, props):
index_available = columns.index('available')
props = _hack_tuple_value_update_by_index(
- props, index_available, list(_get_ranges(props[index_available])))
+ props, index_available, list(_get_ranges(props[index_available]))
+ )
return props
@@ -82,8 +82,7 @@ def _update_used_from_props(columns, props):
updated_used = _exchange_dict_keys_with_values(props[index_used])
for k, v in updated_used.items():
updated_used[k] = list(_get_ranges(v))
- props = _hack_tuple_value_update_by_index(
- props, index_used, updated_used)
+ props = _hack_tuple_value_update_by_index(props, index_used, updated_used)
return props
@@ -93,8 +92,9 @@ def _update_additional_fields_from_props(columns, props):
return props
-class CreateNetworkSegmentRange(command.ShowOne,
- common.NeutronCommandWithExtraArgs):
+class CreateNetworkSegmentRange(
+ command.ShowOne, common.NeutronCommandWithExtraArgs
+):
_description = _("Create new network segment range")
def get_parser(self, prog_name):
@@ -104,8 +104,10 @@ class CreateNetworkSegmentRange(command.ShowOne,
"--private",
dest="private",
action="store_true",
- help=_('Network segment range is assigned specifically to the '
- 'project'),
+ help=_(
+ 'Network segment range is assigned specifically to the '
+ 'project'
+ ),
)
shared_group.add_argument(
"--shared",
@@ -116,13 +118,15 @@ class CreateNetworkSegmentRange(command.ShowOne,
parser.add_argument(
'name',
metavar='<name>',
- help=_('Name of new network segment range')
+ help=_('Name of new network segment range'),
)
parser.add_argument(
'--project',
metavar='<project>',
- help=_('Network segment range owner (name or ID). Optional when '
- 'the segment range is shared'),
+ help=_(
+ 'Network segment range owner (name or ID). Optional when '
+ 'the segment range is shared'
+ ),
)
identity_common.add_project_domain_option_to_parser(parser)
parser.add_argument(
@@ -130,8 +134,10 @@ class CreateNetworkSegmentRange(command.ShowOne,
metavar='<network-type>',
choices=['geneve', 'gre', 'vlan', 'vxlan'],
required=True,
- help=_('Network type of this network segment range '
- '(geneve, gre, vlan or vxlan)'),
+ help=_(
+ 'Network type of this network segment range '
+ '(geneve, gre, vlan or vxlan)'
+ ),
)
parser.add_argument(
'--physical-network',
@@ -143,20 +149,24 @@ class CreateNetworkSegmentRange(command.ShowOne,
metavar='<minimum-segmentation-id>',
type=int,
required=True,
- help=_('Minimum segment identifier for this network segment '
- 'range which is based on the network type, VLAN ID for '
- 'vlan network type and tunnel ID for geneve, gre and vxlan '
- 'network types'),
+ help=_(
+ 'Minimum segment identifier for this network segment '
+ 'range which is based on the network type, VLAN ID for '
+ 'vlan network type and tunnel ID for geneve, gre and vxlan '
+ 'network types'
+ ),
)
parser.add_argument(
'--maximum',
metavar='<maximum-segmentation-id>',
type=int,
required=True,
- help=_('Maximum segment identifier for this network segment '
- 'range which is based on the network type, VLAN ID for '
- 'vlan network type and tunnel ID for geneve, gre and vxlan '
- 'network types'),
+ help=_(
+ 'Maximum segment identifier for this network segment '
+ 'range which is based on the network type, VLAN ID for '
+ 'vlan network type and tunnel ID for geneve, gre and vxlan '
+ 'network types'
+ ),
)
return parser
@@ -165,11 +175,14 @@ class CreateNetworkSegmentRange(command.ShowOne,
network_client = self.app.client_manager.network
try:
# Verify that the extension exists.
- network_client.find_extension('network-segment-range',
- ignore_missing=False)
+ network_client.find_extension(
+ 'network-segment-range', ignore_missing=False
+ )
except Exception as e:
- msg = (_('Network segment range create not supported by '
- 'Network API: %(e)s') % {'e': e})
+ msg = _(
+ 'Network segment range create not supported by '
+ 'Network API: %(e)s'
+ ) % {'e': e}
raise exceptions.CommandError(msg)
identity_client = self.app.client_manager.identity
@@ -178,10 +191,14 @@ class CreateNetworkSegmentRange(command.ShowOne,
msg = _("--project is only allowed with --private")
raise exceptions.CommandError(msg)
- if (parsed_args.network_type.lower() != 'vlan' and
- parsed_args.physical_network):
- msg = _("--physical-network is only allowed with --network-type "
- "vlan")
+ if (
+ parsed_args.network_type.lower() != 'vlan'
+ and parsed_args.physical_network
+ ):
+ msg = _(
+ "--physical-network is only allowed with --network-type "
+ "vlan"
+ )
raise exceptions.CommandError(msg)
attrs = {}
@@ -205,8 +222,13 @@ class CreateNetworkSegmentRange(command.ShowOne,
if project_id:
attrs['project_id'] = project_id
else:
- msg = (_("Failed to create the network segment range for "
- "project %(project_id)s") % parsed_args.project_id)
+ msg = (
+ _(
+ "Failed to create the network segment range for "
+ "project %(project_id)s"
+ )
+ % parsed_args.project_id
+ )
raise exceptions.CommandError(msg)
elif not attrs['shared']:
# default to the current project if no project specified and shared
@@ -218,7 +240,8 @@ class CreateNetworkSegmentRange(command.ShowOne,
attrs['physical_network'] = parsed_args.physical_network
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
obj = network_client.create_network_segment_range(**attrs)
display_columns, columns = _get_columns(obj)
@@ -244,30 +267,39 @@ class DeleteNetworkSegmentRange(command.Command):
network_client = self.app.client_manager.network
try:
# Verify that the extension exists.
- network_client.find_extension('network-segment-range',
- ignore_missing=False)
+ network_client.find_extension(
+ 'network-segment-range', ignore_missing=False
+ )
except Exception as e:
- msg = (_('Network segment range delete not supported by '
- 'Network API: %(e)s') % {'e': e})
+ msg = _(
+ 'Network segment range delete not supported by '
+ 'Network API: %(e)s'
+ ) % {'e': e}
raise exceptions.CommandError(msg)
result = 0
for network_segment_range in parsed_args.network_segment_range:
try:
obj = network_client.find_network_segment_range(
- network_segment_range, ignore_missing=False)
+ network_segment_range, ignore_missing=False
+ )
network_client.delete_network_segment_range(obj)
except Exception as e:
result += 1
- LOG.error(_("Failed to delete network segment range with "
- "ID '%(network_segment_range)s': %(e)s"),
- {'network_segment_range': network_segment_range,
- 'e': e})
+ LOG.error(
+ _(
+ "Failed to delete network segment range with "
+ "ID '%(network_segment_range)s': %(e)s"
+ ),
+ {'network_segment_range': network_segment_range, 'e': e},
+ )
if result > 0:
total = len(parsed_args.network_segment_range)
- msg = (_("%(result)s of %(total)s network segment ranges failed "
- "to delete.") % {'result': result, 'total': total})
+ msg = _(
+ "%(result)s of %(total)s network segment ranges failed "
+ "to delete."
+ ) % {'result': result, 'total': total}
raise exceptions.CommandError(msg)
@@ -290,8 +322,9 @@ class ListNetworkSegmentRange(command.Lister):
used_group.add_argument(
'--unused',
action='store_true',
- help=_('List network segment ranges that have segments '
- 'not in use'),
+ help=_(
+ 'List network segment ranges that have segments ' 'not in use'
+ ),
)
available_group = parser.add_mutually_exclusive_group()
available_group.add_argument(
@@ -310,11 +343,14 @@ class ListNetworkSegmentRange(command.Lister):
network_client = self.app.client_manager.network
try:
# Verify that the extension exists.
- network_client.find_extension('network-segment-range',
- ignore_missing=False)
+ network_client.find_extension(
+ 'network-segment-range', ignore_missing=False
+ )
except Exception as e:
- msg = (_('Network segment ranges list not supported by '
- 'Network API: %(e)s') % {'e': e})
+ msg = _(
+ 'Network segment ranges list not supported by '
+ 'Network API: %(e)s'
+ ) % {'e': e}
raise exceptions.CommandError(msg)
filters = {}
@@ -329,7 +365,7 @@ class ListNetworkSegmentRange(command.Lister):
'Network Type',
'Physical Network',
'Minimum ID',
- 'Maximum ID'
+ 'Maximum ID',
)
columns = (
'id',
@@ -342,8 +378,12 @@ class ListNetworkSegmentRange(command.Lister):
'minimum',
'maximum',
)
- if parsed_args.available or parsed_args.unavailable or \
- parsed_args.used or parsed_args.unused:
+ if (
+ parsed_args.available
+ or parsed_args.unavailable
+ or parsed_args.used
+ or parsed_args.unused
+ ):
# If one of `--available`, `--unavailable`, `--used`,
# `--unused` is specified, we assume that additional fields
# should be listed in output.
@@ -361,13 +401,16 @@ class ListNetworkSegmentRange(command.Lister):
display_props = tuple()
for s in data:
props = utils.get_item_properties(s, columns)
- if parsed_args.available and \
- _is_prop_empty(columns, props, 'available') or \
- parsed_args.unavailable and \
- not _is_prop_empty(columns, props, 'available') or \
- parsed_args.used and _is_prop_empty(columns, props, 'used') or \
- parsed_args.unused and \
- not _is_prop_empty(columns, props, 'used'):
+ if (
+ parsed_args.available
+ and _is_prop_empty(columns, props, 'available')
+ or parsed_args.unavailable
+ and not _is_prop_empty(columns, props, 'available')
+ or parsed_args.used
+ and _is_prop_empty(columns, props, 'used')
+ or parsed_args.unused
+ and not _is_prop_empty(columns, props, 'used')
+ ):
continue
if parsed_args.long:
props = _update_additional_fields_from_props(columns, props)
@@ -409,20 +452,25 @@ class SetNetworkSegmentRange(common.NeutronCommandWithExtraArgs):
network_client = self.app.client_manager.network
try:
# Verify that the extension exists.
- network_client.find_extension('network-segment-range',
- ignore_missing=False)
+ network_client.find_extension(
+ 'network-segment-range', ignore_missing=False
+ )
except Exception as e:
- msg = (_('Network segment range set not supported by '
- 'Network API: %(e)s') % {'e': e})
+ msg = _(
+ 'Network segment range set not supported by '
+ 'Network API: %(e)s'
+ ) % {'e': e}
raise exceptions.CommandError(msg)
- if (parsed_args.minimum and not parsed_args.maximum) or \
- (parsed_args.maximum and not parsed_args.minimum):
+ if (parsed_args.minimum and not parsed_args.maximum) or (
+ parsed_args.maximum and not parsed_args.minimum
+ ):
msg = _("--minimum and --maximum are both required")
raise exceptions.CommandError(msg)
obj = network_client.find_network_segment_range(
- parsed_args.network_segment_range, ignore_missing=False)
+ parsed_args.network_segment_range, ignore_missing=False
+ )
attrs = {}
if parsed_args.name:
attrs['name'] = parsed_args.name
@@ -431,7 +479,8 @@ class SetNetworkSegmentRange(common.NeutronCommandWithExtraArgs):
if parsed_args.maximum:
attrs['maximum'] = parsed_args.maximum
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
network_client.update_network_segment_range(obj, **attrs)
@@ -451,16 +500,18 @@ class ShowNetworkSegmentRange(command.ShowOne):
network_client = self.app.client_manager.network
try:
# Verify that the extension exists.
- network_client.find_extension('network-segment-range',
- ignore_missing=False)
+ network_client.find_extension(
+ 'network-segment-range', ignore_missing=False
+ )
except Exception as e:
- msg = (_('Network segment range show not supported by '
- 'Network API: %(e)s') % {'e': e})
+ msg = _(
+ 'Network segment range show not supported by '
+ 'Network API: %(e)s'
+ ) % {'e': e}
raise exceptions.CommandError(msg)
obj = network_client.find_network_segment_range(
- parsed_args.network_segment_range,
- ignore_missing=False
+ parsed_args.network_segment_range, ignore_missing=False
)
display_columns, columns = _get_columns(obj)
data = utils.get_item_properties(obj, columns)
diff --git a/openstackclient/network/v2/network_trunk.py b/openstackclient/network/v2/network_trunk.py
index c5f62901..6050ba65 100644
--- a/openstackclient/network/v2/network_trunk.py
+++ b/openstackclient/network/v2/network_trunk.py
@@ -45,55 +45,54 @@ class CreateNetworkTrunk(command.ShowOne):
def get_parser(self, prog_name):
parser = super(CreateNetworkTrunk, self).get_parser(prog_name)
parser.add_argument(
- 'name',
- metavar='<name>',
- help=_("Name of the trunk to create")
+ 'name', metavar='<name>', help=_("Name of the trunk to create")
)
parser.add_argument(
'--description',
metavar='<description>',
- help=_("A description of the trunk")
+ help=_("A description of the trunk"),
)
parser.add_argument(
'--parent-port',
metavar='<parent-port>',
required=True,
- help=_("Parent port belonging to this trunk (name or ID)")
+ help=_("Parent port belonging to this trunk (name or ID)"),
)
parser.add_argument(
'--subport',
metavar='<port=,segmentation-type=,segmentation-id=>',
- action=parseractions.MultiKeyValueAction, dest='add_subports',
+ action=parseractions.MultiKeyValueAction,
+ dest='add_subports',
optional_keys=['segmentation-id', 'segmentation-type'],
required_keys=['port'],
- help=_("Subport to add. Subport is of form "
- "\'port=<name or ID>,segmentation-type=<segmentation-type>,"
- "segmentation-id=<segmentation-ID>\' (--subport) option "
- "can be repeated")
+ help=_(
+ "Subport to add. Subport is of form "
+ "\'port=<name or ID>,segmentation-type=<segmentation-type>,"
+ "segmentation-id=<segmentation-ID>\' (--subport) option "
+ "can be repeated"
+ ),
)
admin_group = parser.add_mutually_exclusive_group()
admin_group.add_argument(
'--enable',
action='store_true',
default=True,
- help=_("Enable trunk (default)")
+ help=_("Enable trunk (default)"),
)
admin_group.add_argument(
- '--disable',
- action='store_true',
- help=_("Disable trunk")
+ '--disable', action='store_true', help=_("Disable trunk")
)
identity_utils.add_project_owner_option_to_parser(parser)
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
- attrs = _get_attrs_for_trunk(self.app.client_manager,
- parsed_args)
+ attrs = _get_attrs_for_trunk(self.app.client_manager, parsed_args)
obj = client.create_trunk(**attrs)
display_columns, columns = _get_columns(obj)
- data = osc_utils.get_dict_properties(obj, columns,
- formatters=_formatters)
+ data = osc_utils.get_dict_properties(
+ obj, columns, formatters=_formatters
+ )
return display_columns, data
@@ -106,7 +105,7 @@ class DeleteNetworkTrunk(command.Command):
'trunk',
metavar="<trunk>",
nargs="+",
- help=_("Trunk(s) to delete (name or ID)")
+ help=_("Trunk(s) to delete (name or ID)"),
)
return parser
@@ -119,13 +118,19 @@ class DeleteNetworkTrunk(command.Command):
client.delete_trunk(trunk_id)
except Exception as e:
result += 1
- LOG.error(_("Failed to delete trunk with name "
- "or ID '%(trunk)s': %(e)s"),
- {'trunk': trunk, 'e': e})
+ LOG.error(
+ _(
+ "Failed to delete trunk with name "
+ "or ID '%(trunk)s': %(e)s"
+ ),
+ {'trunk': trunk, 'e': e},
+ )
if result > 0:
total = len(parsed_args.trunk)
- msg = (_("%(result)s of %(total)s trunks failed "
- "to delete.") % {'result': result, 'total': total})
+ msg = _("%(result)s of %(total)s trunks failed " "to delete.") % {
+ 'result': result,
+ 'total': total,
+ }
raise exceptions.CommandError(msg)
@@ -138,25 +143,15 @@ class ListNetworkTrunk(command.Lister):
'--long',
action='store_true',
default=False,
- help=_("List additional fields in output")
+ help=_("List additional fields in output"),
)
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
data = client.trunks()
- headers = (
- 'ID',
- 'Name',
- 'Parent Port',
- 'Description'
- )
- columns = (
- 'id',
- 'name',
- 'port_id',
- 'description'
- )
+ headers = ('ID', 'Name', 'Parent Port', 'Description')
+ columns = ('id', 'name', 'port_id', 'description')
if parsed_args.long:
headers += (
'Status',
@@ -164,17 +159,18 @@ class ListNetworkTrunk(command.Lister):
'Created At',
'Updated At',
)
- columns += (
- 'status',
- 'admin_state_up',
- 'created_at',
- 'updated_at'
- )
- return (headers,
- (osc_utils.get_item_properties(
- s, columns,
+ columns += ('status', 'admin_state_up', 'created_at', 'updated_at')
+ return (
+ headers,
+ (
+ osc_utils.get_item_properties(
+ s,
+ columns,
formatters=_formatters,
- ) for s in data))
+ )
+ for s in data
+ ),
+ )
class SetNetworkTrunk(command.Command):
@@ -183,41 +179,36 @@ class SetNetworkTrunk(command.Command):
def get_parser(self, prog_name):
parser = super(SetNetworkTrunk, self).get_parser(prog_name)
parser.add_argument(
- 'trunk',
- metavar="<trunk>",
- help=_("Trunk to modify (name or ID)")
+ 'trunk', metavar="<trunk>", help=_("Trunk to modify (name or ID)")
)
parser.add_argument(
- '--name',
- metavar="<name>",
- help=_("Set trunk name")
+ '--name', metavar="<name>", help=_("Set trunk name")
)
parser.add_argument(
'--description',
metavar='<description>',
- help=_("A description of the trunk")
+ help=_("A description of the trunk"),
)
parser.add_argument(
'--subport',
metavar='<port=,segmentation-type=,segmentation-id=>',
- action=parseractions.MultiKeyValueAction, dest='set_subports',
+ action=parseractions.MultiKeyValueAction,
+ dest='set_subports',
optional_keys=['segmentation-id', 'segmentation-type'],
required_keys=['port'],
- help=_("Subport to add. Subport is of form "
- "\'port=<name or ID>,segmentation-type=<segmentation-type>"
- ",segmentation-id=<segmentation-ID>\' (--subport) option "
- "can be repeated")
+ help=_(
+ "Subport to add. Subport is of form "
+ "\'port=<name or ID>,segmentation-type=<segmentation-type>"
+ ",segmentation-id=<segmentation-ID>\' (--subport) option "
+ "can be repeated"
+ ),
)
admin_group = parser.add_mutually_exclusive_group()
admin_group.add_argument(
- '--enable',
- action='store_true',
- help=_("Enable trunk")
+ '--enable', action='store_true', help=_("Enable trunk")
)
admin_group.add_argument(
- '--disable',
- action='store_true',
- help=_("Disable trunk")
+ '--disable', action='store_true', help=_("Disable trunk")
)
return parser
@@ -228,28 +219,32 @@ class SetNetworkTrunk(command.Command):
try:
client.update_trunk(trunk_id, **attrs)
except Exception as e:
- msg = (_("Failed to set trunk '%(t)s': %(e)s")
- % {'t': parsed_args.trunk, 'e': e})
+ msg = _("Failed to set trunk '%(t)s': %(e)s") % {
+ 't': parsed_args.trunk,
+ 'e': e,
+ }
raise exceptions.CommandError(msg)
if parsed_args.set_subports:
- subport_attrs = _get_attrs_for_subports(self.app.client_manager,
- parsed_args)
+ subport_attrs = _get_attrs_for_subports(
+ self.app.client_manager, parsed_args
+ )
try:
client.add_trunk_subports(trunk_id, subport_attrs)
except Exception as e:
- msg = (_("Failed to add subports to trunk '%(t)s': %(e)s")
- % {'t': parsed_args.trunk, 'e': e})
+ msg = _("Failed to add subports to trunk '%(t)s': %(e)s") % {
+ 't': parsed_args.trunk,
+ 'e': e,
+ }
raise exceptions.CommandError(msg)
class ShowNetworkTrunk(command.ShowOne):
"""Show information of a given network trunk"""
+
def get_parser(self, prog_name):
parser = super(ShowNetworkTrunk, self).get_parser(prog_name)
parser.add_argument(
- 'trunk',
- metavar="<trunk>",
- help=_("Trunk to display (name or ID)")
+ 'trunk', metavar="<trunk>", help=_("Trunk to display (name or ID)")
)
return parser
@@ -258,8 +253,9 @@ class ShowNetworkTrunk(command.ShowOne):
trunk_id = client.find_trunk(parsed_args.trunk).id
obj = client.get_trunk(trunk_id)
display_columns, columns = _get_columns(obj)
- data = osc_utils.get_dict_properties(obj, columns,
- formatters=_formatters)
+ data = osc_utils.get_dict_properties(
+ obj, columns, formatters=_formatters
+ )
return display_columns, data
@@ -272,7 +268,7 @@ class ListNetworkSubport(command.Lister):
'--trunk',
required=True,
metavar="<trunk>",
- help=_("List subports belonging to this trunk (name or ID)")
+ help=_("List subports belonging to this trunk (name or ID)"),
)
return parser
@@ -282,10 +278,16 @@ class ListNetworkSubport(command.Lister):
data = client.get_trunk_subports(trunk_id)
headers = ('Port', 'Segmentation Type', 'Segmentation ID')
columns = ('port_id', 'segmentation_type', 'segmentation_id')
- return (headers,
- (osc_utils.get_dict_properties(
- s, columns,
- ) for s in data[SUB_PORTS]))
+ return (
+ headers,
+ (
+ osc_utils.get_dict_properties(
+ s,
+ columns,
+ )
+ for s in data[SUB_PORTS]
+ ),
+ )
class UnsetNetworkTrunk(command.Command):
@@ -296,15 +298,18 @@ class UnsetNetworkTrunk(command.Command):
parser.add_argument(
'trunk',
metavar="<trunk>",
- help=_("Unset subports from this trunk (name or ID)")
+ help=_("Unset subports from this trunk (name or ID)"),
)
parser.add_argument(
'--subport',
metavar="<subport>",
required=True,
- action='append', dest='unset_subports',
- help=_("Subport to delete (name or ID of the port) "
- "(--subport) option can be repeated")
+ action='append',
+ dest='unset_subports',
+ help=_(
+ "Subport to delete (name or ID of the port) "
+ "(--subport) option can be repeated"
+ ),
)
return parser
@@ -325,9 +330,7 @@ def _get_columns(item):
column_map = {}
hidden_columns = ['location', 'tenant_id']
return osc_utils.get_osc_show_columns_for_sdk_resource(
- item,
- column_map,
- hidden_columns
+ item, column_map, hidden_columns
)
@@ -342,12 +345,14 @@ def _get_attrs_for_trunk(client_manager, parsed_args):
if parsed_args.disable:
attrs['admin_state_up'] = False
if 'parent_port' in parsed_args and parsed_args.parent_port is not None:
- port_id = client_manager.network.find_port(
- parsed_args.parent_port)['id']
+ port_id = client_manager.network.find_port(parsed_args.parent_port)[
+ 'id'
+ ]
attrs['port_id'] = port_id
if 'add_subports' in parsed_args and parsed_args.add_subports is not None:
- attrs[SUB_PORTS] = _format_subports(client_manager,
- parsed_args.add_subports)
+ attrs[SUB_PORTS] = _format_subports(
+ client_manager, parsed_args.add_subports
+ )
# "trunk set" command doesn't support setting project.
if 'project' in parsed_args and parsed_args.project is not None:
@@ -372,10 +377,13 @@ def _format_subports(client_manager, subports):
if subport.get('segmentation-id'):
try:
subport_attrs['segmentation_id'] = int(
- subport['segmentation-id'])
+ subport['segmentation-id']
+ )
except ValueError:
- msg = (_("Segmentation-id '%s' is not an integer") %
- subport['segmentation-id'])
+ msg = (
+ _("Segmentation-id '%s' is not an integer")
+ % subport['segmentation-id']
+ )
raise exceptions.CommandError(msg)
if subport.get('segmentation-type'):
subport_attrs['segmentation_type'] = subport['segmentation-type']
@@ -386,10 +394,11 @@ def _format_subports(client_manager, subports):
def _get_attrs_for_subports(client_manager, parsed_args):
attrs = {}
if 'set_subports' in parsed_args and parsed_args.set_subports is not None:
- attrs = _format_subports(client_manager,
- parsed_args.set_subports)
- if ('unset_subports' in parsed_args and
- parsed_args.unset_subports is not None):
+ attrs = _format_subports(client_manager, parsed_args.set_subports)
+ if (
+ 'unset_subports' in parsed_args
+ and parsed_args.unset_subports is not None
+ ):
subports_list = []
for subport in parsed_args.unset_subports:
port_id = client_manager.network.find_port(subport)['id']
diff --git a/openstackclient/network/v2/port.py b/openstackclient/network/v2/port.py
index 8bf14d6a..814e82ab 100644
--- a/openstackclient/network/v2/port.py
+++ b/openstackclient/network/v2/port.py
@@ -66,9 +66,7 @@ def _get_columns(item):
}
hidden_columns = ['location', 'tenant_id']
return utils.get_osc_show_columns_for_sdk_resource(
- item,
- column_map,
- hidden_columns
+ item, column_map, hidden_columns
)
@@ -79,7 +77,6 @@ class JSONKeyValueAction(argparse.Action):
"""
def __call__(self, parser, namespace, values, option_string=None):
-
# Make sure we have an empty dict rather than None
if getattr(namespace, self.dest, None) is None:
setattr(namespace, self.dest, {})
@@ -92,9 +89,11 @@ class JSONKeyValueAction(argparse.Action):
if '=' in values:
current_dest.update([values.split('=', 1)])
else:
- msg = _("Expected '<key>=<value>' or JSON data for option "
- "%(option)s, but encountered JSON parsing error: "
- "%(error)s") % {"option": option_string, "error": e}
+ msg = _(
+ "Expected '<key>=<value>' or JSON data for option "
+ "%(option)s, but encountered JSON parsing error: "
+ "%(error)s"
+ ) % {"option": option_string, "error": e}
raise argparse.ArgumentTypeError(msg)
@@ -151,23 +150,33 @@ def _get_attrs(client_manager, parsed_args):
if parsed_args.qos_policy:
attrs['qos_policy_id'] = client_manager.network.find_qos_policy(
- parsed_args.qos_policy, ignore_missing=False).id
+ parsed_args.qos_policy, ignore_missing=False
+ ).id
- if ('enable_uplink_status_propagation' in parsed_args and
- parsed_args.enable_uplink_status_propagation):
+ if (
+ 'enable_uplink_status_propagation' in parsed_args
+ and parsed_args.enable_uplink_status_propagation
+ ):
attrs['propagate_uplink_status'] = True
- if ('disable_uplink_status_propagation' in parsed_args and
- parsed_args.disable_uplink_status_propagation):
+ if (
+ 'disable_uplink_status_propagation' in parsed_args
+ and parsed_args.disable_uplink_status_propagation
+ ):
attrs['propagate_uplink_status'] = False
- if ('numa_policy_required' in parsed_args and
- parsed_args.numa_policy_required):
+ if (
+ 'numa_policy_required' in parsed_args
+ and parsed_args.numa_policy_required
+ ):
attrs['numa_affinity_policy'] = 'required'
- elif ('numa_policy_preferred' in parsed_args and
- parsed_args.numa_policy_preferred):
+ elif (
+ 'numa_policy_preferred' in parsed_args
+ and parsed_args.numa_policy_preferred
+ ):
attrs['numa_affinity_policy'] = 'preferred'
- elif ('numa_policy_legacy' in parsed_args and
- parsed_args.numa_policy_legacy):
+ elif (
+ 'numa_policy_legacy' in parsed_args and parsed_args.numa_policy_legacy
+ ):
attrs['numa_affinity_policy'] = 'legacy'
if 'device_profile' in parsed_args and parsed_args.device_profile:
@@ -191,8 +200,9 @@ def _prepare_fixed_ips(client_manager, parsed_args):
if 'subnet' in ip_spec:
subnet_name_id = ip_spec['subnet']
if subnet_name_id:
- _subnet = client.find_subnet(subnet_name_id,
- ignore_missing=False)
+ _subnet = client.find_subnet(
+ subnet_name_id, ignore_missing=False
+ )
ip_spec['subnet_id'] = _subnet.id
del ip_spec['subnet']
@@ -220,8 +230,9 @@ def _prepare_filter_fixed_ips(client_manager, parsed_args):
if 'subnet' in ip_spec:
subnet_name_id = ip_spec['subnet']
if subnet_name_id:
- _subnet = client.find_subnet(subnet_name_id,
- ignore_missing=False)
+ _subnet = client.find_subnet(
+ subnet_name_id, ignore_missing=False
+ )
ips.append('subnet_id=%s' % _subnet.id)
if 'ip-address' in ip_spec:
@@ -236,30 +247,36 @@ def _add_updatable_args(parser):
parser.add_argument(
'--description',
metavar='<description>',
- help=_("Description of this port")
+ help=_("Description of this port"),
)
parser.add_argument(
- '--device',
- metavar='<device-id>',
- help=_("Port device ID")
+ '--device', metavar='<device-id>', help=_("Port device ID")
)
parser.add_argument(
'--mac-address',
metavar='<mac-address>',
- help=_("MAC address of this port (admin only)")
+ help=_("MAC address of this port (admin only)"),
)
parser.add_argument(
'--device-owner',
metavar='<device-owner>',
- help=_("Device owner of this port. This is the entity that uses "
- "the port (for example, network:dhcp).")
+ help=_(
+ "Device owner of this port. This is the entity that uses "
+ "the port (for example, network:dhcp)."
+ ),
)
parser.add_argument(
'--vnic-type',
metavar='<vnic-type>',
choices=(
- 'direct', 'direct-physical', 'macvtap',
- 'normal', 'baremetal', 'virtio-forwarder', 'vdpa', 'remote-managed'
+ 'direct',
+ 'direct-physical',
+ 'macvtap',
+ 'normal',
+ 'baremetal',
+ 'virtio-forwarder',
+ 'vdpa',
+ 'remote-managed',
),
help=_(
"VNIC type for this port (direct | direct-physical | "
@@ -271,35 +288,39 @@ def _add_updatable_args(parser):
parser.add_argument(
'--host',
metavar='<host-id>',
- help=_("Allocate port on host <host-id> (ID only)")
+ help=_("Allocate port on host <host-id> (ID only)"),
)
parser.add_argument(
'--dns-domain',
metavar='dns-domain',
- help=_("Set DNS domain to this port "
- "(requires dns_domain extension for ports)")
+ help=_(
+ "Set DNS domain to this port "
+ "(requires dns_domain extension for ports)"
+ ),
)
parser.add_argument(
'--dns-name',
metavar='<dns-name>',
- help=_("Set DNS name for this port "
- "(requires DNS integration extension)")
+ help=_(
+ "Set DNS name for this port "
+ "(requires DNS integration extension)"
+ ),
)
numa_affinity_policy_group = parser.add_mutually_exclusive_group()
numa_affinity_policy_group.add_argument(
'--numa-policy-required',
action='store_true',
- help=_("NUMA affinity policy required to schedule this port")
+ help=_("NUMA affinity policy required to schedule this port"),
)
numa_affinity_policy_group.add_argument(
'--numa-policy-preferred',
action='store_true',
- help=_("NUMA affinity policy preferred to schedule this port")
+ help=_("NUMA affinity policy preferred to schedule this port"),
)
numa_affinity_policy_group.add_argument(
'--numa-policy-legacy',
action='store_true',
- help=_("NUMA affinity policy using legacy mode to schedule this port")
+ help=_("NUMA affinity policy using legacy mode to schedule this port"),
)
@@ -339,7 +360,7 @@ class CreatePort(command.ShowOne, common.NeutronCommandWithExtraArgs):
'--network',
metavar='<network>',
required=True,
- help=_("Network this port belongs to (name or ID)")
+ help=_("Network this port belongs to (name or ID)"),
)
_add_updatable_args(parser)
fixed_ip = parser.add_mutually_exclusive_group()
@@ -348,56 +369,56 @@ class CreatePort(command.ShowOne, common.NeutronCommandWithExtraArgs):
metavar='subnet=<subnet>,ip-address=<ip-address>',
action=parseractions.MultiKeyValueAction,
optional_keys=['subnet', 'ip-address'],
- help=_("Desired IP and/or subnet for this port (name or ID): "
- "subnet=<subnet>,ip-address=<ip-address> "
- "(repeat option to set multiple fixed IP addresses)")
+ help=_(
+ "Desired IP and/or subnet for this port (name or ID): "
+ "subnet=<subnet>,ip-address=<ip-address> "
+ "(repeat option to set multiple fixed IP addresses)"
+ ),
)
fixed_ip.add_argument(
'--no-fixed-ip',
action='store_true',
- help=_("No IP or subnet for this port.")
+ help=_("No IP or subnet for this port."),
)
parser.add_argument(
'--binding-profile',
metavar='<binding-profile>',
action=JSONKeyValueAction,
- help=_("Custom data to be passed as binding:profile. Data may "
- "be passed as <key>=<value> or JSON. "
- "(repeat option to set multiple binding:profile data)")
+ help=_(
+ "Custom data to be passed as binding:profile. Data may "
+ "be passed as <key>=<value> or JSON. "
+ "(repeat option to set multiple binding:profile data)"
+ ),
)
admin_group = parser.add_mutually_exclusive_group()
admin_group.add_argument(
'--enable',
action='store_true',
default=True,
- help=_("Enable port (default)")
+ help=_("Enable port (default)"),
)
admin_group.add_argument(
- '--disable',
- action='store_true',
- help=_("Disable port")
+ '--disable', action='store_true', help=_("Disable port")
)
uplink_status_group = parser.add_mutually_exclusive_group()
uplink_status_group.add_argument(
'--enable-uplink-status-propagation',
action='store_true',
- help=_("Enable uplink status propagate")
+ help=_("Enable uplink status propagate"),
)
uplink_status_group.add_argument(
'--disable-uplink-status-propagation',
action='store_true',
- help=_("Disable uplink status propagate (default)")
+ help=_("Disable uplink status propagate (default)"),
)
parser.add_argument(
'--project',
metavar='<project>',
- help=_("Owner's project (name or ID)")
+ help=_("Owner's project (name or ID)"),
)
identity_common.add_project_domain_option_to_parser(parser)
parser.add_argument(
- 'name',
- metavar='<name>',
- help=_("Name of this port")
+ 'name', metavar='<name>', help=_("Name of this port")
)
parser.add_argument(
'--extra-dhcp-option',
@@ -407,9 +428,12 @@ class CreatePort(command.ShowOne, common.NeutronCommandWithExtraArgs):
dest='extra_dhcp_options',
required_keys=['name'],
optional_keys=['value', "ip-version"],
- help=_('Extra DHCP options to be assigned to this port: '
- 'name=<name>[,value=<value>,ip-version={4,6}] '
- '(repeat option to set multiple extra DHCP options)'))
+ help=_(
+ 'Extra DHCP options to be assigned to this port: '
+ 'name=<name>[,value=<value>,ip-version={4,6}] '
+ '(repeat option to set multiple extra DHCP options)'
+ ),
+ )
secgroups = parser.add_mutually_exclusive_group()
secgroups.add_argument(
@@ -417,30 +441,32 @@ class CreatePort(command.ShowOne, common.NeutronCommandWithExtraArgs):
metavar='<security-group>',
action='append',
dest='security_group',
- help=_("Security group to associate with this port (name or ID) "
- "(repeat option to set multiple security groups)")
+ help=_(
+ "Security group to associate with this port (name or ID) "
+ "(repeat option to set multiple security groups)"
+ ),
)
secgroups.add_argument(
'--no-security-group',
dest='no_security_group',
action='store_true',
- help=_("Associate no security groups with this port")
+ help=_("Associate no security groups with this port"),
)
parser.add_argument(
'--qos-policy',
metavar='<qos-policy>',
- help=_("Attach QoS policy to this port (name or ID)")
+ help=_("Attach QoS policy to this port (name or ID)"),
)
port_security = parser.add_mutually_exclusive_group()
port_security.add_argument(
'--enable-port-security',
action='store_true',
- help=_("Enable port security for this port (Default)")
+ help=_("Enable port security for this port (Default)"),
)
port_security.add_argument(
'--disable-port-security',
action='store_true',
- help=_("Disable port security for this port")
+ help=_("Disable port security for this port"),
)
parser.add_argument(
'--allowed-address',
@@ -449,22 +475,25 @@ class CreatePort(command.ShowOne, common.NeutronCommandWithExtraArgs):
dest='allowed_address_pairs',
required_keys=['ip-address'],
optional_keys=['mac-address'],
- help=_("Add allowed-address pair associated with this port: "
- "ip-address=<ip-address>[,mac-address=<mac-address>] "
- "(repeat option to set multiple allowed-address pairs)")
+ help=_(
+ "Add allowed-address pair associated with this port: "
+ "ip-address=<ip-address>[,mac-address=<mac-address>] "
+ "(repeat option to set multiple allowed-address pairs)"
+ ),
)
parser.add_argument(
'--device-profile',
metavar='<device-profile>',
- help=_('Cyborg port device profile')
+ help=_('Cyborg port device profile'),
)
_tag.add_tag_option_to_parser_for_create(parser, _('port'))
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
- _network = client.find_network(parsed_args.network,
- ignore_missing=False)
+ _network = client.find_network(
+ parsed_args.network, ignore_missing=False
+ )
parsed_args.network = _network.id
_prepare_fixed_ips(self.app.client_manager, parsed_args)
attrs = _get_attrs(self.app.client_manager, parsed_args)
@@ -478,26 +507,29 @@ class CreatePort(command.ShowOne, common.NeutronCommandWithExtraArgs):
attrs['fixed_ips'] = []
if parsed_args.security_group:
- attrs['security_group_ids'] = [client.find_security_group(
- sg, ignore_missing=False).id
- for sg in
- parsed_args.security_group]
+ attrs['security_group_ids'] = [
+ client.find_security_group(sg, ignore_missing=False).id
+ for sg in parsed_args.security_group
+ ]
elif parsed_args.no_security_group:
attrs['security_group_ids'] = []
if parsed_args.allowed_address_pairs:
- attrs['allowed_address_pairs'] = (
- _convert_address_pairs(parsed_args))
+ attrs['allowed_address_pairs'] = _convert_address_pairs(
+ parsed_args
+ )
if parsed_args.extra_dhcp_options:
attrs["extra_dhcp_opts"] = _convert_extra_dhcp_options(parsed_args)
if parsed_args.qos_policy:
attrs['qos_policy_id'] = client.find_qos_policy(
- parsed_args.qos_policy, ignore_missing=False).id
+ parsed_args.qos_policy, ignore_missing=False
+ ).id
set_tags_in_post = bool(
- client.find_extension('tag-ports-during-bulk-creation'))
+ client.find_extension('tag-ports-during-bulk-creation')
+ )
if set_tags_in_post:
if parsed_args.no_tag:
attrs['tags'] = []
@@ -505,10 +537,12 @@ class CreatePort(command.ShowOne, common.NeutronCommandWithExtraArgs):
attrs['tags'] = list(set(parsed_args.tags))
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
with common.check_missing_extension_if_error(
- self.app.client_manager.network, attrs):
+ self.app.client_manager.network, attrs
+ ):
obj = client.create_port(**attrs)
if not set_tags_in_post:
@@ -530,7 +564,7 @@ class DeletePort(command.Command):
'port',
metavar="<port>",
nargs="+",
- help=_("Port(s) to delete (name or ID)")
+ help=_("Port(s) to delete (name or ID)"),
)
return parser
@@ -544,14 +578,20 @@ class DeletePort(command.Command):
client.delete_port(obj)
except Exception as e:
result += 1
- LOG.error(_("Failed to delete port with "
- "name or ID '%(port)s': %(e)s"),
- {'port': port, 'e': e})
+ LOG.error(
+ _(
+ "Failed to delete port with "
+ "name or ID '%(port)s': %(e)s"
+ ),
+ {'port': port, 'e': e},
+ )
if result > 0:
total = len(parsed_args.port)
- msg = (_("%(result)s of %(total)s ports failed "
- "to delete.") % {'result': result, 'total': total})
+ msg = _("%(result)s of %(total)s ports failed " "to delete.") % {
+ 'result': result,
+ 'total': total,
+ }
raise exceptions.CommandError(msg)
@@ -565,24 +605,28 @@ class ListPort(command.Lister):
parser.add_argument(
'--device-owner',
metavar='<device-owner>',
- help=_("List only ports with the specified device owner. "
- "This is the entity that uses the port (for example, "
- "network:dhcp).")
+ help=_(
+ "List only ports with the specified device owner. "
+ "This is the entity that uses the port (for example, "
+ "network:dhcp)."
+ ),
)
parser.add_argument(
'--host',
metavar='<host-id>',
- help=_("List only ports bound to this host ID"))
+ help=_("List only ports bound to this host ID"),
+ )
parser.add_argument(
'--network',
metavar='<network>',
- help=_("List only ports connected to this network (name or ID)"))
+ help=_("List only ports connected to this network (name or ID)"),
+ )
device_group = parser.add_mutually_exclusive_group()
device_group.add_argument(
'--router',
metavar='<router>',
dest='router',
- help=_("List only ports attached to this router (name or ID)")
+ help=_("List only ports attached to this router (name or ID)"),
)
device_group.add_argument(
'--server',
@@ -592,47 +636,51 @@ class ListPort(command.Lister):
device_group.add_argument(
'--device-id',
metavar='<device-id>',
- help=_("List only ports with the specified device ID")
+ help=_("List only ports with the specified device ID"),
)
parser.add_argument(
'--mac-address',
metavar='<mac-address>',
- help=_("List only ports with this MAC address")
+ help=_("List only ports with this MAC address"),
)
parser.add_argument(
'--long',
action='store_true',
default=False,
- help=_("List additional fields in output")
+ help=_("List additional fields in output"),
)
parser.add_argument(
'--project',
metavar='<project>',
- help=_("List ports according to their project (name or ID)")
+ help=_("List ports according to their project (name or ID)"),
)
parser.add_argument(
'--name',
metavar='<name>',
- help=_("List ports according to their name")
+ help=_("List ports according to their name"),
)
parser.add_argument(
'--security-group',
action='append',
dest='security_groups',
metavar='<security-group>',
- help=_("List only ports associated with this security group")
+ help=_("List only ports associated with this security group"),
)
identity_common.add_project_domain_option_to_parser(parser)
parser.add_argument(
'--fixed-ip',
- metavar=('subnet=<subnet>,ip-address=<ip-address>,'
- 'ip-substring=<ip-substring>'),
+ metavar=(
+ 'subnet=<subnet>,ip-address=<ip-address>,'
+ 'ip-substring=<ip-substring>'
+ ),
action=parseractions.MultiKeyValueAction,
optional_keys=['subnet', 'ip-address', 'ip-substring'],
- help=_("Desired IP and/or subnet for filtering ports "
- "(name or ID): subnet=<subnet>,ip-address=<ip-address>,"
- "ip-substring=<ip-substring> "
- "(repeat option to set multiple fixed IP addresses)"),
+ help=_(
+ "Desired IP and/or subnet for filtering ports "
+ "(name or ID): subnet=<subnet>,ip-address=<ip-address>,"
+ "ip-substring=<ip-substring> "
+ "(repeat option to set multiple fixed IP addresses)"
+ ),
)
_tag.add_tag_filtering_option_to_parser(parser, _('ports'))
return parser
@@ -665,19 +713,22 @@ class ListPort(command.Lister):
if parsed_args.device_id is not None:
filters['device_id'] = parsed_args.device_id
if parsed_args.router:
- _router = network_client.find_router(parsed_args.router,
- ignore_missing=False)
+ _router = network_client.find_router(
+ parsed_args.router, ignore_missing=False
+ )
filters['device_id'] = _router.id
if parsed_args.server:
compute_client = self.app.client_manager.compute
- server = utils.find_resource(compute_client.servers,
- parsed_args.server)
+ server = utils.find_resource(
+ compute_client.servers, parsed_args.server
+ )
filters['device_id'] = server.id
if parsed_args.host:
filters['binding:host_id'] = parsed_args.host
if parsed_args.network:
- network = network_client.find_network(parsed_args.network,
- ignore_missing=False)
+ network = network_client.find_network(
+ parsed_args.network, ignore_missing=False
+ )
filters['network_id'] = network.id
if parsed_args.mac_address:
filters['mac_address'] = parsed_args.mac_address
@@ -692,7 +743,8 @@ class ListPort(command.Lister):
filters['name'] = parsed_args.name
if parsed_args.fixed_ip:
filters['fixed_ips'] = _prepare_filter_fixed_ips(
- self.app.client_manager, parsed_args)
+ self.app.client_manager, parsed_args
+ )
if parsed_args.security_groups:
filters['security_groups'] = parsed_args.security_groups
@@ -701,12 +753,19 @@ class ListPort(command.Lister):
data = network_client.ports(fields=columns, **filters)
headers, attrs = utils.calculate_header_and_attrs(
- column_headers, columns, parsed_args)
- return (headers,
- (utils.get_item_properties(
- s, attrs,
+ column_headers, columns, parsed_args
+ )
+ return (
+ headers,
+ (
+ utils.get_item_properties(
+ s,
+ attrs,
formatters=_formatters,
- ) for s in data))
+ )
+ for s in data
+ ),
+ )
# TODO(abhiraut): Use the SDK resource mapped attribute names once the
@@ -722,83 +781,87 @@ class SetPort(common.NeutronCommandWithExtraArgs):
'--enable',
action='store_true',
default=None,
- help=_("Enable port")
+ help=_("Enable port"),
)
admin_group.add_argument(
- '--disable',
- action='store_true',
- help=_("Disable port")
+ '--disable', action='store_true', help=_("Disable port")
)
parser.add_argument(
- '--name',
- metavar="<name>",
- help=_("Set port name")
+ '--name', metavar="<name>", help=_("Set port name")
)
parser.add_argument(
'--fixed-ip',
metavar='subnet=<subnet>,ip-address=<ip-address>',
action=parseractions.MultiKeyValueAction,
optional_keys=['subnet', 'ip-address'],
- help=_("Desired IP and/or subnet for this port (name or ID): "
- "subnet=<subnet>,ip-address=<ip-address> "
- "(repeat option to set multiple fixed IP addresses)")
+ help=_(
+ "Desired IP and/or subnet for this port (name or ID): "
+ "subnet=<subnet>,ip-address=<ip-address> "
+ "(repeat option to set multiple fixed IP addresses)"
+ ),
)
parser.add_argument(
'--no-fixed-ip',
action='store_true',
- help=_("Clear existing information of fixed IP addresses."
- "Specify both --fixed-ip and --no-fixed-ip "
- "to overwrite the current fixed IP addresses.")
+ help=_(
+ "Clear existing information of fixed IP addresses."
+ "Specify both --fixed-ip and --no-fixed-ip "
+ "to overwrite the current fixed IP addresses."
+ ),
)
parser.add_argument(
'--binding-profile',
metavar='<binding-profile>',
action=JSONKeyValueAction,
- help=_("Custom data to be passed as binding:profile. Data may "
- "be passed as <key>=<value> or JSON. "
- "(repeat option to set multiple binding:profile data)")
+ help=_(
+ "Custom data to be passed as binding:profile. Data may "
+ "be passed as <key>=<value> or JSON. "
+ "(repeat option to set multiple binding:profile data)"
+ ),
)
parser.add_argument(
'--no-binding-profile',
action='store_true',
- help=_("Clear existing information of binding:profile. "
- "Specify both --binding-profile and --no-binding-profile "
- "to overwrite the current binding:profile information.")
+ help=_(
+ "Clear existing information of binding:profile. "
+ "Specify both --binding-profile and --no-binding-profile "
+ "to overwrite the current binding:profile information."
+ ),
)
parser.add_argument(
'--qos-policy',
metavar='<qos-policy>',
- help=_("Attach QoS policy to this port (name or ID)")
+ help=_("Attach QoS policy to this port (name or ID)"),
)
parser.add_argument(
- 'port',
- metavar="<port>",
- help=_("Port to modify (name or ID)")
+ 'port', metavar="<port>", help=_("Port to modify (name or ID)")
)
parser.add_argument(
'--security-group',
metavar='<security-group>',
action='append',
dest='security_group',
- help=_("Security group to associate with this port (name or ID) "
- "(repeat option to set multiple security groups)")
+ help=_(
+ "Security group to associate with this port (name or ID) "
+ "(repeat option to set multiple security groups)"
+ ),
)
parser.add_argument(
'--no-security-group',
dest='no_security_group',
action='store_true',
- help=_("Clear existing security groups associated with this port")
+ help=_("Clear existing security groups associated with this port"),
)
port_security = parser.add_mutually_exclusive_group()
port_security.add_argument(
'--enable-port-security',
action='store_true',
- help=_("Enable port security for this port")
+ help=_("Enable port security for this port"),
)
port_security.add_argument(
'--disable-port-security',
action='store_true',
- help=_("Disable port security for this port")
+ help=_("Disable port security for this port"),
)
parser.add_argument(
'--allowed-address',
@@ -807,18 +870,22 @@ class SetPort(common.NeutronCommandWithExtraArgs):
dest='allowed_address_pairs',
required_keys=['ip-address'],
optional_keys=['mac-address'],
- help=_("Add allowed-address pair associated with this port: "
- "ip-address=<ip-address>[,mac-address=<mac-address>] "
- "(repeat option to set multiple allowed-address pairs)")
+ help=_(
+ "Add allowed-address pair associated with this port: "
+ "ip-address=<ip-address>[,mac-address=<mac-address>] "
+ "(repeat option to set multiple allowed-address pairs)"
+ ),
)
parser.add_argument(
'--no-allowed-address',
dest='no_allowed_address_pair',
action='store_true',
- help=_("Clear existing allowed-address pairs associated "
- "with this port. "
- "(Specify both --allowed-address and --no-allowed-address "
- "to overwrite the current allowed-address pairs)")
+ help=_(
+ "Clear existing allowed-address pairs associated "
+ "with this port. "
+ "(Specify both --allowed-address and --no-allowed-address "
+ "to overwrite the current allowed-address pairs)"
+ ),
)
parser.add_argument(
'--extra-dhcp-option',
@@ -828,16 +895,21 @@ class SetPort(common.NeutronCommandWithExtraArgs):
dest='extra_dhcp_options',
required_keys=['name'],
optional_keys=['value', "ip-version"],
- help=_('Extra DHCP options to be assigned to this port: '
- 'name=<name>[,value=<value>,ip-version={4,6}] '
- '(repeat option to set multiple extra DHCP options)'))
+ help=_(
+ 'Extra DHCP options to be assigned to this port: '
+ 'name=<name>[,value=<value>,ip-version={4,6}] '
+ '(repeat option to set multiple extra DHCP options)'
+ ),
+ )
parser.add_argument(
'--data-plane-status',
metavar='<status>',
choices=['ACTIVE', 'DOWN'],
- help=_("Set data plane status of this port (ACTIVE | DOWN). "
- "Unset it to None with the 'port unset' command "
- "(requires data plane status extension)")
+ help=_(
+ "Set data plane status of this port (ACTIVE | DOWN). "
+ "Unset it to None with the 'port unset' command "
+ "(requires data plane status extension)"
+ ),
)
_tag.add_tag_option_to_parser_for_set(parser, _('port'))
@@ -887,9 +959,9 @@ class SetPort(common.NeutronCommandWithExtraArgs):
attrs['allowed_address_pairs'] = []
if parsed_args.allowed_address_pairs:
if 'allowed_address_pairs' not in attrs:
- attrs['allowed_address_pairs'] = (
- [addr for addr in obj.allowed_address_pairs if addr]
- )
+ attrs['allowed_address_pairs'] = [
+ addr for addr in obj.allowed_address_pairs if addr
+ ]
attrs['allowed_address_pairs'].extend(
_convert_address_pairs(parsed_args)
)
@@ -901,11 +973,13 @@ class SetPort(common.NeutronCommandWithExtraArgs):
attrs['data_plane_status'] = parsed_args.data_plane_status
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
if attrs:
with common.check_missing_extension_if_error(
- self.app.client_manager.network, attrs):
+ self.app.client_manager.network, attrs
+ ):
client.update_port(obj, **attrs)
# tags is a subresource and it needs to be updated separately.
@@ -918,9 +992,7 @@ class ShowPort(command.ShowOne):
def get_parser(self, prog_name):
parser = super(ShowPort, self).get_parser(prog_name)
parser.add_argument(
- 'port',
- metavar="<port>",
- help=_("Port to display (name or ID)")
+ 'port', metavar="<port>", help=_("Port to display (name or ID)")
)
return parser
@@ -944,30 +1016,36 @@ class UnsetPort(common.NeutronUnsetCommandWithExtraArgs):
metavar='subnet=<subnet>,ip-address=<ip-address>',
action=parseractions.MultiKeyValueAction,
optional_keys=['subnet', 'ip-address'],
- help=_("Desired IP and/or subnet which should be "
- "removed from this port (name or ID): subnet=<subnet>,"
- "ip-address=<ip-address> (repeat option to unset multiple "
- "fixed IP addresses)"))
+ help=_(
+ "Desired IP and/or subnet which should be "
+ "removed from this port (name or ID): subnet=<subnet>,"
+ "ip-address=<ip-address> (repeat option to unset multiple "
+ "fixed IP addresses)"
+ ),
+ )
parser.add_argument(
'--binding-profile',
metavar='<binding-profile-key>',
action='append',
- help=_("Desired key which should be removed from binding:profile "
- "(repeat option to unset multiple binding:profile data)"))
+ help=_(
+ "Desired key which should be removed from binding:profile "
+ "(repeat option to unset multiple binding:profile data)"
+ ),
+ )
parser.add_argument(
'--security-group',
metavar='<security-group>',
action='append',
dest='security_group_ids',
- help=_("Security group which should be removed this port (name "
- "or ID) (repeat option to unset multiple security groups)")
+ help=_(
+ "Security group which should be removed this port (name "
+ "or ID) (repeat option to unset multiple security groups)"
+ ),
)
parser.add_argument(
- 'port',
- metavar="<port>",
- help=_("Port to modify (name or ID)")
+ 'port', metavar="<port>", help=_("Port to modify (name or ID)")
)
parser.add_argument(
'--allowed-address',
@@ -976,32 +1054,34 @@ class UnsetPort(common.NeutronUnsetCommandWithExtraArgs):
dest='allowed_address_pairs',
required_keys=['ip-address'],
optional_keys=['mac-address'],
- help=_("Desired allowed-address pair which should be removed "
- "from this port: ip-address=<ip-address>"
- "[,mac-address=<mac-address>] (repeat option to unset "
- "multiple allowed-address pairs)")
+ help=_(
+ "Desired allowed-address pair which should be removed "
+ "from this port: ip-address=<ip-address>"
+ "[,mac-address=<mac-address>] (repeat option to unset "
+ "multiple allowed-address pairs)"
+ ),
)
parser.add_argument(
'--qos-policy',
action='store_true',
default=False,
- help=_("Remove the QoS policy attached to the port")
+ help=_("Remove the QoS policy attached to the port"),
)
parser.add_argument(
'--data-plane-status',
action='store_true',
- help=_("Clear existing information of data plane status")
+ help=_("Clear existing information of data plane status"),
)
parser.add_argument(
'--numa-policy',
action='store_true',
- help=_("Clear existing NUMA affinity policy")
+ help=_("Clear existing NUMA affinity policy"),
)
parser.add_argument(
'--host',
action='store_true',
default=False,
- help=_("Clear host binding for the port.")
+ help=_("Clear host binding for the port."),
)
_tag.add_tag_option_to_parser_for_unset(parser, _('port'))
@@ -1040,7 +1120,8 @@ class UnsetPort(common.NeutronUnsetCommandWithExtraArgs):
try:
for sg in parsed_args.security_group_ids:
sg_id = client.find_security_group(
- sg, ignore_missing=False).id
+ sg, ignore_missing=False
+ ).id
tmp_secgroups.remove(sg_id)
except ValueError:
msg = _("Port does not contain security group %s") % sg
@@ -1064,7 +1145,8 @@ class UnsetPort(common.NeutronUnsetCommandWithExtraArgs):
attrs['binding:host_id'] = None
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
if attrs:
client.update_port(obj, **attrs)
diff --git a/openstackclient/network/v2/router.py b/openstackclient/network/v2/router.py
index 8302ee01..e601f98e 100644
--- a/openstackclient/network/v2/router.py
+++ b/openstackclient/network/v2/router.py
@@ -81,7 +81,8 @@ def _get_columns(item):
invisible_columns.append('is_distributed')
column_map.pop('is_distributed')
return utils.get_osc_show_columns_for_sdk_resource(
- item, column_map, invisible_columns)
+ item, column_map, invisible_columns
+ )
def _get_attrs(client_manager, parsed_args):
@@ -96,8 +97,10 @@ def _get_attrs(client_manager, parsed_args):
attrs['distributed'] = False
if parsed_args.distributed:
attrs['distributed'] = True
- if ('availability_zone_hints' in parsed_args and
- parsed_args.availability_zone_hints is not None):
+ if (
+ 'availability_zone_hints' in parsed_args
+ and parsed_args.availability_zone_hints is not None
+ ):
attrs['availability_zone_hints'] = parsed_args.availability_zone_hints
if parsed_args.description is not None:
attrs['description'] = parsed_args.description
@@ -114,7 +117,8 @@ def _get_attrs(client_manager, parsed_args):
gateway_info = {}
n_client = client_manager.network
network = n_client.find_network(
- parsed_args.external_gateway, ignore_missing=False)
+ parsed_args.external_gateway, ignore_missing=False
+ )
gateway_info['network_id'] = network.id
if parsed_args.disable_snat:
gateway_info['enable_snat'] = False
@@ -126,8 +130,9 @@ def _get_attrs(client_manager, parsed_args):
if ip_spec.get('subnet', False):
subnet_name_id = ip_spec.pop('subnet')
if subnet_name_id:
- subnet = n_client.find_subnet(subnet_name_id,
- ignore_missing=False)
+ subnet = n_client.find_subnet(
+ subnet_name_id, ignore_missing=False
+ )
ip_spec['subnet_id'] = subnet.id
if ip_spec.get('ip-address', False):
ip_spec['ip_address'] = ip_spec.pop('ip-address')
@@ -146,20 +151,20 @@ class AddPortToRouter(command.Command):
parser.add_argument(
'router',
metavar='<router>',
- help=_("Router to which port will be added (name or ID)")
+ help=_("Router to which port will be added (name or ID)"),
)
parser.add_argument(
- 'port',
- metavar='<port>',
- help=_("Port to be added (name or ID)")
+ 'port', metavar='<port>', help=_("Port to be added (name or ID)")
)
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
port = client.find_port(parsed_args.port, ignore_missing=False)
- client.add_interface_to_router(client.find_router(
- parsed_args.router, ignore_missing=False), port_id=port.id)
+ client.add_interface_to_router(
+ client.find_router(parsed_args.router, ignore_missing=False),
+ port_id=port.id,
+ )
class AddSubnetToRouter(command.Command):
@@ -170,23 +175,22 @@ class AddSubnetToRouter(command.Command):
parser.add_argument(
'router',
metavar='<router>',
- help=_("Router to which subnet will be added (name or ID)")
+ help=_("Router to which subnet will be added (name or ID)"),
)
parser.add_argument(
'subnet',
metavar='<subnet>',
- help=_("Subnet to be added (name or ID)")
+ help=_("Subnet to be added (name or ID)"),
)
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
- subnet = client.find_subnet(parsed_args.subnet,
- ignore_missing=False)
+ subnet = client.find_subnet(parsed_args.subnet, ignore_missing=False)
client.add_interface_to_router(
- client.find_router(parsed_args.router,
- ignore_missing=False),
- subnet_id=subnet.id)
+ client.find_router(parsed_args.router, ignore_missing=False),
+ subnet_id=subnet.id,
+ )
class AddExtraRoutesToRouter(command.ShowOne):
@@ -197,8 +201,10 @@ class AddExtraRoutesToRouter(command.ShowOne):
parser.add_argument(
'router',
metavar='<router>',
- help=_("Router to which extra static routes "
- "will be added (name or ID).")
+ help=_(
+ "Router to which extra static routes "
+ "will be added (name or ID)."
+ ),
)
parser.add_argument(
'--route',
@@ -207,14 +213,16 @@ class AddExtraRoutesToRouter(command.ShowOne):
dest='routes',
default=[],
required_keys=['destination', 'gateway'],
- help=_("Add extra static route to the router. "
- "destination: destination subnet (in CIDR notation), "
- "gateway: nexthop IP address. "
- "Repeat option to add multiple routes. "
- "Trying to add a route that's already present "
- "(exactly, including destination and nexthop) "
- "in the routing table is allowed and is considered "
- "a successful operation.")
+ help=_(
+ "Add extra static route to the router. "
+ "destination: destination subnet (in CIDR notation), "
+ "gateway: nexthop IP address. "
+ "Repeat option to add multiple routes. "
+ "Trying to add a route that's already present "
+ "(exactly, including destination and nexthop) "
+ "in the routing table is allowed and is considered "
+ "a successful operation."
+ ),
)
return parser
@@ -225,24 +233,29 @@ class AddExtraRoutesToRouter(command.ShowOne):
client = self.app.client_manager.network
router_obj = client.add_extra_routes_to_router(
client.find_router(parsed_args.router, ignore_missing=False),
- body={'router': {'routes': parsed_args.routes}})
+ body={'router': {'routes': parsed_args.routes}},
+ )
display_columns, columns = _get_columns(router_obj)
data = utils.get_item_properties(
- router_obj, columns, formatters=_formatters)
+ router_obj, columns, formatters=_formatters
+ )
return (display_columns, data)
class RemoveExtraRoutesFromRouter(command.ShowOne):
_description = _(
- "Remove extra static routes from a router's routing table.")
+ "Remove extra static routes from a router's routing table."
+ )
def get_parser(self, prog_name):
parser = super(RemoveExtraRoutesFromRouter, self).get_parser(prog_name)
parser.add_argument(
'router',
metavar='<router>',
- help=_("Router from which extra static routes "
- "will be removed (name or ID).")
+ help=_(
+ "Router from which extra static routes "
+ "will be removed (name or ID)."
+ ),
)
parser.add_argument(
'--route',
@@ -251,14 +264,16 @@ class RemoveExtraRoutesFromRouter(command.ShowOne):
dest='routes',
default=[],
required_keys=['destination', 'gateway'],
- help=_("Remove extra static route from the router. "
- "destination: destination subnet (in CIDR notation), "
- "gateway: nexthop IP address. "
- "Repeat option to remove multiple routes. "
- "Trying to remove a route that's already missing "
- "(fully, including destination and nexthop) "
- "from the routing table is allowed and is considered "
- "a successful operation.")
+ help=_(
+ "Remove extra static route from the router. "
+ "destination: destination subnet (in CIDR notation), "
+ "gateway: nexthop IP address. "
+ "Repeat option to remove multiple routes. "
+ "Trying to remove a route that's already missing "
+ "(fully, including destination and nexthop) "
+ "from the routing table is allowed and is considered "
+ "a successful operation."
+ ),
)
return parser
@@ -269,10 +284,12 @@ class RemoveExtraRoutesFromRouter(command.ShowOne):
client = self.app.client_manager.network
router_obj = client.remove_extra_routes_from_router(
client.find_router(parsed_args.router, ignore_missing=False),
- body={'router': {'routes': parsed_args.routes}})
+ body={'router': {'routes': parsed_args.routes}},
+ )
display_columns, columns = _get_columns(router_obj)
data = utils.get_item_properties(
- router_obj, columns, formatters=_formatters)
+ router_obj, columns, formatters=_formatters
+ )
return (display_columns, data)
@@ -284,53 +301,47 @@ class CreateRouter(command.ShowOne, common.NeutronCommandWithExtraArgs):
def get_parser(self, prog_name):
parser = super(CreateRouter, self).get_parser(prog_name)
parser.add_argument(
- 'name',
- metavar='<name>',
- help=_("New router name")
+ 'name', metavar='<name>', help=_("New router name")
)
admin_group = parser.add_mutually_exclusive_group()
admin_group.add_argument(
'--enable',
action='store_true',
default=True,
- help=_("Enable router (default)")
+ help=_("Enable router (default)"),
)
admin_group.add_argument(
- '--disable',
- action='store_true',
- help=_("Disable router")
+ '--disable', action='store_true', help=_("Disable router")
)
distribute_group = parser.add_mutually_exclusive_group()
distribute_group.add_argument(
'--distributed',
action='store_true',
- help=_("Create a distributed router")
+ help=_("Create a distributed router"),
)
distribute_group.add_argument(
'--centralized',
action='store_true',
- help=_("Create a centralized router")
+ help=_("Create a centralized router"),
)
ha_group = parser.add_mutually_exclusive_group()
ha_group.add_argument(
'--ha',
action='store_true',
- help=_("Create a highly available router")
+ help=_("Create a highly available router"),
)
ha_group.add_argument(
- '--no-ha',
- action='store_true',
- help=_("Create a legacy router")
+ '--no-ha', action='store_true', help=_("Create a legacy router")
)
parser.add_argument(
'--description',
metavar='<description>',
- help=_("Set router description")
+ help=_("Set router description"),
)
parser.add_argument(
'--project',
metavar='<project>',
- help=_("Owner's project (name or ID)")
+ help=_("Owner's project (name or ID)"),
)
identity_common.add_project_domain_option_to_parser(parser)
parser.add_argument(
@@ -338,36 +349,40 @@ class CreateRouter(command.ShowOne, common.NeutronCommandWithExtraArgs):
metavar='<availability-zone>',
action='append',
dest='availability_zone_hints',
- help=_("Availability Zone in which to create this router "
- "(Router Availability Zone extension required, "
- "repeat option to set multiple availability zones)")
+ help=_(
+ "Availability Zone in which to create this router "
+ "(Router Availability Zone extension required, "
+ "repeat option to set multiple availability zones)"
+ ),
)
_tag.add_tag_option_to_parser_for_create(parser, _('router'))
parser.add_argument(
'--external-gateway',
metavar="<network>",
- help=_("External Network used as router's gateway (name or ID)")
+ help=_("External Network used as router's gateway (name or ID)"),
)
parser.add_argument(
'--fixed-ip',
metavar='subnet=<subnet>,ip-address=<ip-address>',
action=parseractions.MultiKeyValueAction,
optional_keys=['subnet', 'ip-address'],
- help=_("Desired IP and/or subnet (name or ID) "
- "on external gateway: "
- "subnet=<subnet>,ip-address=<ip-address> "
- "(repeat option to set multiple fixed IP addresses)")
+ help=_(
+ "Desired IP and/or subnet (name or ID) "
+ "on external gateway: "
+ "subnet=<subnet>,ip-address=<ip-address> "
+ "(repeat option to set multiple fixed IP addresses)"
+ ),
)
snat_group = parser.add_mutually_exclusive_group()
snat_group.add_argument(
'--enable-snat',
action='store_true',
- help=_("Enable Source NAT on external gateway")
+ help=_("Enable Source NAT on external gateway"),
)
snat_group.add_argument(
'--disable-snat',
action='store_true',
- help=_("Disable Source NAT on external gateway")
+ help=_("Disable Source NAT on external gateway"),
)
ndp_proxy_group = parser.add_mutually_exclusive_group()
ndp_proxy_group.add_argument(
@@ -375,14 +390,14 @@ class CreateRouter(command.ShowOne, common.NeutronCommandWithExtraArgs):
dest='enable_ndp_proxy',
default=None,
action='store_true',
- help=_("Enable IPv6 NDP proxy on external gateway")
+ help=_("Enable IPv6 NDP proxy on external gateway"),
)
ndp_proxy_group.add_argument(
'--disable-ndp-proxy',
dest='enable_ndp_proxy',
default=None,
action='store_false',
- help=_("Disable IPv6 NDP proxy on external gateway")
+ help=_("Disable IPv6 NDP proxy on external gateway"),
)
return parser
@@ -396,11 +411,14 @@ class CreateRouter(command.ShowOne, common.NeutronCommandWithExtraArgs):
if parsed_args.no_ha:
attrs['ha'] = False
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
if parsed_args.enable_ndp_proxy and not parsed_args.external_gateway:
- msg = (_("You must specify '--external-gateway' in order "
- "to enable router's NDP proxy"))
+ msg = _(
+ "You must specify '--external-gateway' in order "
+ "to enable router's NDP proxy"
+ )
raise exceptions.CommandError(msg)
if parsed_args.enable_ndp_proxy is not None:
@@ -410,10 +428,15 @@ class CreateRouter(command.ShowOne, common.NeutronCommandWithExtraArgs):
# tags cannot be set when created, so tags need to be set later.
_tag.update_tags_for_set(client, obj, parsed_args)
- if (parsed_args.disable_snat or parsed_args.enable_snat or
- parsed_args.fixed_ip) and not parsed_args.external_gateway:
- msg = (_("You must specify '--external-gateway' in order "
- "to specify SNAT or fixed-ip values"))
+ if (
+ parsed_args.disable_snat
+ or parsed_args.enable_snat
+ or parsed_args.fixed_ip
+ ) and not parsed_args.external_gateway:
+ msg = _(
+ "You must specify '--external-gateway' in order "
+ "to specify SNAT or fixed-ip values"
+ )
raise exceptions.CommandError(msg)
display_columns, columns = _get_columns(obj)
@@ -431,7 +454,7 @@ class DeleteRouter(command.Command):
'router',
metavar="<router>",
nargs="+",
- help=_("Router(s) to delete (name or ID)")
+ help=_("Router(s) to delete (name or ID)"),
)
return parser
@@ -445,14 +468,20 @@ class DeleteRouter(command.Command):
client.delete_router(obj)
except Exception as e:
result += 1
- LOG.error(_("Failed to delete router with "
- "name or ID '%(router)s': %(e)s"),
- {'router': router, 'e': e})
+ LOG.error(
+ _(
+ "Failed to delete router with "
+ "name or ID '%(router)s': %(e)s"
+ ),
+ {'router': router, 'e': e},
+ )
if result > 0:
total = len(parsed_args.router)
- msg = (_("%(result)s of %(total)s routers failed "
- "to delete.") % {'result': result, 'total': total})
+ msg = _("%(result)s of %(total)s routers failed " "to delete.") % {
+ 'result': result,
+ 'total': total,
+ }
raise exceptions.CommandError(msg)
@@ -466,35 +495,31 @@ class ListRouter(command.Lister):
parser.add_argument(
'--name',
metavar='<name>',
- help=_("List routers according to their name")
+ help=_("List routers according to their name"),
)
admin_state_group = parser.add_mutually_exclusive_group()
admin_state_group.add_argument(
- '--enable',
- action='store_true',
- help=_("List enabled routers")
+ '--enable', action='store_true', help=_("List enabled routers")
)
admin_state_group.add_argument(
- '--disable',
- action='store_true',
- help=_("List disabled routers")
+ '--disable', action='store_true', help=_("List disabled routers")
)
parser.add_argument(
'--long',
action='store_true',
default=False,
- help=_("List additional fields in output")
+ help=_("List additional fields in output"),
)
parser.add_argument(
'--project',
metavar='<project>',
- help=_("List routers according to their project (name or ID)")
+ help=_("List routers according to their project (name or ID)"),
)
identity_common.add_project_domain_option_to_parser(parser)
parser.add_argument(
'--agent',
metavar='<agent-id>',
- help=_("List routers hosted by an agent (ID only)")
+ help=_("List routers hosted by an agent (ID only)"),
)
_tag.add_tag_filtering_option_to_parser(parser, _('routers'))
@@ -553,8 +578,10 @@ class ListRouter(command.Lister):
# check if "HA" and "Distributed" columns should be displayed also
data = list(data)
for d in data:
- if (d.is_distributed is not None and
- 'is_distributed' not in columns):
+ if (
+ d.is_distributed is not None
+ and 'is_distributed' not in columns
+ ):
columns = columns + ('is_distributed',)
column_headers = column_headers + ('Distributed',)
if d.is_ha is not None and 'is_ha' not in columns:
@@ -572,20 +599,22 @@ class ListRouter(command.Lister):
# availability zone will be available only when
# router_availability_zone extension is enabled
if client.find_extension("router_availability_zone"):
- columns = columns + (
- 'availability_zones',
- )
- column_headers = column_headers + (
- 'Availability zones',
- )
+ columns = columns + ('availability_zones',)
+ column_headers = column_headers + ('Availability zones',)
columns = columns + ('tags',)
column_headers = column_headers + ('Tags',)
- return (column_headers,
- (utils.get_item_properties(
- s, columns,
+ return (
+ column_headers,
+ (
+ utils.get_item_properties(
+ s,
+ columns,
formatters=_formatters,
- ) for s in data))
+ )
+ for s in data
+ ),
+ )
@staticmethod
def _filter_match(data, conditions):
@@ -610,20 +639,22 @@ class RemovePortFromRouter(command.Command):
parser.add_argument(
'router',
metavar='<router>',
- help=_("Router from which port will be removed (name or ID)")
+ help=_("Router from which port will be removed (name or ID)"),
)
parser.add_argument(
'port',
metavar='<port>',
- help=_("Port to be removed and deleted (name or ID)")
+ help=_("Port to be removed and deleted (name or ID)"),
)
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
port = client.find_port(parsed_args.port, ignore_missing=False)
- client.remove_interface_from_router(client.find_router(
- parsed_args.router, ignore_missing=False), port_id=port.id)
+ client.remove_interface_from_router(
+ client.find_router(parsed_args.router, ignore_missing=False),
+ port_id=port.id,
+ )
class RemoveSubnetFromRouter(command.Command):
@@ -634,23 +665,24 @@ class RemoveSubnetFromRouter(command.Command):
parser.add_argument(
'router',
metavar='<router>',
- help=_("Router from which the subnet will be removed (name or ID)")
+ help=_(
+ "Router from which the subnet will be removed (name or ID)"
+ ),
)
parser.add_argument(
'subnet',
metavar='<subnet>',
- help=_("Subnet to be removed (name or ID)")
+ help=_("Subnet to be removed (name or ID)"),
)
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
- subnet = client.find_subnet(parsed_args.subnet,
- ignore_missing=False)
+ subnet = client.find_subnet(parsed_args.subnet, ignore_missing=False)
client.remove_interface_from_router(
- client.find_router(parsed_args.router,
- ignore_missing=False),
- subnet_id=subnet.id)
+ client.find_router(parsed_args.router, ignore_missing=False),
+ subnet_id=subnet.id,
+ )
# TODO(yanxing'an): Use the SDK resource mapped attribute names once the
@@ -663,40 +695,36 @@ class SetRouter(common.NeutronCommandWithExtraArgs):
parser.add_argument(
'router',
metavar="<router>",
- help=_("Router to modify (name or ID)")
+ help=_("Router to modify (name or ID)"),
)
parser.add_argument(
- '--name',
- metavar='<name>',
- help=_("Set router name")
+ '--name', metavar='<name>', help=_("Set router name")
)
parser.add_argument(
'--description',
metavar='<description>',
- help=_('Set router description')
+ help=_('Set router description'),
)
admin_group = parser.add_mutually_exclusive_group()
admin_group.add_argument(
'--enable',
action='store_true',
default=None,
- help=_("Enable router")
+ help=_("Enable router"),
)
admin_group.add_argument(
- '--disable',
- action='store_true',
- help=_("Disable router")
+ '--disable', action='store_true', help=_("Disable router")
)
distribute_group = parser.add_mutually_exclusive_group()
distribute_group.add_argument(
'--distributed',
action='store_true',
- help=_("Set router to distributed mode (disabled router only)")
+ help=_("Set router to distributed mode (disabled router only)"),
)
distribute_group.add_argument(
'--centralized',
action='store_true',
- help=_("Set router to centralized mode (disabled router only)")
+ help=_("Set router to centralized mode (disabled router only)"),
)
parser.add_argument(
'--route',
@@ -705,60 +733,69 @@ class SetRouter(common.NeutronCommandWithExtraArgs):
dest='routes',
default=None,
required_keys=['destination', 'gateway'],
- help=_("Add routes to the router "
- "destination: destination subnet (in CIDR notation) "
- "gateway: nexthop IP address "
- "(repeat option to add multiple routes). "
- "This is deprecated in favor of 'router add/remove route' "
- "since it is prone to race conditions between concurrent "
- "clients when not used together with --no-route to "
- "overwrite the current value of 'routes'.")
+ help=_(
+ "Add routes to the router "
+ "destination: destination subnet (in CIDR notation) "
+ "gateway: nexthop IP address "
+ "(repeat option to add multiple routes). "
+ "This is deprecated in favor of 'router add/remove route' "
+ "since it is prone to race conditions between concurrent "
+ "clients when not used together with --no-route to "
+ "overwrite the current value of 'routes'."
+ ),
)
parser.add_argument(
'--no-route',
action='store_true',
- help=_("Clear routes associated with the router. "
- "Specify both --route and --no-route to overwrite "
- "current value of routes.")
+ help=_(
+ "Clear routes associated with the router. "
+ "Specify both --route and --no-route to overwrite "
+ "current value of routes."
+ ),
)
routes_ha = parser.add_mutually_exclusive_group()
routes_ha.add_argument(
'--ha',
action='store_true',
- help=_("Set the router as highly available "
- "(disabled router only)")
+ help=_(
+ "Set the router as highly available " "(disabled router only)"
+ ),
)
routes_ha.add_argument(
'--no-ha',
action='store_true',
- help=_("Clear high availability attribute of the router "
- "(disabled router only)")
+ help=_(
+ "Clear high availability attribute of the router "
+ "(disabled router only)"
+ ),
)
parser.add_argument(
'--external-gateway',
metavar="<network>",
- help=_("External Network used as router's gateway (name or ID)")
+ help=_("External Network used as router's gateway (name or ID)"),
)
parser.add_argument(
'--fixed-ip',
metavar='subnet=<subnet>,ip-address=<ip-address>',
action=parseractions.MultiKeyValueAction,
optional_keys=['subnet', 'ip-address'],
- help=_("Desired IP and/or subnet (name or ID) "
- "on external gateway: "
- "subnet=<subnet>,ip-address=<ip-address> "
- "(repeat option to set multiple fixed IP addresses)")
+ help=_(
+ "Desired IP and/or subnet (name or ID) "
+ "on external gateway: "
+ "subnet=<subnet>,ip-address=<ip-address> "
+ "(repeat option to set multiple fixed IP addresses)"
+ ),
)
snat_group = parser.add_mutually_exclusive_group()
snat_group.add_argument(
'--enable-snat',
action='store_true',
- help=_("Enable Source NAT on external gateway")
+ help=_("Enable Source NAT on external gateway"),
)
snat_group.add_argument(
'--disable-snat',
action='store_true',
- help=_("Disable Source NAT on external gateway")
+ help=_("Disable Source NAT on external gateway"),
)
ndp_proxy_group = parser.add_mutually_exclusive_group()
ndp_proxy_group.add_argument(
@@ -766,25 +803,25 @@ class SetRouter(common.NeutronCommandWithExtraArgs):
dest='enable_ndp_proxy',
default=None,
action='store_true',
- help=_("Enable IPv6 NDP proxy on external gateway")
+ help=_("Enable IPv6 NDP proxy on external gateway"),
)
ndp_proxy_group.add_argument(
'--disable-ndp-proxy',
dest='enable_ndp_proxy',
default=None,
action='store_false',
- help=_("Disable IPv6 NDP proxy on external gateway")
+ help=_("Disable IPv6 NDP proxy on external gateway"),
)
qos_policy_group = parser.add_mutually_exclusive_group()
qos_policy_group.add_argument(
'--qos-policy',
metavar='<qos-policy>',
- help=_("Attach QoS policy to router gateway IPs")
+ help=_("Attach QoS policy to router gateway IPs"),
)
qos_policy_group.add_argument(
'--no-qos-policy',
action='store_true',
- help=_("Remove QoS policy from router gateway IPs")
+ help=_("Remove QoS policy from router gateway IPs"),
)
_tag.add_tag_option_to_parser_for_set(parser, _('router'))
return parser
@@ -812,20 +849,28 @@ class SetRouter(common.NeutronCommandWithExtraArgs):
attrs['routes'] += obj.routes
elif parsed_args.no_route:
attrs['routes'] = []
- if (parsed_args.disable_snat or parsed_args.enable_snat or
- parsed_args.fixed_ip) and not parsed_args.external_gateway:
- msg = (_("You must specify '--external-gateway' in order "
- "to update the SNAT or fixed-ip values"))
+ if (
+ parsed_args.disable_snat
+ or parsed_args.enable_snat
+ or parsed_args.fixed_ip
+ ) and not parsed_args.external_gateway:
+ msg = _(
+ "You must specify '--external-gateway' in order "
+ "to update the SNAT or fixed-ip values"
+ )
raise exceptions.CommandError(msg)
- if ((parsed_args.qos_policy or parsed_args.no_qos_policy) and
- not parsed_args.external_gateway):
+ if (
+ parsed_args.qos_policy or parsed_args.no_qos_policy
+ ) and not parsed_args.external_gateway:
try:
original_net_id = obj.external_gateway_info['network_id']
except (KeyError, TypeError):
- msg = (_("You must specify '--external-gateway' or the router "
- "must already have an external network in order to "
- "set router gateway IP QoS"))
+ msg = _(
+ "You must specify '--external-gateway' or the router "
+ "must already have an external network in order to "
+ "set router gateway IP QoS"
+ )
raise exceptions.CommandError(msg)
else:
if not attrs.get('external_gateway_info'):
@@ -833,14 +878,16 @@ class SetRouter(common.NeutronCommandWithExtraArgs):
attrs['external_gateway_info']['network_id'] = original_net_id
if parsed_args.qos_policy:
check_qos_id = client.find_qos_policy(
- parsed_args.qos_policy, ignore_missing=False).id
+ parsed_args.qos_policy, ignore_missing=False
+ ).id
attrs['external_gateway_info']['qos_policy_id'] = check_qos_id
if 'no_qos_policy' in parsed_args and parsed_args.no_qos_policy:
attrs['external_gateway_info']['qos_policy_id'] = None
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
if parsed_args.enable_ndp_proxy is not None:
attrs['enable_ndp_proxy'] = parsed_args.enable_ndp_proxy
@@ -859,7 +906,7 @@ class ShowRouter(command.ShowOne):
parser.add_argument(
'router',
metavar="<router>",
- help=_("Router to display (name or ID)")
+ help=_("Router to display (name or ID)"),
)
return parser
@@ -875,7 +922,7 @@ class ShowRouter(command.ShowOne):
int_info = {
'port_id': port.id,
'ip_address': ip_spec.get('ip_address'),
- 'subnet_id': ip_spec.get('subnet_id')
+ 'subnet_id': ip_spec.get('subnet_id'),
}
interfaces_info.append(int_info)
@@ -899,25 +946,29 @@ class UnsetRouter(common.NeutronUnsetCommandWithExtraArgs):
dest='routes',
default=None,
required_keys=['destination', 'gateway'],
- help=_("Routes to be removed from the router "
- "destination: destination subnet (in CIDR notation) "
- "gateway: nexthop IP address "
- "(repeat option to unset multiple routes)"))
+ help=_(
+ "Routes to be removed from the router "
+ "destination: destination subnet (in CIDR notation) "
+ "gateway: nexthop IP address "
+ "(repeat option to unset multiple routes)"
+ ),
+ )
parser.add_argument(
'--external-gateway',
action='store_true',
default=False,
- help=_("Remove external gateway information from the router"))
+ help=_("Remove external gateway information from the router"),
+ )
parser.add_argument(
'--qos-policy',
action='store_true',
default=False,
- help=_("Remove QoS policy from router gateway IPs")
+ help=_("Remove QoS policy from router gateway IPs"),
)
parser.add_argument(
'router',
metavar="<router>",
- help=_("Router to modify (name or ID)")
+ help=_("Router to modify (name or ID)"),
)
_tag.add_tag_option_to_parser_for_unset(parser, _('router'))
return parser
@@ -934,13 +985,15 @@ class UnsetRouter(common.NeutronUnsetCommandWithExtraArgs):
route['nexthop'] = route.pop('gateway')
tmp_routes.remove(route)
except ValueError:
- msg = (_("Router does not contain route %s") % route)
+ msg = _("Router does not contain route %s") % route
raise exceptions.CommandError(msg)
attrs['routes'] = tmp_routes
if parsed_args.qos_policy:
try:
- if (tmp_external_gateway_info['network_id'] and
- tmp_external_gateway_info['qos_policy_id']):
+ if (
+ tmp_external_gateway_info['network_id']
+ and tmp_external_gateway_info['qos_policy_id']
+ ):
pass
except (KeyError, TypeError):
msg = _("Router does not have external network or qos policy")
@@ -948,14 +1001,15 @@ class UnsetRouter(common.NeutronUnsetCommandWithExtraArgs):
else:
attrs['external_gateway_info'] = {
'network_id': tmp_external_gateway_info['network_id'],
- 'qos_policy_id': None
+ 'qos_policy_id': None,
}
if parsed_args.external_gateway:
attrs['external_gateway_info'] = {}
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
if attrs:
client.update_router(obj, **attrs)
diff --git a/openstackclient/network/v2/security_group.py b/openstackclient/network/v2/security_group.py
index ffad9988..6de9cad3 100644
--- a/openstackclient/network/v2/security_group.py
+++ b/openstackclient/network/v2/security_group.py
@@ -92,28 +92,25 @@ def _get_columns(item):
}
hidden_columns = ['location']
return utils.get_osc_show_columns_for_sdk_resource(
- item,
- column_map,
- hidden_columns
+ item, column_map, hidden_columns
)
# TODO(abhiraut): Use the SDK resource mapped attribute names once the
# OSC minimum requirements include SDK 1.0.
-class CreateSecurityGroup(common.NetworkAndComputeShowOne,
- common.NeutronCommandWithExtraArgs):
+class CreateSecurityGroup(
+ common.NetworkAndComputeShowOne, common.NeutronCommandWithExtraArgs
+):
_description = _("Create a new security group")
def update_parser_common(self, parser):
parser.add_argument(
- "name",
- metavar="<name>",
- help=_("New security group name")
+ "name", metavar="<name>", help=_("New security group name")
)
parser.add_argument(
"--description",
metavar="<description>",
- help=_("Security group description")
+ help=_("Security group description"),
)
return parser
@@ -121,26 +118,27 @@ class CreateSecurityGroup(common.NetworkAndComputeShowOne,
parser.add_argument(
'--project',
metavar='<project>',
- help=self.enhance_help_neutron(_("Owner's project (name or ID)"))
+ help=self.enhance_help_neutron(_("Owner's project (name or ID)")),
)
stateful_group = parser.add_mutually_exclusive_group()
stateful_group.add_argument(
"--stateful",
action='store_true',
default=None,
- help=_("Security group is stateful (Default)")
+ help=_("Security group is stateful (Default)"),
)
stateful_group.add_argument(
"--stateless",
action='store_true',
default=None,
- help=_("Security group is stateless")
+ help=_("Security group is stateless"),
)
identity_common.add_project_domain_option_to_parser(
- parser, enhance_help=self.enhance_help_neutron)
+ parser, enhance_help=self.enhance_help_neutron
+ )
_tag.add_tag_option_to_parser_for_create(
- parser, _('security group'),
- enhance_help=self.enhance_help_neutron)
+ parser, _('security group'), enhance_help=self.enhance_help_neutron
+ )
return parser
def _get_description(self, parsed_args):
@@ -167,7 +165,8 @@ class CreateSecurityGroup(common.NetworkAndComputeShowOne,
).id
attrs['project_id'] = project_id
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
# Create the security group and display the results.
obj = client.create_security_group(**attrs)
@@ -175,9 +174,7 @@ class CreateSecurityGroup(common.NetworkAndComputeShowOne,
_tag.update_tags_for_set(client, obj, parsed_args)
display_columns, property_columns = _get_columns(obj)
data = utils.get_item_properties(
- obj,
- property_columns,
- formatters=_formatters_network
+ obj, property_columns, formatters=_formatters_network
)
return (display_columns, data)
@@ -189,9 +186,7 @@ class CreateSecurityGroup(common.NetworkAndComputeShowOne,
)
display_columns, property_columns = _get_columns(obj)
data = utils.get_dict_properties(
- obj,
- property_columns,
- formatters=_formatters_compute
+ obj, property_columns, formatters=_formatters_compute
)
return (display_columns, data)
@@ -241,14 +236,18 @@ class ListSecurityGroup(common.NetworkAndComputeLister):
'--project',
metavar='<project>',
help=self.enhance_help_neutron(
- _("List security groups according to the project (name or "
- "ID)"))
+ _(
+ "List security groups according to the project (name or "
+ "ID)"
+ )
+ ),
)
identity_common.add_project_domain_option_to_parser(
- parser, enhance_help=self.enhance_help_neutron)
+ parser, enhance_help=self.enhance_help_neutron
+ )
_tag.add_tag_filtering_option_to_parser(
- parser, _('security group'),
- enhance_help=self.enhance_help_neutron)
+ parser, _('security group'), enhance_help=self.enhance_help_neutron
+ )
return parser
def update_parser_compute(self, parser):
@@ -257,7 +256,8 @@ class ListSecurityGroup(common.NetworkAndComputeLister):
action='store_true',
default=False,
help=self.enhance_help_nova_network(
- _("Display information from all projects (admin only)"))
+ _("Display information from all projects (admin only)")
+ ),
)
return parser
@@ -273,27 +273,22 @@ class ListSecurityGroup(common.NetworkAndComputeLister):
filters['project_id'] = project_id
_tag.get_tag_filtering_args(parsed_args, filters)
- data = client.security_groups(fields=self.FIELDS_TO_RETRIEVE,
- **filters)
-
- columns = (
- "ID",
- "Name",
- "Description",
- "Project ID",
- "tags"
+ data = client.security_groups(
+ fields=self.FIELDS_TO_RETRIEVE, **filters
)
- column_headers = (
- "ID",
- "Name",
- "Description",
- "Project",
- "Tags"
+
+ columns = ("ID", "Name", "Description", "Project ID", "tags")
+ column_headers = ("ID", "Name", "Description", "Project", "Tags")
+ return (
+ column_headers,
+ (
+ utils.get_item_properties(
+ s,
+ columns,
+ )
+ for s in data
+ ),
)
- return (column_headers,
- (utils.get_item_properties(
- s, columns,
- ) for s in data))
def take_action_compute(self, client, parsed_args):
search = {'all_tenants': parsed_args.all_projects}
@@ -311,56 +306,62 @@ class ListSecurityGroup(common.NetworkAndComputeLister):
if parsed_args.all_projects:
columns = columns + ('Tenant ID',)
column_headers = column_headers + ('Project',)
- return (column_headers,
- (utils.get_dict_properties(
- s, columns,
- ) for s in data))
+ return (
+ column_headers,
+ (
+ utils.get_dict_properties(
+ s,
+ columns,
+ )
+ for s in data
+ ),
+ )
-class SetSecurityGroup(common.NetworkAndComputeCommand,
- common.NeutronCommandWithExtraArgs):
+class SetSecurityGroup(
+ common.NetworkAndComputeCommand, common.NeutronCommandWithExtraArgs
+):
_description = _("Set security group properties")
def update_parser_common(self, parser):
parser.add_argument(
'group',
metavar='<group>',
- help=_("Security group to modify (name or ID)")
+ help=_("Security group to modify (name or ID)"),
)
parser.add_argument(
- '--name',
- metavar='<new-name>',
- help=_("New security group name")
+ '--name', metavar='<new-name>', help=_("New security group name")
)
parser.add_argument(
"--description",
metavar="<description>",
- help=_("New security group description")
+ help=_("New security group description"),
)
stateful_group = parser.add_mutually_exclusive_group()
stateful_group.add_argument(
"--stateful",
action='store_true',
default=None,
- help=_("Security group is stateful (Default)")
+ help=_("Security group is stateful (Default)"),
)
stateful_group.add_argument(
"--stateless",
action='store_true',
default=None,
- help=_("Security group is stateless")
+ help=_("Security group is stateless"),
)
return parser
def update_parser_network(self, parser):
_tag.add_tag_option_to_parser_for_set(
- parser, _('security group'),
- enhance_help=self.enhance_help_neutron)
+ parser, _('security group'), enhance_help=self.enhance_help_neutron
+ )
return parser
def take_action_network(self, client, parsed_args):
- obj = client.find_security_group(parsed_args.group,
- ignore_missing=False)
+ obj = client.find_security_group(
+ parsed_args.group, ignore_missing=False
+ )
attrs = {}
if parsed_args.name is not None:
attrs['name'] = parsed_args.name
@@ -371,7 +372,8 @@ class SetSecurityGroup(common.NetworkAndComputeCommand,
if parsed_args.stateless:
attrs['stateful'] = False
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
# NOTE(rtheis): Previous behavior did not raise a CommandError
# if there were no updates. Maintain this behavior and issue
# the update.
@@ -405,18 +407,17 @@ class ShowSecurityGroup(common.NetworkAndComputeShowOne):
parser.add_argument(
'group',
metavar='<group>',
- help=_("Security group to display (name or ID)")
+ help=_("Security group to display (name or ID)"),
)
return parser
def take_action_network(self, client, parsed_args):
- obj = client.find_security_group(parsed_args.group,
- ignore_missing=False)
+ obj = client.find_security_group(
+ parsed_args.group, ignore_missing=False
+ )
display_columns, property_columns = _get_columns(obj)
data = utils.get_item_properties(
- obj,
- property_columns,
- formatters=_formatters_network
+ obj, property_columns, formatters=_formatters_network
)
return (display_columns, data)
@@ -424,9 +425,7 @@ class ShowSecurityGroup(common.NetworkAndComputeShowOne):
obj = client.api.security_group_find(parsed_args.group)
display_columns, property_columns = _get_columns(obj)
data = utils.get_dict_properties(
- obj,
- property_columns,
- formatters=_formatters_compute
+ obj, property_columns, formatters=_formatters_compute
)
return (display_columns, data)
@@ -439,15 +438,16 @@ class UnsetSecurityGroup(command.Command):
parser.add_argument(
'group',
metavar="<group>",
- help=_("Security group to modify (name or ID)")
+ help=_("Security group to modify (name or ID)"),
)
_tag.add_tag_option_to_parser_for_unset(parser, _('security group'))
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
- obj = client.find_security_group(parsed_args.group,
- ignore_missing=False)
+ obj = client.find_security_group(
+ parsed_args.group, ignore_missing=False
+ )
# tags is a subresource and it needs to be updated separately.
_tag.update_tags_for_unset(client, obj, parsed_args)
diff --git a/openstackclient/network/v2/security_group_rule.py b/openstackclient/network/v2/security_group_rule.py
index 2179f33d..24a1fcfb 100644
--- a/openstackclient/network/v2/security_group_rule.py
+++ b/openstackclient/network/v2/security_group_rule.py
@@ -74,9 +74,7 @@ def _get_columns(item):
column_map = {}
hidden_columns = ['location', 'tenant_id']
return utils.get_osc_show_columns_for_sdk_resource(
- item,
- column_map,
- hidden_columns
+ item, column_map, hidden_columns
)
@@ -105,23 +103,26 @@ def _is_icmp_protocol(protocol):
# TODO(abhiraut): Use the SDK resource mapped attribute names once the
# OSC minimum requirements include SDK 1.0.
-class CreateSecurityGroupRule(common.NetworkAndComputeShowOne,
- common.NeutronCommandWithExtraArgs):
+class CreateSecurityGroupRule(
+ common.NetworkAndComputeShowOne, common.NeutronCommandWithExtraArgs
+):
_description = _("Create a new security group rule")
def update_parser_common(self, parser):
parser.add_argument(
'group',
metavar='<group>',
- help=_("Create rule in this security group (name or ID)")
+ help=_("Create rule in this security group (name or ID)"),
)
remote_group = parser.add_mutually_exclusive_group()
remote_group.add_argument(
"--remote-ip",
metavar="<ip-address>",
- help=_("Remote IP address block (may use CIDR notation; "
- "default for IPv4 rule: 0.0.0.0/0, "
- "default for IPv6 rule: ::/0)"),
+ help=_(
+ "Remote IP address block (may use CIDR notation; "
+ "default for IPv4 rule: 0.0.0.0/0, "
+ "default for IPv6 rule: ::/0)"
+ ),
)
remote_group.add_argument(
"--remote-group",
@@ -150,9 +151,11 @@ class CreateSecurityGroupRule(common.NetworkAndComputeShowOne,
'--dst-port',
metavar='<port-range>',
action=parseractions.RangeAction,
- help=_("Destination port, may be a single port or a starting and "
- "ending port range: 137:139. Required for IP protocols TCP "
- "and UDP. Ignored for ICMP IP protocols."),
+ help=_(
+ "Destination port, may be a single port or a starting and "
+ "ending port range: 137:139. Required for IP protocols TCP "
+ "and UDP. Ignored for ICMP IP protocols."
+ ),
**dst_port_default
)
@@ -170,7 +173,8 @@ class CreateSecurityGroupRule(common.NetworkAndComputeShowOne,
"IP protocol (ah, dccp, egp, esp, gre, icmp, igmp, ipv6-encap, "
"ipv6-frag, ipv6-icmp, ipv6-nonxt, ipv6-opts, ipv6-route, ospf, "
"pgm, rsvp, sctp, tcp, udp, udplite, vrrp and integer "
- "representations [0-255] or any; default: any (all protocols))")
+ "representations [0-255] or any; default: any (all protocols))"
+ )
if self.is_nova_network:
protocol_help = protocol_help_compute
elif self.is_neutron:
@@ -178,7 +182,8 @@ class CreateSecurityGroupRule(common.NetworkAndComputeShowOne,
else:
# Docs build: compose help for both nova-network and neutron
protocol_help = self.split_help(
- protocol_help_network, protocol_help_compute)
+ protocol_help_network, protocol_help_compute
+ )
protocol_group.add_argument(
'--protocol',
@@ -203,34 +208,39 @@ class CreateSecurityGroupRule(common.NetworkAndComputeShowOne,
'--description',
metavar='<description>',
help=self.enhance_help_neutron(
- _("Set security group rule description"))
+ _("Set security group rule description")
+ ),
)
parser.add_argument(
'--icmp-type',
metavar='<icmp-type>',
type=int,
help=self.enhance_help_neutron(
- _("ICMP type for ICMP IP protocols"))
+ _("ICMP type for ICMP IP protocols")
+ ),
)
parser.add_argument(
'--icmp-code',
metavar='<icmp-code>',
type=int,
help=self.enhance_help_neutron(
- _("ICMP code for ICMP IP protocols"))
+ _("ICMP code for ICMP IP protocols")
+ ),
)
direction_group = parser.add_mutually_exclusive_group()
direction_group.add_argument(
'--ingress',
action='store_true',
help=self.enhance_help_neutron(
- _("Rule applies to incoming network traffic (default)"))
+ _("Rule applies to incoming network traffic (default)")
+ ),
)
direction_group.add_argument(
'--egress',
action='store_true',
help=self.enhance_help_neutron(
- _("Rule applies to outgoing network traffic"))
+ _("Rule applies to outgoing network traffic")
+ ),
)
parser.add_argument(
'--ethertype',
@@ -238,16 +248,20 @@ class CreateSecurityGroupRule(common.NetworkAndComputeShowOne,
choices=['IPv4', 'IPv6'],
type=_convert_ipvx_case,
help=self.enhance_help_neutron(
- _("Ethertype of network traffic "
- "(IPv4, IPv6; default: based on IP protocol)"))
+ _(
+ "Ethertype of network traffic "
+ "(IPv4, IPv6; default: based on IP protocol)"
+ )
+ ),
)
parser.add_argument(
'--project',
metavar='<project>',
- help=self.enhance_help_neutron(_("Owner's project (name or ID)"))
+ help=self.enhance_help_neutron(_("Owner's project (name or ID)")),
)
identity_common.add_project_domain_option_to_parser(
- parser, enhance_help=self.enhance_help_neutron)
+ parser, enhance_help=self.enhance_help_neutron
+ )
return parser
def _get_protocol(self, parsed_args, default_protocol='any'):
@@ -273,8 +287,11 @@ class CreateSecurityGroupRule(common.NetworkAndComputeShowOne,
# However, while the OSC CLI doesn't document the protocol,
# the code must still handle it. In addition, handle both
# protocol names and numbers.
- if (protocol is not None and protocol.startswith('ipv6-') or
- protocol in ['icmpv6', '41', '43', '44', '58', '59', '60']):
+ if (
+ protocol is not None
+ and protocol.startswith('ipv6-')
+ or protocol in ['icmpv6', '41', '43', '44', '58', '59', '60']
+ ):
return True
else:
return False
@@ -282,8 +299,7 @@ class CreateSecurityGroupRule(common.NetworkAndComputeShowOne,
def take_action_network(self, client, parsed_args):
# Get the security group ID to hold the rule.
security_group_id = client.find_security_group(
- parsed_args.group,
- ignore_missing=False
+ parsed_args.group, ignore_missing=False
).id
# Build the create attributes.
@@ -302,24 +318,31 @@ class CreateSecurityGroupRule(common.NetworkAndComputeShowOne,
# NOTE(rtheis): Use ethertype specified else default based
# on IP protocol.
- attrs['ethertype'] = self._get_ethertype(parsed_args,
- attrs['protocol'])
+ attrs['ethertype'] = self._get_ethertype(
+ parsed_args, attrs['protocol']
+ )
# NOTE(rtheis): Validate the port range and ICMP type and code.
# It would be ideal if argparse could do this.
- if parsed_args.dst_port and (parsed_args.icmp_type or
- parsed_args.icmp_code):
- msg = _('Argument --dst-port not allowed with arguments '
- '--icmp-type and --icmp-code')
+ if parsed_args.dst_port and (
+ parsed_args.icmp_type or parsed_args.icmp_code
+ ):
+ msg = _(
+ 'Argument --dst-port not allowed with arguments '
+ '--icmp-type and --icmp-code'
+ )
raise exceptions.CommandError(msg)
if parsed_args.icmp_type is None and parsed_args.icmp_code is not None:
msg = _('Argument --icmp-type required with argument --icmp-code')
raise exceptions.CommandError(msg)
is_icmp_protocol = _is_icmp_protocol(attrs['protocol'])
- if not is_icmp_protocol and (parsed_args.icmp_type or
- parsed_args.icmp_code):
- msg = _('ICMP IP protocol required with arguments '
- '--icmp-type and --icmp-code')
+ if not is_icmp_protocol and (
+ parsed_args.icmp_type or parsed_args.icmp_code
+ ):
+ msg = _(
+ 'ICMP IP protocol required with arguments '
+ '--icmp-type and --icmp-code'
+ )
raise exceptions.CommandError(msg)
# NOTE(rtheis): For backwards compatibility, continue ignoring
# the destination port range when an ICMP IP protocol is specified.
@@ -333,13 +356,11 @@ class CreateSecurityGroupRule(common.NetworkAndComputeShowOne,
if parsed_args.remote_group is not None:
attrs['remote_group_id'] = client.find_security_group(
- parsed_args.remote_group,
- ignore_missing=False
+ parsed_args.remote_group, ignore_missing=False
).id
elif parsed_args.remote_address_group is not None:
attrs['remote_address_group_id'] = client.find_address_group(
- parsed_args.remote_address_group,
- ignore_missing=False
+ parsed_args.remote_address_group, ignore_missing=False
).id
elif parsed_args.remote_ip is not None:
attrs['remote_ip_prefix'] = parsed_args.remote_ip
@@ -358,7 +379,8 @@ class CreateSecurityGroupRule(common.NetworkAndComputeShowOne,
attrs['project_id'] = project_id
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
# Create and show the security group rule.
obj = client.create_security_group_rule(**attrs)
@@ -407,13 +429,12 @@ class DeleteSecurityGroupRule(common.NetworkAndComputeDelete):
'rule',
metavar='<rule>',
nargs="+",
- help=_("Security group rule(s) to delete (ID only)")
+ help=_("Security group rule(s) to delete (ID only)"),
)
return parser
def take_action_network(self, client, parsed_args):
- obj = client.find_security_group_rule(
- self.r, ignore_missing=False)
+ obj = client.find_security_group_rule(self.r, ignore_missing=False)
client.delete_security_group_rule(obj)
def take_action_compute(self, client, parsed_args):
@@ -439,7 +460,7 @@ class ListSecurityGroupRule(common.NetworkAndComputeLister):
'group',
metavar='<group>',
nargs='?',
- help=_("List all rules in this security group (name or ID)")
+ help=_("List all rules in this security group (name or ID)"),
)
return parser
@@ -451,7 +472,7 @@ class ListSecurityGroupRule(common.NetworkAndComputeLister):
'--all-projects',
action='store_true',
default=False,
- help=argparse.SUPPRESS
+ help=argparse.SUPPRESS,
)
parser.add_argument(
@@ -459,38 +480,46 @@ class ListSecurityGroupRule(common.NetworkAndComputeLister):
metavar='<protocol>',
type=_convert_to_lowercase,
help=self.enhance_help_neutron(
- _("List rules by the IP protocol (ah, dhcp, egp, esp, gre, "
- "icmp, igmp, ipv6-encap, ipv6-frag, ipv6-icmp, ipv6-nonxt, "
- "ipv6-opts, ipv6-route, ospf, pgm, rsvp, sctp, tcp, udp, "
- "udplite, vrrp and integer representations [0-255] or any; "
- "default: any (all protocols))"))
+ _(
+ "List rules by the IP protocol (ah, dhcp, egp, esp, gre, "
+ "icmp, igmp, ipv6-encap, ipv6-frag, ipv6-icmp, "
+ "ipv6-nonxt, ipv6-opts, ipv6-route, ospf, pgm, rsvp, "
+ "sctp, tcp, udp, udplite, vrrp and integer "
+ "representations [0-255] or any; "
+ "default: any (all protocols))"
+ )
+ ),
)
parser.add_argument(
'--ethertype',
metavar='<ethertype>',
type=_convert_to_lowercase,
help=self.enhance_help_neutron(
- _("List rules by the Ethertype (IPv4 or IPv6)"))
+ _("List rules by the Ethertype (IPv4 or IPv6)")
+ ),
)
direction_group = parser.add_mutually_exclusive_group()
direction_group.add_argument(
'--ingress',
action='store_true',
help=self.enhance_help_neutron(
- _("List rules applied to incoming network traffic"))
+ _("List rules applied to incoming network traffic")
+ ),
)
direction_group.add_argument(
'--egress',
action='store_true',
help=self.enhance_help_neutron(
- _("List rules applied to outgoing network traffic"))
+ _("List rules applied to outgoing network traffic")
+ ),
)
parser.add_argument(
'--long',
action='store_true',
default=False,
help=self.enhance_help_neutron(
- _("**Deprecated** This argument is no longer needed"))
+ _("**Deprecated** This argument is no longer needed")
+ ),
)
return parser
@@ -500,7 +529,8 @@ class ListSecurityGroupRule(common.NetworkAndComputeLister):
action='store_true',
default=False,
help=self.enhance_help_nova_network(
- _("Display information from all projects (admin only)"))
+ _("Display information from all projects (admin only)")
+ ),
)
if not self.is_docs_build:
# Accept but hide the argument for consistency with network.
@@ -509,7 +539,7 @@ class ListSecurityGroupRule(common.NetworkAndComputeLister):
'--long',
action='store_false',
default=False,
- help=argparse.SUPPRESS
+ help=argparse.SUPPRESS,
)
return parser
@@ -531,9 +561,10 @@ class ListSecurityGroupRule(common.NetworkAndComputeLister):
def take_action_network(self, client, parsed_args):
if parsed_args.long:
- self.log.warning(_(
+ msg = _(
"The --long option has been deprecated and is no longer needed"
- ))
+ )
+ self.log.warning(msg)
column_headers = self._get_column_headers(parsed_args)
columns = (
@@ -554,8 +585,7 @@ class ListSecurityGroupRule(common.NetworkAndComputeLister):
# does not contain security group rules resources. So use
# the security group ID in a query to get the resources.
security_group_id = client.find_security_group(
- parsed_args.group,
- ignore_missing=False
+ parsed_args.group, ignore_missing=False
).id
query = {'security_group_id': security_group_id}
else:
@@ -573,10 +603,16 @@ class ListSecurityGroupRule(common.NetworkAndComputeLister):
for r in client.security_group_rules(**query)
]
- return (column_headers,
- (utils.get_dict_properties(
- s, columns,
- ) for s in rules))
+ return (
+ column_headers,
+ (
+ utils.get_dict_properties(
+ s,
+ columns,
+ )
+ for s in rules
+ ),
+ )
def take_action_compute(self, client, parsed_args):
column_headers = self._get_column_headers(parsed_args)
@@ -612,10 +648,16 @@ class ListSecurityGroupRule(common.NetworkAndComputeLister):
# network_utils.transform_compute_security_group_rule(rule),
# ))
- return (column_headers,
- (utils.get_dict_properties(
- s, columns,
- ) for s in rules))
+ return (
+ column_headers,
+ (
+ utils.get_dict_properties(
+ s,
+ columns,
+ )
+ for s in rules
+ ),
+ )
class ShowSecurityGroupRule(common.NetworkAndComputeShowOne):
@@ -625,13 +667,14 @@ class ShowSecurityGroupRule(common.NetworkAndComputeShowOne):
parser.add_argument(
'rule',
metavar="<rule>",
- help=_("Security group rule to display (ID only)")
+ help=_("Security group rule to display (ID only)"),
)
return parser
def take_action_network(self, client, parsed_args):
- obj = client.find_security_group_rule(parsed_args.rule,
- ignore_missing=False)
+ obj = client.find_security_group_rule(
+ parsed_args.rule, ignore_missing=False
+ )
# necessary for old rules that have None in this field
if not obj['remote_ip_prefix']:
obj['remote_ip_prefix'] = _format_remote_ip_prefix(obj)
@@ -654,8 +697,10 @@ class ShowSecurityGroupRule(common.NetworkAndComputeShowOne):
break
if obj is None:
- msg = _("Could not find security group rule "
- "with ID '%s'") % parsed_args.rule
+ msg = (
+ _("Could not find security group rule " "with ID '%s'")
+ % parsed_args.rule
+ )
raise exceptions.CommandError(msg)
# NOTE(rtheis): Format security group rule
diff --git a/openstackclient/network/v2/subnet.py b/openstackclient/network/v2/subnet.py
index 8e3a877f..32b2493a 100644
--- a/openstackclient/network/v2/subnet.py
+++ b/openstackclient/network/v2/subnet.py
@@ -36,16 +36,19 @@ def _update_arguments(obj_list, parsed_args_list, option):
try:
obj_list.remove(item)
except ValueError:
- msg = (_("Subnet does not contain %(option)s %(value)s") %
- {'option': option, 'value': item})
+ msg = _("Subnet does not contain %(option)s %(value)s") % {
+ 'option': option,
+ 'value': item,
+ }
raise exceptions.CommandError(msg)
class AllocationPoolsColumn(cliff_columns.FormattableColumn):
def human_readable(self):
- pool_formatted = ['%s-%s' % (pool.get('start', ''),
- pool.get('end', ''))
- for pool in self._value]
+ pool_formatted = [
+ '%s-%s' % (pool.get('start', ''), pool.get('end', ''))
+ for pool in self._value
+ ]
return ','.join(pool_formatted)
@@ -53,7 +56,8 @@ class HostRoutesColumn(cliff_columns.FormattableColumn):
def human_readable(self):
# Map the host route keys to match --host-route option.
return utils.format_list_of_dicts(
- convert_entries_to_gateway(self._value))
+ convert_entries_to_gateway(self._value)
+ )
_formatters = {
@@ -72,34 +76,42 @@ def _get_common_parse_arguments(parser, is_create=True):
dest='allocation_pools',
action=parseractions.MultiKeyValueAction,
required_keys=['start', 'end'],
- help=_("Allocation pool IP addresses for this subnet "
- "e.g.: start=192.168.199.2,end=192.168.199.254 "
- "(repeat option to add multiple IP addresses)")
+ help=_(
+ "Allocation pool IP addresses for this subnet "
+ "e.g.: start=192.168.199.2,end=192.168.199.254 "
+ "(repeat option to add multiple IP addresses)"
+ ),
)
if not is_create:
parser.add_argument(
'--no-allocation-pool',
action='store_true',
- help=_("Clear associated allocation-pools from the subnet. "
- "Specify both --allocation-pool and --no-allocation-pool "
- "to overwrite the current allocation pool information.")
+ help=_(
+ "Clear associated allocation-pools from the subnet. "
+ "Specify both --allocation-pool and --no-allocation-pool "
+ "to overwrite the current allocation pool information."
+ ),
)
parser.add_argument(
'--dns-nameserver',
metavar='<dns-nameserver>',
action='append',
dest='dns_nameservers',
- help=_("DNS server for this subnet "
- "(repeat option to set multiple DNS servers)")
+ help=_(
+ "DNS server for this subnet "
+ "(repeat option to set multiple DNS servers)"
+ ),
)
if not is_create:
parser.add_argument(
'--no-dns-nameservers',
action='store_true',
- help=_("Clear existing information of DNS Nameservers. "
- "Specify both --dns-nameserver and --no-dns-nameserver "
- "to overwrite the current DNS Nameserver information.")
+ help=_(
+ "Clear existing information of DNS Nameservers. "
+ "Specify both --dns-nameserver and --no-dns-nameserver "
+ "to overwrite the current DNS Nameserver information."
+ ),
)
parser.add_argument(
'--host-route',
@@ -107,29 +119,35 @@ def _get_common_parse_arguments(parser, is_create=True):
dest='host_routes',
action=parseractions.MultiKeyValueAction,
required_keys=['destination', 'gateway'],
- help=_("Additional route for this subnet "
- "e.g.: destination=10.10.0.0/16,gateway=192.168.71.254 "
- "destination: destination subnet (in CIDR notation) "
- "gateway: nexthop IP address "
- "(repeat option to add multiple routes)")
+ help=_(
+ "Additional route for this subnet "
+ "e.g.: destination=10.10.0.0/16,gateway=192.168.71.254 "
+ "destination: destination subnet (in CIDR notation) "
+ "gateway: nexthop IP address "
+ "(repeat option to add multiple routes)"
+ ),
)
if not is_create:
parser.add_argument(
'--no-host-route',
action='store_true',
- help=_("Clear associated host-routes from the subnet. "
- "Specify both --host-route and --no-host-route "
- "to overwrite the current host route information.")
+ help=_(
+ "Clear associated host-routes from the subnet. "
+ "Specify both --host-route and --no-host-route "
+ "to overwrite the current host route information."
+ ),
)
parser.add_argument(
'--service-type',
metavar='<service-type>',
action='append',
dest='service_types',
- help=_("Service type for this subnet "
- "e.g.: network:floatingip_agent_gateway. "
- "Must be a valid device owner value for a network port "
- "(repeat option to set multiple service types)")
+ help=_(
+ "Service type for this subnet "
+ "e.g.: network:floatingip_agent_gateway. "
+ "Must be a valid device owner value for a network port "
+ "(repeat option to set multiple service types)"
+ ),
)
@@ -146,9 +164,7 @@ def _get_columns(item):
'tenant_id',
]
return utils.get_osc_show_columns_for_sdk_resource(
- item,
- column_map,
- hidden_columns
+ item, column_map, hidden_columns
)
@@ -189,11 +205,13 @@ def _get_attrs(client_manager, parsed_args, is_create=True):
parsed_args.project_domain,
).id
attrs['project_id'] = project_id
- attrs['network_id'] = client.find_network(parsed_args.network,
- ignore_missing=False).id
+ attrs['network_id'] = client.find_network(
+ parsed_args.network, ignore_missing=False
+ ).id
if parsed_args.subnet_pool is not None:
- subnet_pool = client.find_subnet_pool(parsed_args.subnet_pool,
- ignore_missing=False)
+ subnet_pool = client.find_subnet_pool(
+ parsed_args.subnet_pool, ignore_missing=False
+ )
attrs['subnetpool_id'] = subnet_pool.id
if parsed_args.use_prefix_delegation:
attrs['subnetpool_id'] = "prefix_delegation"
@@ -212,21 +230,26 @@ def _get_attrs(client_manager, parsed_args, is_create=True):
if parsed_args.network_segment is not None:
attrs['segment_id'] = client.find_segment(
- parsed_args.network_segment, ignore_missing=False).id
+ parsed_args.network_segment, ignore_missing=False
+ ).id
if 'gateway' in parsed_args and parsed_args.gateway is not None:
gateway = parsed_args.gateway.lower()
if not is_create and gateway == 'auto':
- msg = _("Auto option is not available for Subnet Set. "
- "Valid options are <ip-address> or none")
+ msg = _(
+ "Auto option is not available for Subnet Set. "
+ "Valid options are <ip-address> or none"
+ )
raise exceptions.CommandError(msg)
elif gateway != 'auto':
if gateway == 'none':
attrs['gateway_ip'] = None
else:
attrs['gateway_ip'] = gateway
- if ('allocation_pools' in parsed_args and
- parsed_args.allocation_pools is not None):
+ if (
+ 'allocation_pools' in parsed_args
+ and parsed_args.allocation_pools is not None
+ ):
attrs['allocation_pools'] = parsed_args.allocation_pools
if parsed_args.dhcp:
attrs['enable_dhcp'] = True
@@ -236,15 +259,20 @@ def _get_attrs(client_manager, parsed_args, is_create=True):
attrs['dns_publish_fixed_ip'] = True
if parsed_args.no_dns_publish_fixed_ip:
attrs['dns_publish_fixed_ip'] = False
- if ('dns_nameservers' in parsed_args and
- parsed_args.dns_nameservers is not None):
+ if (
+ 'dns_nameservers' in parsed_args
+ and parsed_args.dns_nameservers is not None
+ ):
attrs['dns_nameservers'] = parsed_args.dns_nameservers
if 'host_routes' in parsed_args and parsed_args.host_routes is not None:
# Change 'gateway' entry to 'nexthop' to match the API
attrs['host_routes'] = convert_entries_to_nexthop(
- parsed_args.host_routes)
- if ('service_types' in parsed_args and
- parsed_args.service_types is not None):
+ parsed_args.host_routes
+ )
+ if (
+ 'service_types' in parsed_args
+ and parsed_args.service_types is not None
+ ):
attrs['service_types'] = parsed_args.service_types
if parsed_args.description is not None:
attrs['description'] = parsed_args.description
@@ -259,115 +287,124 @@ class CreateSubnet(command.ShowOne, common.NeutronCommandWithExtraArgs):
def get_parser(self, prog_name):
parser = super(CreateSubnet, self).get_parser(prog_name)
parser.add_argument(
- 'name',
- metavar='<name>',
- help=_("New subnet name")
+ 'name', metavar='<name>', help=_("New subnet name")
)
parser.add_argument(
'--project',
metavar='<project>',
- help=_("Owner's project (name or ID)")
+ help=_("Owner's project (name or ID)"),
)
identity_common.add_project_domain_option_to_parser(parser)
subnet_pool_group = parser.add_mutually_exclusive_group()
subnet_pool_group.add_argument(
'--subnet-pool',
metavar='<subnet-pool>',
- help=_("Subnet pool from which this subnet will obtain a CIDR "
- "(Name or ID)")
+ help=_(
+ "Subnet pool from which this subnet will obtain a CIDR "
+ "(Name or ID)"
+ ),
)
subnet_pool_group.add_argument(
'--use-prefix-delegation',
- help=_("Use 'prefix-delegation' if IP is IPv6 format "
- "and IP would be delegated externally")
+ help=_(
+ "Use 'prefix-delegation' if IP is IPv6 format "
+ "and IP would be delegated externally"
+ ),
)
subnet_pool_group.add_argument(
'--use-default-subnet-pool',
action='store_true',
- help=_("Use default subnet pool for --ip-version")
+ help=_("Use default subnet pool for --ip-version"),
)
parser.add_argument(
'--prefix-length',
metavar='<prefix-length>',
- help=_("Prefix length for subnet allocation from subnet pool")
+ help=_("Prefix length for subnet allocation from subnet pool"),
)
parser.add_argument(
'--subnet-range',
metavar='<subnet-range>',
- help=_("Subnet range in CIDR notation "
- "(required if --subnet-pool is not specified, "
- "optional otherwise)")
+ help=_(
+ "Subnet range in CIDR notation "
+ "(required if --subnet-pool is not specified, "
+ "optional otherwise)"
+ ),
)
dhcp_enable_group = parser.add_mutually_exclusive_group()
dhcp_enable_group.add_argument(
- '--dhcp',
- action='store_true',
- help=_("Enable DHCP (default)")
+ '--dhcp', action='store_true', help=_("Enable DHCP (default)")
)
dhcp_enable_group.add_argument(
- '--no-dhcp',
- action='store_true',
- help=_("Disable DHCP")
+ '--no-dhcp', action='store_true', help=_("Disable DHCP")
)
dns_publish_fixed_ip_group = parser.add_mutually_exclusive_group()
dns_publish_fixed_ip_group.add_argument(
'--dns-publish-fixed-ip',
action='store_true',
- help=_("Enable publishing fixed IPs in DNS")
+ help=_("Enable publishing fixed IPs in DNS"),
)
dns_publish_fixed_ip_group.add_argument(
'--no-dns-publish-fixed-ip',
action='store_true',
- help=_("Disable publishing fixed IPs in DNS (default)")
+ help=_("Disable publishing fixed IPs in DNS (default)"),
)
parser.add_argument(
'--gateway',
metavar='<gateway>',
default='auto',
- help=_("Specify a gateway for the subnet. The three options are: "
- "<ip-address>: Specific IP address to use as the gateway, "
- "'auto': Gateway address should automatically be chosen "
- "from within the subnet itself, 'none': This subnet will "
- "not use a gateway, e.g.: --gateway 192.168.9.1, "
- "--gateway auto, --gateway none (default is 'auto').")
+ help=_(
+ "Specify a gateway for the subnet. The three options are: "
+ "<ip-address>: Specific IP address to use as the gateway, "
+ "'auto': Gateway address should automatically be chosen "
+ "from within the subnet itself, 'none': This subnet will "
+ "not use a gateway, e.g.: --gateway 192.168.9.1, "
+ "--gateway auto, --gateway none (default is 'auto')."
+ ),
)
parser.add_argument(
'--ip-version',
type=int,
default=4,
choices=[4, 6],
- help=_("IP version (default is 4). Note that when subnet pool is "
- "specified, IP version is determined from the subnet pool "
- "and this option is ignored.")
+ help=_(
+ "IP version (default is 4). Note that when subnet pool is "
+ "specified, IP version is determined from the subnet pool "
+ "and this option is ignored."
+ ),
)
parser.add_argument(
'--ipv6-ra-mode',
choices=['dhcpv6-stateful', 'dhcpv6-stateless', 'slaac'],
- help=_("IPv6 RA (Router Advertisement) mode, "
- "valid modes: [dhcpv6-stateful, dhcpv6-stateless, slaac]")
+ help=_(
+ "IPv6 RA (Router Advertisement) mode, "
+ "valid modes: [dhcpv6-stateful, dhcpv6-stateless, slaac]"
+ ),
)
parser.add_argument(
'--ipv6-address-mode',
choices=['dhcpv6-stateful', 'dhcpv6-stateless', 'slaac'],
- help=_("IPv6 address mode, "
- "valid modes: [dhcpv6-stateful, dhcpv6-stateless, slaac]")
+ help=_(
+ "IPv6 address mode, "
+ "valid modes: [dhcpv6-stateful, dhcpv6-stateless, slaac]"
+ ),
)
parser.add_argument(
'--network-segment',
metavar='<network-segment>',
- help=_("Network segment to associate with this subnet "
- "(name or ID)")
+ help=_(
+ "Network segment to associate with this subnet " "(name or ID)"
+ ),
)
parser.add_argument(
'--network',
required=True,
metavar='<network>',
- help=_("Network this subnet belongs to (name or ID)")
+ help=_("Network this subnet belongs to (name or ID)"),
)
parser.add_argument(
'--description',
metavar='<description>',
- help=_("Set subnet description")
+ help=_("Set subnet description"),
)
_get_common_parse_arguments(parser)
_tag.add_tag_option_to_parser_for_create(parser, _('subnet'))
@@ -377,7 +414,8 @@ class CreateSubnet(command.ShowOne, common.NeutronCommandWithExtraArgs):
client = self.app.client_manager.network
attrs = _get_attrs(self.app.client_manager, parsed_args)
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
obj = client.create_subnet(**attrs)
# tags cannot be set when created, so tags need to be set later.
_tag.update_tags_for_set(client, obj, parsed_args)
@@ -395,7 +433,7 @@ class DeleteSubnet(command.Command):
'subnet',
metavar="<subnet>",
nargs='+',
- help=_("Subnet(s) to delete (name or ID)")
+ help=_("Subnet(s) to delete (name or ID)"),
)
return parser
@@ -409,14 +447,20 @@ class DeleteSubnet(command.Command):
client.delete_subnet(obj)
except Exception as e:
result += 1
- LOG.error(_("Failed to delete subnet with "
- "name or ID '%(subnet)s': %(e)s"),
- {'subnet': subnet, 'e': e})
+ LOG.error(
+ _(
+ "Failed to delete subnet with "
+ "name or ID '%(subnet)s': %(e)s"
+ ),
+ {'subnet': subnet, 'e': e},
+ )
if result > 0:
total = len(parsed_args.subnet)
- msg = (_("%(result)s of %(total)s subnets failed "
- "to delete.") % {'result': result, 'total': total})
+ msg = _("%(result)s of %(total)s subnets failed " "to delete.") % {
+ 'result': result,
+ 'total': total,
+ }
raise exceptions.CommandError(msg)
@@ -431,7 +475,7 @@ class ListSubnet(command.Lister):
'--long',
action='store_true',
default=False,
- help=_("List additional fields in output")
+ help=_("List additional fields in output"),
)
parser.add_argument(
'--ip-version',
@@ -439,65 +483,77 @@ class ListSubnet(command.Lister):
choices=[4, 6],
metavar='<ip-version>',
dest='ip_version',
- help=_("List only subnets of given IP version in output. "
- "Allowed values for IP version are 4 and 6."),
+ help=_(
+ "List only subnets of given IP version in output. "
+ "Allowed values for IP version are 4 and 6."
+ ),
)
dhcp_enable_group = parser.add_mutually_exclusive_group()
dhcp_enable_group.add_argument(
'--dhcp',
action='store_true',
- help=_("List subnets which have DHCP enabled")
+ help=_("List subnets which have DHCP enabled"),
)
dhcp_enable_group.add_argument(
'--no-dhcp',
action='store_true',
- help=_("List subnets which have DHCP disabled")
+ help=_("List subnets which have DHCP disabled"),
)
parser.add_argument(
'--service-type',
metavar='<service-type>',
action='append',
dest='service_types',
- help=_("List only subnets of a given service type in output "
- "e.g.: network:floatingip_agent_gateway. "
- "Must be a valid device owner value for a network port "
- "(repeat option to list multiple service types)")
+ help=_(
+ "List only subnets of a given service type in output "
+ "e.g.: network:floatingip_agent_gateway. "
+ "Must be a valid device owner value for a network port "
+ "(repeat option to list multiple service types)"
+ ),
)
parser.add_argument(
'--project',
metavar='<project>',
- help=_("List only subnets which belong to a given project "
- "in output (name or ID)")
+ help=_(
+ "List only subnets which belong to a given project "
+ "in output (name or ID)"
+ ),
)
identity_common.add_project_domain_option_to_parser(parser)
parser.add_argument(
'--network',
metavar='<network>',
- help=_("List only subnets which belong to a given network "
- "in output (name or ID)")
+ help=_(
+ "List only subnets which belong to a given network "
+ "in output (name or ID)"
+ ),
)
parser.add_argument(
'--gateway',
metavar='<gateway>',
- help=_("List only subnets of given gateway IP in output")
+ help=_("List only subnets of given gateway IP in output"),
)
parser.add_argument(
'--name',
metavar='<name>',
- help=_("List only subnets of given name in output")
+ help=_("List only subnets of given name in output"),
)
parser.add_argument(
'--subnet-range',
metavar='<subnet-range>',
- help=_("List only subnets of given subnet range "
- "(in CIDR notation) in output "
- "e.g.: --subnet-range 10.10.0.0/16")
+ help=_(
+ "List only subnets of given subnet range "
+ "(in CIDR notation) in output "
+ "e.g.: --subnet-range 10.10.0.0/16"
+ ),
)
parser.add_argument(
'--subnet-pool',
metavar='<subnet-pool>',
- help=_("List only subnets which belong to a given subnet pool "
- "in output (Name or ID)")
+ help=_(
+ "List only subnets which belong to a given subnet pool "
+ "in output (Name or ID)"
+ ),
)
_tag.add_tag_filtering_option_to_parser(parser, _('subnets'))
return parser
@@ -524,8 +580,9 @@ class ListSubnet(command.Lister):
).id
filters['project_id'] = project_id
if parsed_args.network:
- network_id = network_client.find_network(parsed_args.network,
- ignore_missing=False).id
+ network_id = network_client.find_network(
+ parsed_args.network, ignore_missing=False
+ ).id
filters['network_id'] = network_id
if parsed_args.gateway:
filters['gateway_ip'] = parsed_args.gateway
@@ -535,7 +592,8 @@ class ListSubnet(command.Lister):
filters['cidr'] = parsed_args.subnet_range
if parsed_args.subnet_pool:
subnetpool_id = network_client.find_subnet_pool(
- parsed_args.subnet_pool, ignore_missing=False).id
+ parsed_args.subnet_pool, ignore_missing=False
+ ).id
filters['subnetpool_id'] = subnetpool_id
_tag.get_tag_filtering_args(parsed_args, filters)
data = network_client.subnets(**filters)
@@ -543,18 +601,40 @@ class ListSubnet(command.Lister):
headers = ('ID', 'Name', 'Network', 'Subnet')
columns = ('id', 'name', 'network_id', 'cidr')
if parsed_args.long:
- headers += ('Project', 'DHCP', 'Name Servers',
- 'Allocation Pools', 'Host Routes', 'IP Version',
- 'Gateway', 'Service Types', 'Tags')
- columns += ('project_id', 'is_dhcp_enabled', 'dns_nameservers',
- 'allocation_pools', 'host_routes', 'ip_version',
- 'gateway_ip', 'service_types', 'tags')
-
- return (headers,
- (utils.get_item_properties(
- s, columns,
+ headers += (
+ 'Project',
+ 'DHCP',
+ 'Name Servers',
+ 'Allocation Pools',
+ 'Host Routes',
+ 'IP Version',
+ 'Gateway',
+ 'Service Types',
+ 'Tags',
+ )
+ columns += (
+ 'project_id',
+ 'is_dhcp_enabled',
+ 'dns_nameservers',
+ 'allocation_pools',
+ 'host_routes',
+ 'ip_version',
+ 'gateway_ip',
+ 'service_types',
+ 'tags',
+ )
+
+ return (
+ headers,
+ (
+ utils.get_item_properties(
+ s,
+ columns,
formatters=_formatters,
- ) for s in data))
+ )
+ for s in data
+ ),
+ )
# TODO(abhiraut): Use the SDK resource mapped attribute names once the
@@ -567,56 +647,53 @@ class SetSubnet(common.NeutronCommandWithExtraArgs):
parser.add_argument(
'subnet',
metavar="<subnet>",
- help=_("Subnet to modify (name or ID)")
+ help=_("Subnet to modify (name or ID)"),
)
parser.add_argument(
- '--name',
- metavar='<name>',
- help=_("Updated name of the subnet")
+ '--name', metavar='<name>', help=_("Updated name of the subnet")
)
dhcp_enable_group = parser.add_mutually_exclusive_group()
dhcp_enable_group.add_argument(
- '--dhcp',
- action='store_true',
- default=None,
- help=_("Enable DHCP")
+ '--dhcp', action='store_true', default=None, help=_("Enable DHCP")
)
dhcp_enable_group.add_argument(
- '--no-dhcp',
- action='store_true',
- help=_("Disable DHCP")
+ '--no-dhcp', action='store_true', help=_("Disable DHCP")
)
dns_publish_fixed_ip_group = parser.add_mutually_exclusive_group()
dns_publish_fixed_ip_group.add_argument(
'--dns-publish-fixed-ip',
action='store_true',
- help=_("Enable publishing fixed IPs in DNS")
+ help=_("Enable publishing fixed IPs in DNS"),
)
dns_publish_fixed_ip_group.add_argument(
'--no-dns-publish-fixed-ip',
action='store_true',
- help=_("Disable publishing fixed IPs in DNS")
+ help=_("Disable publishing fixed IPs in DNS"),
)
parser.add_argument(
'--gateway',
metavar='<gateway>',
- help=_("Specify a gateway for the subnet. The options are: "
- "<ip-address>: Specific IP address to use as the gateway, "
- "'none': This subnet will not use a gateway, "
- "e.g.: --gateway 192.168.9.1, --gateway none.")
+ help=_(
+ "Specify a gateway for the subnet. The options are: "
+ "<ip-address>: Specific IP address to use as the gateway, "
+ "'none': This subnet will not use a gateway, "
+ "e.g.: --gateway 192.168.9.1, --gateway none."
+ ),
)
parser.add_argument(
'--network-segment',
metavar='<network-segment>',
- help=_("Network segment to associate with this subnet (name or "
- "ID). It is only allowed to set the segment if the current "
- "value is `None`, the network must also have only one "
- "segment and only one subnet can exist on the network.")
+ help=_(
+ "Network segment to associate with this subnet (name or "
+ "ID). It is only allowed to set the segment if the current "
+ "value is `None`, the network must also have only one "
+ "segment and only one subnet can exist on the network."
+ ),
)
parser.add_argument(
'--description',
metavar='<description>',
- help=_("Set subnet description")
+ help=_("Set subnet description"),
)
_tag.add_tag_option_to_parser_for_set(parser, _('subnet'))
_get_common_parse_arguments(parser, is_create=False)
@@ -625,8 +702,9 @@ class SetSubnet(common.NeutronCommandWithExtraArgs):
def take_action(self, parsed_args):
client = self.app.client_manager.network
obj = client.find_subnet(parsed_args.subnet, ignore_missing=False)
- attrs = _get_attrs(self.app.client_manager, parsed_args,
- is_create=False)
+ attrs = _get_attrs(
+ self.app.client_manager, parsed_args, is_create=False
+ )
if 'dns_nameservers' in attrs:
if not parsed_args.no_dns_nameservers:
attrs['dns_nameservers'] += obj.dns_nameservers
@@ -645,7 +723,8 @@ class SetSubnet(common.NeutronCommandWithExtraArgs):
if 'service_types' in attrs:
attrs['service_types'] += obj.service_types
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
if attrs:
client.update_subnet(obj, **attrs)
# tags is a subresource and it needs to be updated separately.
@@ -661,13 +740,14 @@ class ShowSubnet(command.ShowOne):
parser.add_argument(
'subnet',
metavar="<subnet>",
- help=_("Subnet to display (name or ID)")
+ help=_("Subnet to display (name or ID)"),
)
return parser
def take_action(self, parsed_args):
- obj = self.app.client_manager.network.find_subnet(parsed_args.subnet,
- ignore_missing=False)
+ obj = self.app.client_manager.network.find_subnet(
+ parsed_args.subnet, ignore_missing=False
+ )
display_columns, columns = _get_columns(obj)
data = utils.get_item_properties(obj, columns, formatters=_formatters)
return (display_columns, data)
@@ -684,22 +764,26 @@ class UnsetSubnet(common.NeutronUnsetCommandWithExtraArgs):
dest='allocation_pools',
action=parseractions.MultiKeyValueAction,
required_keys=['start', 'end'],
- help=_('Allocation pool IP addresses to be removed from this '
- 'subnet e.g.: start=192.168.199.2,end=192.168.199.254 '
- '(repeat option to unset multiple allocation pools)')
+ help=_(
+ 'Allocation pool IP addresses to be removed from this '
+ 'subnet e.g.: start=192.168.199.2,end=192.168.199.254 '
+ '(repeat option to unset multiple allocation pools)'
+ ),
)
parser.add_argument(
'--gateway',
action='store_true',
- help=_("Remove gateway IP from this subnet")
+ help=_("Remove gateway IP from this subnet"),
)
parser.add_argument(
'--dns-nameserver',
metavar='<dns-nameserver>',
action='append',
dest='dns_nameservers',
- help=_('DNS server to be removed from this subnet '
- '(repeat option to unset multiple DNS servers)')
+ help=_(
+ 'DNS server to be removed from this subnet '
+ '(repeat option to unset multiple DNS servers)'
+ ),
)
parser.add_argument(
'--host-route',
@@ -707,27 +791,31 @@ class UnsetSubnet(common.NeutronUnsetCommandWithExtraArgs):
dest='host_routes',
action=parseractions.MultiKeyValueAction,
required_keys=['destination', 'gateway'],
- help=_('Route to be removed from this subnet '
- 'e.g.: destination=10.10.0.0/16,gateway=192.168.71.254 '
- 'destination: destination subnet (in CIDR notation) '
- 'gateway: nexthop IP address '
- '(repeat option to unset multiple host routes)')
+ help=_(
+ 'Route to be removed from this subnet '
+ 'e.g.: destination=10.10.0.0/16,gateway=192.168.71.254 '
+ 'destination: destination subnet (in CIDR notation) '
+ 'gateway: nexthop IP address '
+ '(repeat option to unset multiple host routes)'
+ ),
)
parser.add_argument(
'--service-type',
metavar='<service-type>',
action='append',
dest='service_types',
- help=_('Service type to be removed from this subnet '
- 'e.g.: network:floatingip_agent_gateway. '
- 'Must be a valid device owner value for a network port '
- '(repeat option to unset multiple service types)')
+ help=_(
+ 'Service type to be removed from this subnet '
+ 'e.g.: network:floatingip_agent_gateway. '
+ 'Must be a valid device owner value for a network port '
+ '(repeat option to unset multiple service types)'
+ ),
)
_tag.add_tag_option_to_parser_for_unset(parser, _('subnet'))
parser.add_argument(
'subnet',
metavar="<subnet>",
- help=_("Subnet to modify (name or ID)")
+ help=_("Subnet to modify (name or ID)"),
)
return parser
@@ -740,28 +828,36 @@ class UnsetSubnet(common.NeutronUnsetCommandWithExtraArgs):
attrs['gateway_ip'] = None
if parsed_args.dns_nameservers:
attrs['dns_nameservers'] = copy.deepcopy(obj.dns_nameservers)
- _update_arguments(attrs['dns_nameservers'],
- parsed_args.dns_nameservers,
- 'dns-nameserver')
+ _update_arguments(
+ attrs['dns_nameservers'],
+ parsed_args.dns_nameservers,
+ 'dns-nameserver',
+ )
if parsed_args.host_routes:
attrs['host_routes'] = copy.deepcopy(obj.host_routes)
_update_arguments(
attrs['host_routes'],
convert_entries_to_nexthop(parsed_args.host_routes),
- 'host-route')
+ 'host-route',
+ )
if parsed_args.allocation_pools:
attrs['allocation_pools'] = copy.deepcopy(obj.allocation_pools)
- _update_arguments(attrs['allocation_pools'],
- parsed_args.allocation_pools,
- 'allocation-pool')
+ _update_arguments(
+ attrs['allocation_pools'],
+ parsed_args.allocation_pools,
+ 'allocation-pool',
+ )
if parsed_args.service_types:
attrs['service_types'] = copy.deepcopy(obj.service_types)
- _update_arguments(attrs['service_types'],
- parsed_args.service_types,
- 'service-type')
+ _update_arguments(
+ attrs['service_types'],
+ parsed_args.service_types,
+ 'service-type',
+ )
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
if attrs:
client.update_subnet(obj, **attrs)
diff --git a/openstackclient/network/v2/subnet_pool.py b/openstackclient/network/v2/subnet_pool.py
index 2369960e..833fe325 100644
--- a/openstackclient/network/v2/subnet_pool.py
+++ b/openstackclient/network/v2/subnet_pool.py
@@ -39,9 +39,7 @@ def _get_columns(item):
}
hidden_columns = ['location', 'tenant_id']
return utils.get_osc_show_columns_for_sdk_resource(
- item,
- column_map,
- hidden_columns
+ item, column_map, hidden_columns
)
@@ -68,7 +66,8 @@ def _get_attrs(client_manager, parsed_args):
if parsed_args.address_scope is not None:
attrs['address_scope_id'] = network_client.find_address_scope(
- parsed_args.address_scope, ignore_missing=False).id
+ parsed_args.address_scope, ignore_missing=False
+ ).id
if 'no_address_scope' in parsed_args and parsed_args.no_address_scope:
attrs['address_scope_id'] = None
@@ -108,29 +107,31 @@ def _add_prefix_options(parser, for_create=False):
dest='prefixes',
action='append',
required=for_create,
- help=_("Set subnet pool prefixes (in CIDR notation) "
- "(repeat option to set multiple prefixes)")
+ help=_(
+ "Set subnet pool prefixes (in CIDR notation) "
+ "(repeat option to set multiple prefixes)"
+ ),
)
parser.add_argument(
'--default-prefix-length',
metavar='<default-prefix-length>',
type=int,
action=parseractions.NonNegativeAction,
- help=_("Set subnet pool default prefix length")
+ help=_("Set subnet pool default prefix length"),
)
parser.add_argument(
'--min-prefix-length',
metavar='<min-prefix-length>',
action=parseractions.NonNegativeAction,
type=int,
- help=_("Set subnet pool minimum prefix length")
+ help=_("Set subnet pool minimum prefix length"),
)
parser.add_argument(
'--max-prefix-length',
metavar='<max-prefix-length>',
type=int,
action=parseractions.NonNegativeAction,
- help=_("Set subnet pool maximum prefix length")
+ help=_("Set subnet pool maximum prefix length"),
)
@@ -156,23 +157,23 @@ class CreateSubnetPool(command.ShowOne, common.NeutronCommandWithExtraArgs):
def get_parser(self, prog_name):
parser = super(CreateSubnetPool, self).get_parser(prog_name)
parser.add_argument(
- 'name',
- metavar='<name>',
- help=_("Name of the new subnet pool")
+ 'name', metavar='<name>', help=_("Name of the new subnet pool")
)
_add_prefix_options(parser, for_create=True)
parser.add_argument(
'--project',
metavar='<project>',
- help=_("Owner's project (name or ID)")
+ help=_("Owner's project (name or ID)"),
)
identity_common.add_project_domain_option_to_parser(parser)
parser.add_argument(
'--address-scope',
metavar='<address-scope>',
- help=_("Set address scope associated with the subnet pool "
- "(name or ID), prefixes must be unique across address "
- "scopes")
+ help=_(
+ "Set address scope associated with the subnet pool "
+ "(name or ID), prefixes must be unique across address "
+ "scopes"
+ ),
)
_add_default_options(parser)
shared_group = parser.add_mutually_exclusive_group()
@@ -189,15 +190,18 @@ class CreateSubnetPool(command.ShowOne, common.NeutronCommandWithExtraArgs):
parser.add_argument(
'--description',
metavar='<description>',
- help=_("Set subnet pool description")
+ help=_("Set subnet pool description"),
)
parser.add_argument(
'--default-quota',
type=int,
metavar='<num-ip-addresses>',
- help=_("Set default per-project quota for this subnet pool "
- "as the number of IP addresses that can be allocated "
- "from the subnet pool")),
+ help=_(
+ "Set default per-project quota for this subnet pool "
+ "as the number of IP addresses that can be allocated "
+ "from the subnet pool"
+ ),
+ ),
_tag.add_tag_option_to_parser_for_create(parser, _('subnet pool'))
return parser
@@ -208,7 +212,8 @@ class CreateSubnetPool(command.ShowOne, common.NeutronCommandWithExtraArgs):
if "prefixes" not in attrs:
attrs['prefixes'] = []
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
obj = client.create_subnet_pool(**attrs)
# tags cannot be set when created, so tags need to be set later.
_tag.update_tags_for_set(client, obj, parsed_args)
@@ -226,7 +231,7 @@ class DeleteSubnetPool(command.Command):
'subnet_pool',
metavar='<subnet-pool>',
nargs='+',
- help=_("Subnet pool(s) to delete (name or ID)")
+ help=_("Subnet pool(s) to delete (name or ID)"),
)
return parser
@@ -240,14 +245,19 @@ class DeleteSubnetPool(command.Command):
client.delete_subnet_pool(obj)
except Exception as e:
result += 1
- LOG.error(_("Failed to delete subnet pool with "
- "name or ID '%(pool)s': %(e)s"),
- {'pool': pool, 'e': e})
+ LOG.error(
+ _(
+ "Failed to delete subnet pool with "
+ "name or ID '%(pool)s': %(e)s"
+ ),
+ {'pool': pool, 'e': e},
+ )
if result > 0:
total = len(parsed_args.subnet_pool)
- msg = (_("%(result)s of %(total)s subnet pools failed "
- "to delete.") % {'result': result, 'total': total})
+ msg = _(
+ "%(result)s of %(total)s subnet pools failed " "to delete."
+ ) % {'result': result, 'total': total}
raise exceptions.CommandError(msg)
@@ -262,7 +272,7 @@ class ListSubnetPool(command.Lister):
'--long',
action='store_true',
default=False,
- help=_("List additional fields in output")
+ help=_("List additional fields in output"),
)
shared_group = parser.add_mutually_exclusive_group()
shared_group.add_argument(
@@ -279,31 +289,38 @@ class ListSubnetPool(command.Lister):
default_group.add_argument(
'--default',
action='store_true',
- help=_("List subnet pools used as the default external "
- "subnet pool"),
+ help=_(
+ "List subnet pools used as the default external " "subnet pool"
+ ),
)
default_group.add_argument(
'--no-default',
action='store_true',
- help=_("List subnet pools not used as the default external "
- "subnet pool")
+ help=_(
+ "List subnet pools not used as the default external "
+ "subnet pool"
+ ),
)
parser.add_argument(
'--project',
metavar='<project>',
- help=_("List subnet pools according to their project (name or ID)")
+ help=_(
+ "List subnet pools according to their project (name or ID)"
+ ),
)
identity_common.add_project_domain_option_to_parser(parser)
parser.add_argument(
'--name',
metavar='<name>',
- help=_("List only subnet pools of given name in output")
+ help=_("List only subnet pools of given name in output"),
)
parser.add_argument(
'--address-scope',
metavar='<address-scope>',
- help=_("List only subnet pools of given address scope "
- "in output (name or ID)")
+ help=_(
+ "List only subnet pools of given address scope "
+ "in output (name or ID)"
+ ),
)
_tag.add_tag_filtering_option_to_parser(parser, _('subnet pools'))
return parser
@@ -333,8 +350,8 @@ class ListSubnetPool(command.Lister):
filters['name'] = parsed_args.name
if parsed_args.address_scope:
address_scope = network_client.find_address_scope(
- parsed_args.address_scope,
- ignore_missing=False)
+ parsed_args.address_scope, ignore_missing=False
+ )
filters['address_scope_id'] = address_scope.id
_tag.get_tag_filtering_args(parsed_args, filters)
data = network_client.subnet_pools(**filters)
@@ -342,16 +359,32 @@ class ListSubnetPool(command.Lister):
headers = ('ID', 'Name', 'Prefixes')
columns = ('id', 'name', 'prefixes')
if parsed_args.long:
- headers += ('Default Prefix Length', 'Address Scope',
- 'Default Subnet Pool', 'Shared', 'Tags')
- columns += ('default_prefix_length', 'address_scope_id',
- 'is_default', 'is_shared', 'tags')
-
- return (headers,
- (utils.get_item_properties(
- s, columns,
+ headers += (
+ 'Default Prefix Length',
+ 'Address Scope',
+ 'Default Subnet Pool',
+ 'Shared',
+ 'Tags',
+ )
+ columns += (
+ 'default_prefix_length',
+ 'address_scope_id',
+ 'is_default',
+ 'is_shared',
+ 'tags',
+ )
+
+ return (
+ headers,
+ (
+ utils.get_item_properties(
+ s,
+ columns,
formatters=_formatters,
- ) for s in data))
+ )
+ for s in data
+ ),
+ )
# TODO(rtheis): Use the SDK resource mapped attribute names once the
@@ -364,48 +397,52 @@ class SetSubnetPool(common.NeutronCommandWithExtraArgs):
parser.add_argument(
'subnet_pool',
metavar='<subnet-pool>',
- help=_("Subnet pool to modify (name or ID)")
+ help=_("Subnet pool to modify (name or ID)"),
)
parser.add_argument(
- '--name',
- metavar='<name>',
- help=_("Set subnet pool name")
+ '--name', metavar='<name>', help=_("Set subnet pool name")
)
_add_prefix_options(parser)
address_scope_group = parser.add_mutually_exclusive_group()
address_scope_group.add_argument(
'--address-scope',
metavar='<address-scope>',
- help=_("Set address scope associated with the subnet pool "
- "(name or ID), prefixes must be unique across address "
- "scopes")
+ help=_(
+ "Set address scope associated with the subnet pool "
+ "(name or ID), prefixes must be unique across address "
+ "scopes"
+ ),
)
address_scope_group.add_argument(
'--no-address-scope',
action='store_true',
- help=_("Remove address scope associated with the subnet pool")
+ help=_("Remove address scope associated with the subnet pool"),
)
_add_default_options(parser)
parser.add_argument(
'--description',
metavar='<description>',
- help=_("Set subnet pool description")
+ help=_("Set subnet pool description"),
)
parser.add_argument(
'--default-quota',
type=int,
metavar='<num-ip-addresses>',
- help=_("Set default per-project quota for this subnet pool "
- "as the number of IP addresses that can be allocated "
- "from the subnet pool")),
+ help=_(
+ "Set default per-project quota for this subnet pool "
+ "as the number of IP addresses that can be allocated "
+ "from the subnet pool"
+ ),
+ ),
_tag.add_tag_option_to_parser_for_set(parser, _('subnet pool'))
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
- obj = client.find_subnet_pool(parsed_args.subnet_pool,
- ignore_missing=False)
+ obj = client.find_subnet_pool(
+ parsed_args.subnet_pool, ignore_missing=False
+ )
attrs = _get_attrs(self.app.client_manager, parsed_args)
@@ -414,7 +451,8 @@ class SetSubnetPool(common.NeutronCommandWithExtraArgs):
attrs['prefixes'].extend(obj.prefixes)
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
if attrs:
client.update_subnet_pool(obj, **attrs)
@@ -430,15 +468,14 @@ class ShowSubnetPool(command.ShowOne):
parser.add_argument(
'subnet_pool',
metavar='<subnet-pool>',
- help=_("Subnet pool to display (name or ID)")
+ help=_("Subnet pool to display (name or ID)"),
)
return parser
def take_action(self, parsed_args):
client = self.app.client_manager.network
obj = client.find_subnet_pool(
- parsed_args.subnet_pool,
- ignore_missing=False
+ parsed_args.subnet_pool, ignore_missing=False
)
display_columns, columns = _get_columns(obj)
data = utils.get_item_properties(obj, columns, formatters=_formatters)
@@ -453,7 +490,7 @@ class UnsetSubnetPool(command.Command):
parser.add_argument(
'subnet_pool',
metavar="<subnet-pool>",
- help=_("Subnet pool to modify (name or ID)")
+ help=_("Subnet pool to modify (name or ID)"),
)
_tag.add_tag_option_to_parser_for_unset(parser, _('subnet pool'))
return parser
@@ -461,6 +498,7 @@ class UnsetSubnetPool(command.Command):
def take_action(self, parsed_args):
client = self.app.client_manager.network
obj = client.find_subnet_pool(
- parsed_args.subnet_pool, ignore_missing=False)
+ parsed_args.subnet_pool, ignore_missing=False
+ )
# tags is a subresource and it needs to be updated separately.
_tag.update_tags_for_unset(client, obj, parsed_args)
diff --git a/openstackclient/tests/functional/network/v2/common.py b/openstackclient/tests/functional/network/v2/common.py
index a9c5b830..afdf5d70 100644
--- a/openstackclient/tests/functional/network/v2/common.py
+++ b/openstackclient/tests/functional/network/v2/common.py
@@ -40,34 +40,43 @@ class NetworkTagTests(NetworkTests):
# Network create with no options
name1 = self._create_resource_and_tag_check('', [])
# Network create with tags
- name2 = self._create_resource_and_tag_check('--tag red --tag blue',
- ['red', 'blue'])
+ name2 = self._create_resource_and_tag_check(
+ '--tag red --tag blue', ['red', 'blue']
+ )
# Network create with no tag explicitly
name3 = self._create_resource_and_tag_check('--no-tag', [])
- self._set_resource_and_tag_check('set', name1, '--tag red --tag green',
- ['red', 'green'])
+ self._set_resource_and_tag_check(
+ 'set', name1, '--tag red --tag green', ['red', 'green']
+ )
- list_expected = ((name1, ['red', 'green']),
- (name2, ['red', 'blue']),
- (name3, []))
+ list_expected = (
+ (name1, ['red', 'green']),
+ (name2, ['red', 'blue']),
+ (name3, []),
+ )
self._list_tag_check(auth_project_id, list_expected)
- self._set_resource_and_tag_check('set', name1, '--tag blue',
- ['red', 'green', 'blue'])
self._set_resource_and_tag_check(
- 'set', name1,
+ 'set', name1, '--tag blue', ['red', 'green', 'blue']
+ )
+ self._set_resource_and_tag_check(
+ 'set',
+ name1,
'--no-tag --tag yellow --tag orange --tag purple',
- ['yellow', 'orange', 'purple'])
- self._set_resource_and_tag_check('unset', name1, '--tag yellow',
- ['orange', 'purple'])
+ ['yellow', 'orange', 'purple'],
+ )
+ self._set_resource_and_tag_check(
+ 'unset', name1, '--tag yellow', ['orange', 'purple']
+ )
self._set_resource_and_tag_check('unset', name1, '--all-tag', [])
self._set_resource_and_tag_check('set', name2, '--no-tag', [])
def _list_tag_check(self, project_id, expected):
cmd_output = self.openstack(
- '{} list --long --project {}'.format(self.base_command,
- project_id),
+ '{} list --long --project {}'.format(
+ self.base_command, project_id
+ ),
parse_output=True,
)
for name, tags in expected:
@@ -84,7 +93,8 @@ class NetworkTagTests(NetworkTests):
name = uuid.uuid4().hex
cmd_output = self._create_resource_for_tag_test(name, args)
self.addCleanup(
- self.openstack, '{} delete {}'.format(self.base_command, name))
+ self.openstack, '{} delete {}'.format(self.base_command, name)
+ )
self.assertIsNotNone(cmd_output["id"])
self.assertEqual(set(expected), set(cmd_output['tags']))
return name
diff --git a/openstackclient/tests/functional/network/v2/test_address_group.py b/openstackclient/tests/functional/network/v2/test_address_group.py
index 17ab2362..e3fb2eae 100644
--- a/openstackclient/tests/functional/network/v2/test_address_group.py
+++ b/openstackclient/tests/functional/network/v2/test_address_group.py
@@ -30,8 +30,7 @@ class AddressGroupTests(common.NetworkTests):
"""Test create, delete multiple"""
name1 = uuid.uuid4().hex
cmd_output = self.openstack(
- 'address group create ' +
- name1,
+ 'address group create ' + name1,
parse_output=True,
)
self.assertEqual(
@@ -41,8 +40,7 @@ class AddressGroupTests(common.NetworkTests):
name2 = uuid.uuid4().hex
cmd_output = self.openstack(
- 'address group create ' +
- name2,
+ 'address group create ' + name2,
parse_output=True,
)
self.assertEqual(
@@ -81,8 +79,7 @@ class AddressGroupTests(common.NetworkTests):
name1 = uuid.uuid4().hex
cmd_output = self.openstack(
- 'address group create ' +
- name1,
+ 'address group create ' + name1,
parse_output=True,
)
self.addCleanup(self.openstack, 'address group delete ' + name1)
@@ -93,9 +90,11 @@ class AddressGroupTests(common.NetworkTests):
name2 = uuid.uuid4().hex
cmd_output = self.openstack(
- 'address group create ' +
- '--project ' + demo_project_id +
- ' ' + name2,
+ 'address group create '
+ + '--project '
+ + demo_project_id
+ + ' '
+ + name2,
parse_output=True,
)
self.addCleanup(self.openstack, 'address group delete ' + name2)
@@ -115,8 +114,7 @@ class AddressGroupTests(common.NetworkTests):
# Test list --project
cmd_output = self.openstack(
- 'address group list ' +
- '--project ' + demo_project_id,
+ 'address group list ' + '--project ' + demo_project_id,
parse_output=True,
)
names = [x["Name"] for x in cmd_output]
@@ -125,8 +123,7 @@ class AddressGroupTests(common.NetworkTests):
# Test list --name
cmd_output = self.openstack(
- 'address group list ' +
- '--name ' + name1,
+ 'address group list ' + '--name ' + name1,
parse_output=True,
)
names = [x["Name"] for x in cmd_output]
@@ -138,10 +135,10 @@ class AddressGroupTests(common.NetworkTests):
name = uuid.uuid4().hex
newname = name + "_"
cmd_output = self.openstack(
- 'address group create ' +
- '--description aaaa ' +
- '--address 10.0.0.1 --address 2001::/16 ' +
- name,
+ 'address group create '
+ + '--description aaaa '
+ + '--address 10.0.0.1 --address 2001::/16 '
+ + name,
parse_output=True,
)
self.addCleanup(self.openstack, 'address group delete ' + newname)
@@ -151,18 +148,19 @@ class AddressGroupTests(common.NetworkTests):
# Test set name, description and address
raw_output = self.openstack(
- 'address group set ' +
- '--name ' + newname + ' ' +
- '--description bbbb ' +
- '--address 10.0.0.2 --address 192.0.0.0/8 ' +
- name,
+ 'address group set '
+ + '--name '
+ + newname
+ + ' '
+ + '--description bbbb '
+ + '--address 10.0.0.2 --address 192.0.0.0/8 '
+ + name,
)
self.assertOutput('', raw_output)
# Show the updated address group
cmd_output = self.openstack(
- 'address group show ' +
- newname,
+ 'address group show ' + newname,
parse_output=True,
)
self.assertEqual(newname, cmd_output['name'])
@@ -171,16 +169,15 @@ class AddressGroupTests(common.NetworkTests):
# Test unset address
raw_output = self.openstack(
- 'address group unset ' +
- '--address 10.0.0.1 --address 2001::/16 ' +
- '--address 10.0.0.2 --address 192.0.0.0/8 ' +
- newname,
+ 'address group unset '
+ + '--address 10.0.0.1 --address 2001::/16 '
+ + '--address 10.0.0.2 --address 192.0.0.0/8 '
+ + newname,
)
self.assertEqual('', raw_output)
cmd_output = self.openstack(
- 'address group show ' +
- newname,
+ 'address group show ' + newname,
parse_output=True,
)
self.assertEqual(0, len(cmd_output['addresses']))
diff --git a/openstackclient/tests/functional/network/v2/test_address_scope.py b/openstackclient/tests/functional/network/v2/test_address_scope.py
index 8ebb9522..48957a7e 100644
--- a/openstackclient/tests/functional/network/v2/test_address_scope.py
+++ b/openstackclient/tests/functional/network/v2/test_address_scope.py
@@ -33,8 +33,7 @@ class AddressScopeTests(common.NetworkTests):
"""Test create, delete multiple"""
name1 = uuid.uuid4().hex
cmd_output = self.openstack(
- 'address scope create ' +
- name1,
+ 'address scope create ' + name1,
parse_output=True,
)
self.assertEqual(
@@ -46,8 +45,7 @@ class AddressScopeTests(common.NetworkTests):
name2 = uuid.uuid4().hex
cmd_output = self.openstack(
- 'address scope create ' +
- name2,
+ 'address scope create ' + name2,
parse_output=True,
)
self.assertEqual(
@@ -64,10 +62,7 @@ class AddressScopeTests(common.NetworkTests):
"""Test create defaults, list filters, delete"""
name1 = uuid.uuid4().hex
cmd_output = self.openstack(
- 'address scope create ' +
- '--ip-version 4 ' +
- '--share ' +
- name1,
+ 'address scope create ' + '--ip-version 4 ' + '--share ' + name1,
parse_output=True,
)
self.addCleanup(self.openstack, 'address scope delete ' + name1)
@@ -83,10 +78,10 @@ class AddressScopeTests(common.NetworkTests):
name2 = uuid.uuid4().hex
cmd_output = self.openstack(
- 'address scope create ' +
- '--ip-version 6 ' +
- '--no-share ' +
- name2,
+ 'address scope create '
+ + '--ip-version 6 '
+ + '--no-share '
+ + name2,
parse_output=True,
)
self.addCleanup(self.openstack, 'address scope delete ' + name2)
@@ -132,10 +127,7 @@ class AddressScopeTests(common.NetworkTests):
name = uuid.uuid4().hex
newname = name + "_"
cmd_output = self.openstack(
- 'address scope create ' +
- '--ip-version 4 ' +
- '--no-share ' +
- name,
+ 'address scope create ' + '--ip-version 4 ' + '--no-share ' + name,
parse_output=True,
)
self.addCleanup(self.openstack, 'address scope delete ' + newname)
@@ -150,16 +142,12 @@ class AddressScopeTests(common.NetworkTests):
self.assertFalse(cmd_output['shared'])
raw_output = self.openstack(
- 'address scope set ' +
- '--name ' + newname +
- ' --share ' +
- name,
+ 'address scope set ' + '--name ' + newname + ' --share ' + name,
)
self.assertOutput('', raw_output)
cmd_output = self.openstack(
- 'address scope show ' +
- newname,
+ 'address scope show ' + newname,
parse_output=True,
)
self.assertEqual(
diff --git a/openstackclient/tests/functional/network/v2/test_floating_ip.py b/openstackclient/tests/functional/network/v2/test_floating_ip.py
index 871cab2d..9f298250 100644
--- a/openstackclient/tests/functional/network/v2/test_floating_ip.py
+++ b/openstackclient/tests/functional/network/v2/test_floating_ip.py
@@ -29,17 +29,14 @@ class FloatingIpTests(common.NetworkTests):
# Create a network for the floating ip
json_output = cls.openstack(
- 'network create ' +
- '--external ' +
- cls.EXTERNAL_NETWORK_NAME,
+ 'network create ' + '--external ' + cls.EXTERNAL_NETWORK_NAME,
parse_output=True,
)
cls.external_network_id = json_output["id"]
# Create a private network for the port
json_output = cls.openstack(
- 'network create ' +
- cls.PRIVATE_NETWORK_NAME,
+ 'network create ' + cls.PRIVATE_NETWORK_NAME,
parse_output=True,
)
cls.private_network_id = json_output["id"]
@@ -49,9 +46,10 @@ class FloatingIpTests(common.NetworkTests):
try:
if cls.haz_network:
del_output = cls.openstack(
- 'network delete ' +
- cls.EXTERNAL_NETWORK_NAME + ' ' +
- cls.PRIVATE_NETWORK_NAME
+ 'network delete '
+ + cls.EXTERNAL_NETWORK_NAME
+ + ' '
+ + cls.PRIVATE_NETWORK_NAME
)
cls.assertOutput('', del_output)
finally:
@@ -76,23 +74,27 @@ class FloatingIpTests(common.NetworkTests):
# try 4 times
for i in range(4):
# Make a random subnet
- subnet = ".".join(map(
- str,
- (random.randint(0, 223) for _ in range(3))
- )) + ".0/26"
+ subnet = (
+ ".".join(map(str, (random.randint(0, 223) for _ in range(3))))
+ + ".0/26"
+ )
try:
# Create a subnet for the network
json_output = self.openstack(
- 'subnet create ' +
- '--network ' + network_name + ' ' +
- '--subnet-range ' + subnet + ' ' +
- subnet_name,
+ 'subnet create '
+ + '--network '
+ + network_name
+ + ' '
+ + '--subnet-range '
+ + subnet
+ + ' '
+ + subnet_name,
parse_output=True,
)
self.assertIsNotNone(json_output["id"])
subnet_id = json_output["id"]
except Exception:
- if (i == 3):
+ if i == 3:
# raise the exception at the last time
raise
pass
@@ -106,15 +108,14 @@ class FloatingIpTests(common.NetworkTests):
# Subnets must exist even if not directly referenced here
ext_subnet_id = self._create_subnet(
- self.EXTERNAL_NETWORK_NAME,
- "ext-test-delete"
+ self.EXTERNAL_NETWORK_NAME, "ext-test-delete"
)
self.addCleanup(self.openstack, 'subnet delete ' + ext_subnet_id)
json_output = self.openstack(
- 'floating ip create ' +
- '--description aaaa ' +
- self.EXTERNAL_NETWORK_NAME,
+ 'floating ip create '
+ + '--description aaaa '
+ + self.EXTERNAL_NETWORK_NAME,
parse_output=True,
)
self.assertIsNotNone(json_output["id"])
@@ -125,9 +126,9 @@ class FloatingIpTests(common.NetworkTests):
)
json_output = self.openstack(
- 'floating ip create ' +
- '--description bbbb ' +
- self.EXTERNAL_NETWORK_NAME,
+ 'floating ip create '
+ + '--description bbbb '
+ + self.EXTERNAL_NETWORK_NAME,
parse_output=True,
)
self.assertIsNotNone(json_output["id"])
@@ -148,15 +149,14 @@ class FloatingIpTests(common.NetworkTests):
# Subnets must exist even if not directly referenced here
ext_subnet_id = self._create_subnet(
- self.EXTERNAL_NETWORK_NAME,
- "ext-test-delete"
+ self.EXTERNAL_NETWORK_NAME, "ext-test-delete"
)
self.addCleanup(self.openstack, 'subnet delete ' + ext_subnet_id)
json_output = self.openstack(
- 'floating ip create ' +
- '--description aaaa ' +
- self.EXTERNAL_NETWORK_NAME,
+ 'floating ip create '
+ + '--description aaaa '
+ + self.EXTERNAL_NETWORK_NAME,
parse_output=True,
)
self.assertIsNotNone(json_output["id"])
@@ -170,9 +170,9 @@ class FloatingIpTests(common.NetworkTests):
fip1 = json_output["floating_ip_address"]
json_output = self.openstack(
- 'floating ip create ' +
- '--description bbbb ' +
- self.EXTERNAL_NETWORK_NAME,
+ 'floating ip create '
+ + '--description bbbb '
+ + self.EXTERNAL_NETWORK_NAME,
parse_output=True,
)
self.assertIsNotNone(json_output["id"])
@@ -191,8 +191,8 @@ class FloatingIpTests(common.NetworkTests):
parse_output=True,
)
fip_map = {
- item.get('ID'):
- item.get('Floating IP Address') for item in json_output
+ item.get('ID'): item.get('Floating IP Address')
+ for item in json_output
}
# self.assertEqual(item_map, json_output)
self.assertIn(ip1, fip_map.keys())
@@ -202,13 +202,12 @@ class FloatingIpTests(common.NetworkTests):
# Test list --long
json_output = self.openstack(
- 'floating ip list ' +
- '--long',
+ 'floating ip list ' + '--long',
parse_output=True,
)
fip_map = {
- item.get('ID'):
- item.get('Floating IP Address') for item in json_output
+ item.get('ID'): item.get('Floating IP Address')
+ for item in json_output
}
self.assertIn(ip1, fip_map.keys())
self.assertIn(ip2, fip_map.keys())
@@ -223,8 +222,7 @@ class FloatingIpTests(common.NetworkTests):
# TODO(dtroyer): add more filter tests
json_output = self.openstack(
- 'floating ip show ' +
- ip1,
+ 'floating ip show ' + ip1,
parse_output=True,
)
self.assertIsNotNone(json_output["id"])
@@ -247,13 +245,11 @@ class FloatingIpTests(common.NetworkTests):
# Subnets must exist even if not directly referenced here
ext_subnet_id = self._create_subnet(
- self.EXTERNAL_NETWORK_NAME,
- "ext-test-delete"
+ self.EXTERNAL_NETWORK_NAME, "ext-test-delete"
)
self.addCleanup(self.openstack, 'subnet delete ' + ext_subnet_id)
priv_subnet_id = self._create_subnet(
- self.PRIVATE_NETWORK_NAME,
- "priv-test-delete"
+ self.PRIVATE_NETWORK_NAME, "priv-test-delete"
)
self.addCleanup(self.openstack, 'subnet delete ' + priv_subnet_id)
@@ -261,9 +257,9 @@ class FloatingIpTests(common.NetworkTests):
self.PORT_NAME = uuid.uuid4().hex
json_output = self.openstack(
- 'floating ip create ' +
- '--description aaaa ' +
- self.EXTERNAL_NETWORK_NAME,
+ 'floating ip create '
+ + '--description aaaa '
+ + self.EXTERNAL_NETWORK_NAME,
parse_output=True,
)
self.assertIsNotNone(json_output["id"])
@@ -275,33 +271,34 @@ class FloatingIpTests(common.NetworkTests):
)
json_output = self.openstack(
- 'port create ' +
- '--network ' + self.PRIVATE_NETWORK_NAME + ' ' +
- '--fixed-ip subnet=' + priv_subnet_id + ' ' +
- self.PORT_NAME,
+ 'port create '
+ + '--network '
+ + self.PRIVATE_NETWORK_NAME
+ + ' '
+ + '--fixed-ip subnet='
+ + priv_subnet_id
+ + ' '
+ + self.PORT_NAME,
parse_output=True,
)
self.assertIsNotNone(json_output["id"])
port_id = json_output["id"]
json_output = self.openstack(
- 'router create ' +
- self.ROUTER,
+ 'router create ' + self.ROUTER,
parse_output=True,
)
self.assertIsNotNone(json_output["id"])
self.addCleanup(self.openstack, 'router delete ' + self.ROUTER)
- self.openstack(
- 'router add port ' +
- self.ROUTER + ' ' +
- port_id
- )
+ self.openstack('router add port ' + self.ROUTER + ' ' + port_id)
self.openstack(
- 'router set ' +
- '--external-gateway ' + self.EXTERNAL_NETWORK_NAME + ' ' +
- self.ROUTER
+ 'router set '
+ + '--external-gateway '
+ + self.EXTERNAL_NETWORK_NAME
+ + ' '
+ + self.ROUTER
)
self.addCleanup(
self.openstack,
@@ -312,19 +309,14 @@ class FloatingIpTests(common.NetworkTests):
'router remove port ' + self.ROUTER + ' ' + port_id,
)
- self.openstack(
- 'floating ip set ' +
- '--port ' + port_id + ' ' +
- ip1
- )
+ self.openstack('floating ip set ' + '--port ' + port_id + ' ' + ip1)
self.addCleanup(
self.openstack,
'floating ip unset --port ' + ip1,
)
json_output = self.openstack(
- 'floating ip show ' +
- ip1,
+ 'floating ip show ' + ip1,
parse_output=True,
)
diff --git a/openstackclient/tests/functional/network/v2/test_ip_availability.py b/openstackclient/tests/functional/network/v2/test_ip_availability.py
index 6697ed36..643f0355 100644
--- a/openstackclient/tests/functional/network/v2/test_ip_availability.py
+++ b/openstackclient/tests/functional/network/v2/test_ip_availability.py
@@ -26,15 +26,14 @@ class IPAvailabilityTests(common.NetworkTests):
cls.NETWORK_NAME = uuid.uuid4().hex
# Create a network for the subnet
- cls.openstack(
- 'network create ' +
- cls.NETWORK_NAME
- )
+ cls.openstack('network create ' + cls.NETWORK_NAME)
cmd_output = cls.openstack(
- 'subnet create ' +
- '--network ' + cls.NETWORK_NAME + ' ' +
- '--subnet-range 10.10.10.0/24 ' +
- cls.NAME,
+ 'subnet create '
+ + '--network '
+ + cls.NETWORK_NAME
+ + ' '
+ + '--subnet-range 10.10.10.0/24 '
+ + cls.NAME,
parse_output=True,
)
cls.assertOutput(cls.NAME, cmd_output['name'])
@@ -43,13 +42,9 @@ class IPAvailabilityTests(common.NetworkTests):
def tearDownClass(cls):
try:
if cls.haz_network:
- raw_subnet = cls.openstack(
- 'subnet delete ' +
- cls.NAME
- )
+ raw_subnet = cls.openstack('subnet delete ' + cls.NAME)
raw_network = cls.openstack(
- 'network delete ' +
- cls.NETWORK_NAME
+ 'network delete ' + cls.NETWORK_NAME
)
cls.assertOutput('', raw_subnet)
cls.assertOutput('', raw_network)
@@ -66,7 +61,8 @@ class IPAvailabilityTests(common.NetworkTests):
"""Test ip availability list"""
cmd_output = self.openstack(
'ip availability list',
- parse_output=True,)
+ parse_output=True,
+ )
names = [x['Network Name'] for x in cmd_output]
self.assertIn(self.NETWORK_NAME, names)
@@ -74,7 +70,8 @@ class IPAvailabilityTests(common.NetworkTests):
"""Test ip availability show"""
cmd_output = self.openstack(
'ip availability show ' + self.NETWORK_NAME,
- parse_output=True,)
+ parse_output=True,
+ )
self.assertEqual(
self.NETWORK_NAME,
cmd_output['network_name'],
diff --git a/openstackclient/tests/functional/network/v2/test_l3_conntrack_helper.py b/openstackclient/tests/functional/network/v2/test_l3_conntrack_helper.py
index 2563bcf9..f899b041 100644
--- a/openstackclient/tests/functional/network/v2/test_l3_conntrack_helper.py
+++ b/openstackclient/tests/functional/network/v2/test_l3_conntrack_helper.py
@@ -17,7 +17,6 @@ from openstackclient.tests.functional.network.v2 import common
class L3ConntrackHelperTests(common.NetworkTests):
-
def setUp(self):
super(L3ConntrackHelperTests, self).setUp()
# Nothing in this class works with Nova Network
@@ -45,7 +44,8 @@ class L3ConntrackHelperTests(common.NetworkTests):
output = self.openstack(
'network l3 conntrack helper create %(router)s '
'--helper %(helper)s --protocol %(protocol)s '
- '--port %(port)s ' % {
+ '--port %(port)s '
+ % {
'router': router_id,
'helper': helper['helper'],
'protocol': helper['protocol'],
@@ -63,15 +63,8 @@ class L3ConntrackHelperTests(common.NetworkTests):
"""Test create, delete multiple"""
helpers = [
- {
- 'helper': 'tftp',
- 'protocol': 'udp',
- 'port': 69
- }, {
- 'helper': 'ftp',
- 'protocol': 'tcp',
- 'port': 21
- }
+ {'helper': 'tftp', 'protocol': 'udp', 'port': 69},
+ {'helper': 'ftp', 'protocol': 'tcp', 'port': 21},
]
router_id = self._create_router()
created_helpers = self._create_helpers(router_id, helpers)
@@ -79,32 +72,18 @@ class L3ConntrackHelperTests(common.NetworkTests):
raw_output = self.openstack(
'--debug network l3 conntrack helper delete %(router)s '
- '%(ct_ids)s' % {
- 'router': router_id, 'ct_ids': ct_ids})
+ '%(ct_ids)s' % {'router': router_id, 'ct_ids': ct_ids}
+ )
self.assertOutput('', raw_output)
def test_l3_conntrack_helper_list(self):
helpers = [
- {
- 'helper': 'tftp',
- 'protocol': 'udp',
- 'port': 69
- }, {
- 'helper': 'ftp',
- 'protocol': 'tcp',
- 'port': 21
- }
+ {'helper': 'tftp', 'protocol': 'udp', 'port': 69},
+ {'helper': 'ftp', 'protocol': 'tcp', 'port': 21},
]
expected_helpers = [
- {
- 'Helper': 'tftp',
- 'Protocol': 'udp',
- 'Port': 69
- }, {
- 'Helper': 'ftp',
- 'Protocol': 'tcp',
- 'Port': 21
- }
+ {'Helper': 'tftp', 'Protocol': 'udp', 'Port': 69},
+ {'Helper': 'ftp', 'Protocol': 'tcp', 'Port': 21},
]
router_id = self._create_router()
self._create_helpers(router_id, helpers)
@@ -118,15 +97,13 @@ class L3ConntrackHelperTests(common.NetworkTests):
self.assertIn(ct, expected_helpers)
def test_l3_conntrack_helper_set_and_show(self):
- helper = {
- 'helper': 'tftp',
- 'protocol': 'udp',
- 'port': 69}
+ helper = {'helper': 'tftp', 'protocol': 'udp', 'port': 69}
router_id = self._create_router()
created_helper = self._create_helpers(router_id, [helper])[0]
output = self.openstack(
'network l3 conntrack helper show %(router_id)s %(ct_id)s '
- '-f json' % {
+ '-f json'
+ % {
'router_id': router_id,
'ct_id': created_helper['id'],
},
@@ -138,15 +115,19 @@ class L3ConntrackHelperTests(common.NetworkTests):
raw_output = self.openstack(
'network l3 conntrack helper set %(router_id)s %(ct_id)s '
- '--port %(port)s ' % {
+ '--port %(port)s '
+ % {
'router_id': router_id,
'ct_id': created_helper['id'],
- 'port': helper['port'] + 1})
+ 'port': helper['port'] + 1,
+ }
+ )
self.assertOutput('', raw_output)
output = self.openstack(
'network l3 conntrack helper show %(router_id)s %(ct_id)s '
- '-f json' % {
+ '-f json'
+ % {
'router_id': router_id,
'ct_id': created_helper['id'],
},
diff --git a/openstackclient/tests/functional/network/v2/test_local_ip.py b/openstackclient/tests/functional/network/v2/test_local_ip.py
index b5672b6d..921dd13d 100644
--- a/openstackclient/tests/functional/network/v2/test_local_ip.py
+++ b/openstackclient/tests/functional/network/v2/test_local_ip.py
@@ -32,8 +32,7 @@ class LocalIPTests(common.NetworkTests):
"""Test create, delete multiple"""
name1 = uuid.uuid4().hex
cmd_output = self.openstack(
- 'local ip create ' +
- name1,
+ 'local ip create ' + name1,
parse_output=True,
)
self.assertEqual(
@@ -43,8 +42,7 @@ class LocalIPTests(common.NetworkTests):
name2 = uuid.uuid4().hex
cmd_output = self.openstack(
- 'local ip create ' +
- name2,
+ 'local ip create ' + name2,
parse_output=True,
)
self.assertEqual(
@@ -83,8 +81,7 @@ class LocalIPTests(common.NetworkTests):
name1 = uuid.uuid4().hex
cmd_output = self.openstack(
- 'local ip create ' +
- name1,
+ 'local ip create ' + name1,
parse_output=True,
)
self.addCleanup(self.openstack, 'local ip delete ' + name1)
@@ -95,9 +92,7 @@ class LocalIPTests(common.NetworkTests):
name2 = uuid.uuid4().hex
cmd_output = self.openstack(
- 'local ip create ' +
- '--project ' + demo_project_id +
- ' ' + name2,
+ 'local ip create ' + '--project ' + demo_project_id + ' ' + name2,
parse_output=True,
)
self.addCleanup(self.openstack, 'local ip delete ' + name2)
@@ -117,8 +112,7 @@ class LocalIPTests(common.NetworkTests):
# Test list --project
cmd_output = self.openstack(
- 'local ip list ' +
- '--project ' + demo_project_id,
+ 'local ip list ' + '--project ' + demo_project_id,
parse_output=True,
)
names = [x["Name"] for x in cmd_output]
@@ -127,8 +121,7 @@ class LocalIPTests(common.NetworkTests):
# Test list --name
cmd_output = self.openstack(
- 'local ip list ' +
- '--name ' + name1,
+ 'local ip list ' + '--name ' + name1,
parse_output=True,
)
names = [x["Name"] for x in cmd_output]
@@ -140,9 +133,7 @@ class LocalIPTests(common.NetworkTests):
name = uuid.uuid4().hex
newname = name + "_"
cmd_output = self.openstack(
- 'local ip create ' +
- '--description aaaa ' +
- name,
+ 'local ip create ' + '--description aaaa ' + name,
parse_output=True,
)
self.addCleanup(self.openstack, 'local ip delete ' + newname)
@@ -151,17 +142,18 @@ class LocalIPTests(common.NetworkTests):
# Test set name and description
raw_output = self.openstack(
- 'local ip set ' +
- '--name ' + newname + ' ' +
- '--description bbbb ' +
- name,
+ 'local ip set '
+ + '--name '
+ + newname
+ + ' '
+ + '--description bbbb '
+ + name,
)
self.assertOutput('', raw_output)
# Show the updated local ip
cmd_output = self.openstack(
- 'local ip show ' +
- newname,
+ 'local ip show ' + newname,
parse_output=True,
)
self.assertEqual(newname, cmd_output['name'])
diff --git a/openstackclient/tests/functional/network/v2/test_network.py b/openstackclient/tests/functional/network/v2/test_network.py
index 20be2d1a..16886b62 100644
--- a/openstackclient/tests/functional/network/v2/test_network.py
+++ b/openstackclient/tests/functional/network/v2/test_network.py
@@ -34,9 +34,7 @@ class NetworkTests(common.NetworkTagTests):
# Network create with minimum options
name1 = uuid.uuid4().hex
cmd_output = self.openstack(
- 'network create ' +
- '--subnet 1.2.3.4/28 ' +
- name1,
+ 'network create ' + '--subnet 1.2.3.4/28 ' + name1,
parse_output=True,
)
self.addCleanup(self.openstack, 'network delete ' + name1)
@@ -54,10 +52,7 @@ class NetworkTests(common.NetworkTagTests):
# Network create with more options
name2 = uuid.uuid4().hex
cmd_output = self.openstack(
- 'network create ' +
- '--subnet 1.2.4.4/28 ' +
- '--share ' +
- name2,
+ 'network create ' + '--subnet 1.2.4.4/28 ' + '--share ' + name2,
parse_output=True,
)
self.addCleanup(self.openstack, 'network delete ' + name2)
@@ -105,8 +100,7 @@ class NetworkTests(common.NetworkTagTests):
# Network create with no options
name1 = uuid.uuid4().hex
cmd_output = self.openstack(
- 'network create ' +
- name1,
+ 'network create ' + name1,
parse_output=True,
)
self.addCleanup(self.openstack, 'network delete ' + name1)
@@ -136,9 +130,7 @@ class NetworkTests(common.NetworkTagTests):
# Network create with options
name2 = uuid.uuid4().hex
cmd_output = self.openstack(
- 'network create ' +
- '--project demo ' +
- name2,
+ 'network create ' + '--project demo ' + name2,
parse_output=True,
)
self.addCleanup(self.openstack, 'network delete ' + name2)
@@ -159,9 +151,7 @@ class NetworkTests(common.NetworkTagTests):
name1 = uuid.uuid4().hex
cmd_output = self.openstack(
- 'network create ' +
- '--subnet 9.8.7.6/28 ' +
- name1,
+ 'network create ' + '--subnet 9.8.7.6/28 ' + name1,
parse_output=True,
)
self.assertIsNotNone(cmd_output["id"])
@@ -172,9 +162,7 @@ class NetworkTests(common.NetworkTagTests):
name2 = uuid.uuid4().hex
cmd_output = self.openstack(
- 'network create ' +
- '--subnet 8.7.6.5/28 ' +
- name2,
+ 'network create ' + '--subnet 8.7.6.5/28 ' + name2,
parse_output=True,
)
self.assertIsNotNone(cmd_output["id"])
@@ -190,9 +178,7 @@ class NetworkTests(common.NetworkTagTests):
name1 = uuid.uuid4().hex
cmd_output = self.openstack(
- 'network create ' +
- '--description aaaa ' +
- name1,
+ 'network create ' + '--description aaaa ' + name1,
parse_output=True,
)
self.assertIsNotNone(cmd_output["id"])
@@ -203,9 +189,7 @@ class NetworkTests(common.NetworkTagTests):
name2 = uuid.uuid4().hex
cmd_output = self.openstack(
- 'network create ' +
- '--description bbbb ' +
- name2,
+ 'network create ' + '--description bbbb ' + name2,
parse_output=True,
)
self.assertIsNotNone(cmd_output["id"])
@@ -225,9 +209,7 @@ class NetworkTests(common.NetworkTagTests):
else:
network_options = '--subnet 3.4.5.6/28 '
cmd_output = self.openstack(
- 'network create ' +
- network_options +
- name1,
+ 'network create ' + network_options + name1,
parse_output=True,
)
self.addCleanup(self.openstack, 'network delete %s' % name1)
@@ -248,9 +230,7 @@ class NetworkTests(common.NetworkTagTests):
cmd_output["router:external"],
)
self.assertFalse(cmd_output["is_default"])
- self.assertTrue(
- cmd_output["port_security_enabled"]
- )
+ self.assertTrue(cmd_output["port_security_enabled"])
else:
self.assertEqual(
'3.4.5.0/28',
@@ -263,8 +243,7 @@ class NetworkTests(common.NetworkTagTests):
else:
network_options = '--subnet 4.5.6.7/28 '
cmd_output = self.openstack(
- 'network create --share %s%s' %
- (network_options, name2),
+ 'network create --share %s%s' % (network_options, name2),
parse_output=True,
)
self.addCleanup(self.openstack, 'network delete ' + name2)
@@ -385,15 +364,13 @@ class NetworkTests(common.NetworkTagTests):
# Cleanup
# Remove Agent from Network
self.openstack(
- 'network agent remove network --dhcp %s %s' %
- (agent_id, network_id)
+ 'network agent remove network --dhcp %s %s'
+ % (agent_id, network_id)
)
# Assert
col_name = [x["ID"] for x in cmd_output3]
- self.assertIn(
- network_id, col_name
- )
+ self.assertIn(network_id, col_name)
def test_network_set(self):
"""Tests create options, set, show, delete"""
@@ -408,8 +385,7 @@ class NetworkTests(common.NetworkTagTests):
'--no-share '
'--internal '
'--no-default '
- '--enable-port-security %s' %
- name,
+ '--enable-port-security %s' % name,
parse_output=True,
)
self.addCleanup(self.openstack, 'network delete %s' % name)
@@ -429,9 +405,7 @@ class NetworkTests(common.NetworkTagTests):
)
self.assertFalse(cmd_output["is_default"])
- self.assertTrue(
- cmd_output["port_security_enabled"]
- )
+ self.assertTrue(cmd_output["port_security_enabled"])
raw_output = self.openstack(
'network set '
@@ -439,8 +413,7 @@ class NetworkTests(common.NetworkTagTests):
'--disable '
'--share '
'--external '
- '--disable-port-security %s' %
- name
+ '--disable-port-security %s' % name
)
self.assertOutput('', raw_output)
@@ -463,6 +436,4 @@ class NetworkTests(common.NetworkTagTests):
cmd_output["router:external"],
)
self.assertFalse(cmd_output["is_default"])
- self.assertFalse(
- cmd_output["port_security_enabled"]
- )
+ self.assertFalse(cmd_output["port_security_enabled"])
diff --git a/openstackclient/tests/functional/network/v2/test_network_agent.py b/openstackclient/tests/functional/network/v2/test_network_agent.py
index d3e6353e..6ff2c0f0 100644
--- a/openstackclient/tests/functional/network/v2/test_network_agent.py
+++ b/openstackclient/tests/functional/network/v2/test_network_agent.py
@@ -120,8 +120,7 @@ class NetworkAgentListTests(common.NetworkTests):
# Add Agent to Network
self.openstack(
- 'network agent add network --dhcp %s %s' %
- (agent_id, network_id)
+ 'network agent add network --dhcp %s %s' % (agent_id, network_id)
)
# Test network agent list --network
@@ -133,15 +132,13 @@ class NetworkAgentListTests(common.NetworkTests):
# Cleanup
# Remove Agent from Network
self.openstack(
- 'network agent remove network --dhcp %s %s' %
- (agent_id, network_id)
+ 'network agent remove network --dhcp %s %s'
+ % (agent_id, network_id)
)
# Assert
col_name = [x["ID"] for x in cmd_output3]
- self.assertIn(
- agent_id, col_name
- )
+ self.assertIn(agent_id, col_name)
def test_network_agent_list_routers(self):
"""Add agent to router, list agents on router, delete."""
@@ -152,7 +149,8 @@ class NetworkAgentListTests(common.NetworkTests):
name = uuid.uuid4().hex
cmd_output = self.openstack(
'router create %s' % name,
- parse_output=True,)
+ parse_output=True,
+ )
self.addCleanup(self.openstack, 'router delete %s' % name)
# Get router ID
@@ -160,7 +158,8 @@ class NetworkAgentListTests(common.NetworkTests):
# Get l3 agent id
cmd_output = self.openstack(
'network agent list --agent-type l3',
- parse_output=True,)
+ parse_output=True,
+ )
# Check at least one L3 agent is included in the response.
self.assertTrue(cmd_output)
@@ -168,21 +167,25 @@ class NetworkAgentListTests(common.NetworkTests):
# Add router to agent
self.openstack(
- 'network agent add router --l3 %s %s' % (agent_id, router_id))
+ 'network agent add router --l3 %s %s' % (agent_id, router_id)
+ )
# Test router list --agent
cmd_output = self.openstack(
'network agent list --router %s' % router_id,
- parse_output=True,)
+ parse_output=True,
+ )
agent_ids = [x['ID'] for x in cmd_output]
self.assertIn(agent_id, agent_ids)
# Remove router from agent
self.openstack(
- 'network agent remove router --l3 %s %s' % (agent_id, router_id))
+ 'network agent remove router --l3 %s %s' % (agent_id, router_id)
+ )
cmd_output = self.openstack(
'network agent list --router %s' % router_id,
- parse_output=True,)
+ parse_output=True,
+ )
agent_ids = [x['ID'] for x in cmd_output]
self.assertNotIn(agent_id, agent_ids)
diff --git a/openstackclient/tests/functional/network/v2/test_network_flavor.py b/openstackclient/tests/functional/network/v2/test_network_flavor.py
index 2ac0daef..13dc0d5c 100644
--- a/openstackclient/tests/functional/network/v2/test_network_flavor.py
+++ b/openstackclient/tests/functional/network/v2/test_network_flavor.py
@@ -43,14 +43,17 @@ class NetworkFlavorTests(common.NetworkTests):
)
service_profile_id = cmd_output2.get('id')
- self.addCleanup(self.openstack, 'network flavor delete %s' %
- flavor_id)
- self.addCleanup(self.openstack, 'network flavor profile delete %s' %
- service_profile_id)
+ self.addCleanup(self.openstack, 'network flavor delete %s' % flavor_id)
+ self.addCleanup(
+ self.openstack,
+ 'network flavor profile delete %s' % service_profile_id,
+ )
# Add flavor to service profile
self.openstack(
- 'network flavor add profile ' +
- flavor_id + ' ' + service_profile_id
+ 'network flavor add profile '
+ + flavor_id
+ + ' '
+ + service_profile_id
)
cmd_output4 = self.openstack(
@@ -65,8 +68,10 @@ class NetworkFlavorTests(common.NetworkTests):
# Cleanup
# Remove flavor from service profile
self.openstack(
- 'network flavor remove profile ' +
- flavor_id + ' ' + service_profile_id
+ 'network flavor remove profile '
+ + flavor_id
+ + ' '
+ + service_profile_id
)
cmd_output6 = self.openstack(
@@ -112,7 +117,8 @@ class NetworkFlavorTests(common.NetworkTests):
cmd_output['description'],
)
raw_output = self.openstack(
- 'network flavor delete ' + name1 + " " + name2)
+ 'network flavor delete ' + name1 + " " + name2
+ )
self.assertOutput('', raw_output)
def test_network_flavor_list(self):
@@ -160,7 +166,8 @@ class NetworkFlavorTests(common.NetworkTests):
# Test list
cmd_output = self.openstack(
'network flavor list ',
- parse_output=True,)
+ parse_output=True,
+ )
self.assertIsNotNone(cmd_output)
name_list = [item.get('Name') for item in cmd_output]
@@ -197,7 +204,8 @@ class NetworkFlavorTests(common.NetworkTests):
cmd_output = self.openstack(
'network flavor show ' + newname,
- parse_output=True,)
+ parse_output=True,
+ )
self.assertEqual(
newname,
cmd_output['name'],
@@ -222,7 +230,8 @@ class NetworkFlavorTests(common.NetworkTests):
self.addCleanup(self.openstack, "network flavor delete " + name)
cmd_output = self.openstack(
'network flavor show ' + name,
- parse_output=True,)
+ parse_output=True,
+ )
self.assertEqual(
name,
cmd_output['name'],
diff --git a/openstackclient/tests/functional/network/v2/test_network_flavor_profile.py b/openstackclient/tests/functional/network/v2/test_network_flavor_profile.py
index 60fd949b..c6f84f82 100644
--- a/openstackclient/tests/functional/network/v2/test_network_flavor_profile.py
+++ b/openstackclient/tests/functional/network/v2/test_network_flavor_profile.py
@@ -27,9 +27,12 @@ class NetworkFlavorProfileTests(common.NetworkTests):
def test_network_flavor_profile_create(self):
json_output = self.openstack(
- 'network flavor profile create ' +
- '--description ' + self.DESCRIPTION + ' ' +
- '--enable --metainfo ' + self.METAINFO,
+ 'network flavor profile create '
+ + '--description '
+ + self.DESCRIPTION
+ + ' '
+ + '--enable --metainfo '
+ + self.METAINFO,
parse_output=True,
)
ID = json_output.get('id')
@@ -50,10 +53,13 @@ class NetworkFlavorProfileTests(common.NetworkTests):
def test_network_flavor_profile_list(self):
json_output = self.openstack(
- 'network flavor profile create ' +
- '--description ' + self.DESCRIPTION + ' ' +
- '--enable ' +
- '--metainfo ' + self.METAINFO,
+ 'network flavor profile create '
+ + '--description '
+ + self.DESCRIPTION
+ + ' '
+ + '--enable '
+ + '--metainfo '
+ + self.METAINFO,
parse_output=True,
)
ID1 = json_output.get('id')
@@ -69,10 +75,13 @@ class NetworkFlavorProfileTests(common.NetworkTests):
)
json_output = self.openstack(
- 'network flavor profile create ' +
- '--description ' + self.DESCRIPTION + ' ' +
- '--disable ' +
- '--metainfo ' + self.METAINFO,
+ 'network flavor profile create '
+ + '--description '
+ + self.DESCRIPTION
+ + ' '
+ + '--disable '
+ + '--metainfo '
+ + self.METAINFO,
parse_output=True,
)
ID2 = json_output.get('id')
@@ -106,10 +115,13 @@ class NetworkFlavorProfileTests(common.NetworkTests):
def test_network_flavor_profile_set(self):
json_output_1 = self.openstack(
- 'network flavor profile create ' +
- '--description ' + self.DESCRIPTION + ' ' +
- '--enable ' +
- '--metainfo ' + self.METAINFO,
+ 'network flavor profile create '
+ + '--description '
+ + self.DESCRIPTION
+ + ' '
+ + '--enable '
+ + '--metainfo '
+ + self.METAINFO,
parse_output=True,
)
ID = json_output_1.get('id')
@@ -146,10 +158,13 @@ class NetworkFlavorProfileTests(common.NetworkTests):
def test_network_flavor_profile_show(self):
json_output_1 = self.openstack(
- 'network flavor profile create ' +
- '--description ' + self.DESCRIPTION + ' ' +
- '--enable ' +
- '--metainfo ' + self.METAINFO,
+ 'network flavor profile create '
+ + '--description '
+ + self.DESCRIPTION
+ + ' '
+ + '--enable '
+ + '--metainfo '
+ + self.METAINFO,
parse_output=True,
)
ID = json_output_1.get('id')
diff --git a/openstackclient/tests/functional/network/v2/test_network_meter.py b/openstackclient/tests/functional/network/v2/test_network_meter.py
index ea9d289f..aa00e25b 100644
--- a/openstackclient/tests/functional/network/v2/test_network_meter.py
+++ b/openstackclient/tests/functional/network/v2/test_network_meter.py
@@ -38,9 +38,11 @@ class TestMeter(common.NetworkTests):
name2 = uuid.uuid4().hex
description = 'fakedescription'
json_output = self.openstack(
- 'network meter create ' +
- ' --description ' + description + ' ' +
- name1,
+ 'network meter create '
+ + ' --description '
+ + description
+ + ' '
+ + name1,
parse_output=True,
)
self.assertEqual(
@@ -55,9 +57,11 @@ class TestMeter(common.NetworkTests):
)
json_output_2 = self.openstack(
- 'network meter create ' +
- '--description ' + description + ' ' +
- name2,
+ 'network meter create '
+ + '--description '
+ + description
+ + ' '
+ + name2,
parse_output=True,
)
self.assertEqual(
@@ -80,16 +84,13 @@ class TestMeter(common.NetworkTests):
"""Test create, list filters, delete"""
name1 = uuid.uuid4().hex
json_output = self.openstack(
- 'network meter create ' +
- '--description Test1 ' +
- '--share ' +
- name1,
+ 'network meter create '
+ + '--description Test1 '
+ + '--share '
+ + name1,
parse_output=True,
)
- self.addCleanup(
- self.openstack,
- 'network meter delete ' + name1
- )
+ self.addCleanup(self.openstack, 'network meter delete ' + name1)
self.assertEqual(
'Test1',
@@ -99,10 +100,10 @@ class TestMeter(common.NetworkTests):
name2 = uuid.uuid4().hex
json_output_2 = self.openstack(
- 'network meter create ' +
- '--description Test2 ' +
- '--no-share ' +
- name2,
+ 'network meter create '
+ + '--description Test2 '
+ + '--no-share '
+ + name2,
parse_output=True,
)
self.addCleanup(self.openstack, 'network meter delete ' + name2)
@@ -125,9 +126,11 @@ class TestMeter(common.NetworkTests):
name1 = uuid.uuid4().hex
description = 'fakedescription'
json_output = self.openstack(
- 'network meter create ' +
- ' --description ' + description + ' ' +
- name1,
+ 'network meter create '
+ + ' --description '
+ + description
+ + ' '
+ + name1,
parse_output=True,
)
meter_id = json_output.get('id')
diff --git a/openstackclient/tests/functional/network/v2/test_network_meter_rule.py b/openstackclient/tests/functional/network/v2/test_network_meter_rule.py
index ae1bb904..40838855 100644
--- a/openstackclient/tests/functional/network/v2/test_network_meter_rule.py
+++ b/openstackclient/tests/functional/network/v2/test_network_meter_rule.py
@@ -31,8 +31,7 @@ class TestMeterRule(common.NetworkTests):
cls.METER_NAME = uuid.uuid4().hex
json_output = cls.openstack(
- 'network meter create ' +
- cls.METER_NAME,
+ 'network meter create ' + cls.METER_NAME,
parse_output=True,
)
cls.METER_ID = json_output.get('id')
@@ -42,8 +41,7 @@ class TestMeterRule(common.NetworkTests):
try:
if cls.haz_network:
raw_output = cls.openstack(
- 'network meter delete ' +
- cls.METER_ID
+ 'network meter delete ' + cls.METER_ID
)
cls.assertOutput('', raw_output)
finally:
@@ -58,57 +56,44 @@ class TestMeterRule(common.NetworkTests):
def test_meter_rule_delete(self):
"""test create, delete"""
json_output = self.openstack(
- 'network meter rule create ' +
- '--remote-ip-prefix 10.0.0.0/8 ' +
- self.METER_ID,
+ 'network meter rule create '
+ + '--remote-ip-prefix 10.0.0.0/8 '
+ + self.METER_ID,
parse_output=True,
)
rule_id = json_output.get('id')
re_ip = json_output.get('remote_ip_prefix')
- self.addCleanup(
- self.openstack,
- 'network meter rule delete ' + rule_id
- )
+ self.addCleanup(self.openstack, 'network meter rule delete ' + rule_id)
self.assertIsNotNone(re_ip)
self.assertIsNotNone(rule_id)
- self.assertEqual(
- '10.0.0.0/8', re_ip
- )
+ self.assertEqual('10.0.0.0/8', re_ip)
def test_meter_rule_list(self):
"""Test create, list, delete"""
json_output = self.openstack(
- 'network meter rule create ' +
- '--remote-ip-prefix 10.0.0.0/8 ' +
- self.METER_ID,
+ 'network meter rule create '
+ + '--remote-ip-prefix 10.0.0.0/8 '
+ + self.METER_ID,
parse_output=True,
)
rule_id_1 = json_output.get('id')
self.addCleanup(
- self.openstack,
- 'network meter rule delete ' + rule_id_1
- )
- self.assertEqual(
- '10.0.0.0/8',
- json_output.get('remote_ip_prefix')
+ self.openstack, 'network meter rule delete ' + rule_id_1
)
+ self.assertEqual('10.0.0.0/8', json_output.get('remote_ip_prefix'))
json_output_1 = self.openstack(
- 'network meter rule create ' +
- '--remote-ip-prefix 11.0.0.0/8 ' +
- self.METER_ID,
+ 'network meter rule create '
+ + '--remote-ip-prefix 11.0.0.0/8 '
+ + self.METER_ID,
parse_output=True,
)
rule_id_2 = json_output_1.get('id')
self.addCleanup(
- self.openstack,
- 'network meter rule delete ' + rule_id_2
- )
- self.assertEqual(
- '11.0.0.0/8',
- json_output_1.get('remote_ip_prefix')
+ self.openstack, 'network meter rule delete ' + rule_id_2
)
+ self.assertEqual('11.0.0.0/8', json_output_1.get('remote_ip_prefix'))
json_output = self.openstack(
'network meter rule list',
@@ -124,30 +109,21 @@ class TestMeterRule(common.NetworkTests):
def test_meter_rule_show(self):
"""Test create, show, delete"""
json_output = self.openstack(
- 'network meter rule create ' +
- '--remote-ip-prefix 10.0.0.0/8 ' +
- '--egress ' +
- self.METER_ID,
+ 'network meter rule create '
+ + '--remote-ip-prefix 10.0.0.0/8 '
+ + '--egress '
+ + self.METER_ID,
parse_output=True,
)
rule_id = json_output.get('id')
- self.assertEqual(
- 'egress',
- json_output.get('direction')
- )
+ self.assertEqual('egress', json_output.get('direction'))
json_output = self.openstack(
'network meter rule show ' + rule_id,
parse_output=True,
)
- self.assertEqual(
- '10.0.0.0/8',
- json_output.get('remote_ip_prefix')
- )
+ self.assertEqual('10.0.0.0/8', json_output.get('remote_ip_prefix'))
self.assertIsNotNone(rule_id)
- self.addCleanup(
- self.openstack,
- 'network meter rule delete ' + rule_id
- )
+ self.addCleanup(self.openstack, 'network meter rule delete ' + rule_id)
diff --git a/openstackclient/tests/functional/network/v2/test_network_ndp_proxy.py b/openstackclient/tests/functional/network/v2/test_network_ndp_proxy.py
index 588b1f56..62eecf86 100644
--- a/openstackclient/tests/functional/network/v2/test_network_ndp_proxy.py
+++ b/openstackclient/tests/functional/network/v2/test_network_ndp_proxy.py
@@ -14,7 +14,6 @@ from openstackclient.tests.functional.network.v2 import common
class L3NDPProxyTests(common.NetworkTests):
-
def setUp(self):
super().setUp()
# Nothing in this class works with Nova Network
@@ -43,7 +42,8 @@ class L3NDPProxyTests(common.NetworkTests):
json_output = self.openstack(
'subnet pool create %(subnet_p_name)s '
'--address-scope %(address_scope)s '
- '--pool-prefix 2001:db8::/96 --default-prefix-length 112' % {
+ '--pool-prefix 2001:db8::/96 --default-prefix-length 112'
+ % {
'subnet_p_name': self.SUBNET_P_NAME,
'address_scope': self.ADDRESS_SCOPE_ID,
},
@@ -59,7 +59,8 @@ class L3NDPProxyTests(common.NetworkTests):
self.EXT_NET_ID = json_output['id']
json_output = self.openstack(
'subnet create --ip-version 6 --subnet-pool '
- '%(subnet_pool)s --network %(net_id)s %(sub_name)s' % {
+ '%(subnet_pool)s --network %(net_id)s %(sub_name)s'
+ % {
'subnet_pool': self.SUBNET_POOL_ID,
'net_id': self.EXT_NET_ID,
'sub_name': self.EXT_SUB_NAME,
@@ -75,9 +76,9 @@ class L3NDPProxyTests(common.NetworkTests):
self.assertIsNotNone(json_output['id'])
self.ROT_ID = json_output['id']
output = self.openstack(
- 'router set %(router_id)s --external-gateway %(net_id)s' % {
- 'router_id': self.ROT_ID,
- 'net_id': self.EXT_NET_ID})
+ 'router set %(router_id)s --external-gateway %(net_id)s'
+ % {'router_id': self.ROT_ID, 'net_id': self.EXT_NET_ID}
+ )
self.assertEqual('', output)
output = self.openstack('router set --enable-ndp-proxy ' + self.ROT_ID)
self.assertEqual('', output)
@@ -94,7 +95,8 @@ class L3NDPProxyTests(common.NetworkTests):
self.INT_NET_ID = json_output['id']
json_output = self.openstack(
'subnet create --ip-version 6 --subnet-pool '
- '%(subnet_pool)s --network %(net_id)s %(sub_name)s' % {
+ '%(subnet_pool)s --network %(net_id)s %(sub_name)s'
+ % {
'subnet_pool': self.SUBNET_POOL_ID,
'net_id': self.INT_NET_ID,
'sub_name': self.INT_SUB_NAME,
@@ -105,7 +107,8 @@ class L3NDPProxyTests(common.NetworkTests):
self.INT_SUB_ID = json_output['id']
json_output = self.openstack(
'port create --network %(net_id)s '
- '%(port_name)s' % {
+ '%(port_name)s'
+ % {
'net_id': self.INT_NET_ID,
'port_name': self.INT_PORT_NAME,
},
@@ -115,28 +118,33 @@ class L3NDPProxyTests(common.NetworkTests):
self.INT_PORT_ID = json_output['id']
self.INT_PORT_ADDRESS = json_output['fixed_ips'][0]['ip_address']
output = self.openstack(
- 'router add subnet ' + self.ROT_ID + ' ' + self.INT_SUB_ID)
+ 'router add subnet ' + self.ROT_ID + ' ' + self.INT_SUB_ID
+ )
self.assertEqual('', output)
def tearDown(self):
for ndp_proxy in self.created_ndp_proxies:
output = self.openstack(
- 'router ndp proxy delete ' + ndp_proxy['id'])
+ 'router ndp proxy delete ' + ndp_proxy['id']
+ )
self.assertEqual('', output)
output = self.openstack('port delete ' + self.INT_PORT_ID)
self.assertEqual('', output)
output = self.openstack(
- 'router set --disable-ndp-proxy ' + self.ROT_ID)
+ 'router set --disable-ndp-proxy ' + self.ROT_ID
+ )
self.assertEqual('', output)
output = self.openstack(
- 'router remove subnet ' + self.ROT_ID + ' ' + self.INT_SUB_ID)
+ 'router remove subnet ' + self.ROT_ID + ' ' + self.INT_SUB_ID
+ )
self.assertEqual('', output)
output = self.openstack('subnet delete ' + self.INT_SUB_ID)
self.assertEqual('', output)
output = self.openstack('network delete ' + self.INT_NET_ID)
self.assertEqual('', output)
output = self.openstack(
- 'router unset ' + self.ROT_ID + ' ' + '--external-gateway')
+ 'router unset ' + self.ROT_ID + ' ' + '--external-gateway'
+ )
self.assertEqual('', output)
output = self.openstack('router delete ' + self.ROT_ID)
self.assertEqual('', output)
@@ -146,8 +154,9 @@ class L3NDPProxyTests(common.NetworkTests):
self.assertEqual('', output)
output = self.openstack('subnet pool delete ' + self.SUBNET_POOL_ID)
self.assertEqual('', output)
- output = self.openstack('address scope delete ' +
- self.ADDRESS_SCOPE_ID)
+ output = self.openstack(
+ 'address scope delete ' + self.ADDRESS_SCOPE_ID
+ )
self.assertEqual('', output)
super().tearDown()
@@ -155,7 +164,8 @@ class L3NDPProxyTests(common.NetworkTests):
for ndp_proxy in ndp_proxies:
output = self.openstack(
'router ndp proxy create %(router)s --name %(name)s '
- '--port %(port)s --ip-address %(address)s' % {
+ '--port %(port)s --ip-address %(address)s'
+ % {
'router': ndp_proxy['router_id'],
'name': ndp_proxy['name'],
'port': ndp_proxy['port_id'],
@@ -174,7 +184,7 @@ class L3NDPProxyTests(common.NetworkTests):
'name': self.getUniqueString(),
'router_id': self.ROT_ID,
'port_id': self.INT_PORT_ID,
- 'address': self.INT_PORT_ADDRESS
+ 'address': self.INT_PORT_ADDRESS,
}
]
self._create_ndp_proxies(ndp_proxies)
@@ -184,11 +194,13 @@ class L3NDPProxyTests(common.NetworkTests):
'name': self.getUniqueString(),
'router_id': self.ROT_ID,
'port_id': self.INT_PORT_ID,
- 'address': self.INT_PORT_ADDRESS}
+ 'address': self.INT_PORT_ADDRESS,
+ }
self._create_ndp_proxies([ndp_proxies])
ndp_proxy = self.openstack(
'router ndp proxy list',
- parse_output=True,)[0]
+ parse_output=True,
+ )[0]
self.assertEqual(ndp_proxies['name'], ndp_proxy['Name'])
self.assertEqual(ndp_proxies['router_id'], ndp_proxy['Router ID'])
self.assertEqual(ndp_proxies['address'], ndp_proxy['IP Address'])
@@ -198,13 +210,15 @@ class L3NDPProxyTests(common.NetworkTests):
'name': self.getUniqueString(),
'router_id': self.ROT_ID,
'port_id': self.INT_PORT_ID,
- 'address': self.INT_PORT_ADDRESS}
+ 'address': self.INT_PORT_ADDRESS,
+ }
description = 'balala'
self._create_ndp_proxies([ndp_proxies])
ndp_proxy_id = self.created_ndp_proxies[0]['id']
output = self.openstack(
- 'router ndp proxy set --description %s %s' % (
- description, ndp_proxy_id))
+ 'router ndp proxy set --description %s %s'
+ % (description, ndp_proxy_id)
+ )
self.assertEqual('', output)
json_output = self.openstack(
'router ndp proxy show ' + ndp_proxy_id,
diff --git a/openstackclient/tests/functional/network/v2/test_network_qos_policy.py b/openstackclient/tests/functional/network/v2/test_network_qos_policy.py
index b603cf1f..492f6a0a 100644
--- a/openstackclient/tests/functional/network/v2/test_network_qos_policy.py
+++ b/openstackclient/tests/functional/network/v2/test_network_qos_policy.py
@@ -31,21 +31,18 @@ class NetworkQosPolicyTests(common.NetworkTests):
# This is to check the output of qos policy delete
policy_name = uuid.uuid4().hex
self.openstack('network qos policy create ' + policy_name)
- raw_output = self.openstack(
- 'network qos policy delete ' +
- policy_name
- )
+ raw_output = self.openstack('network qos policy delete ' + policy_name)
self.assertEqual('', raw_output)
def test_qos_policy_list(self):
policy_name = uuid.uuid4().hex
json_output = self.openstack(
- 'network qos policy create ' +
- policy_name,
+ 'network qos policy create ' + policy_name,
parse_output=True,
)
- self.addCleanup(self.openstack,
- 'network qos policy delete ' + policy_name)
+ self.addCleanup(
+ self.openstack, 'network qos policy delete ' + policy_name
+ )
self.assertEqual(policy_name, json_output['name'])
json_output = self.openstack(
@@ -57,36 +54,30 @@ class NetworkQosPolicyTests(common.NetworkTests):
def test_qos_policy_set(self):
policy_name = uuid.uuid4().hex
json_output = self.openstack(
- 'network qos policy create ' +
- policy_name,
+ 'network qos policy create ' + policy_name,
parse_output=True,
)
- self.addCleanup(self.openstack,
- 'network qos policy delete ' + policy_name)
+ self.addCleanup(
+ self.openstack, 'network qos policy delete ' + policy_name
+ )
self.assertEqual(policy_name, json_output['name'])
- self.openstack(
- 'network qos policy set ' +
- '--share ' +
- policy_name
- )
+ self.openstack('network qos policy set ' + '--share ' + policy_name)
json_output = self.openstack(
- 'network qos policy show ' +
- policy_name,
+ 'network qos policy show ' + policy_name,
parse_output=True,
)
self.assertTrue(json_output['shared'])
self.openstack(
- 'network qos policy set ' +
- '--no-share ' +
- '--no-default ' +
- policy_name
+ 'network qos policy set '
+ + '--no-share '
+ + '--no-default '
+ + policy_name
)
json_output = self.openstack(
- 'network qos policy show ' +
- policy_name,
+ 'network qos policy show ' + policy_name,
parse_output=True,
)
self.assertFalse(json_output['shared'])
diff --git a/openstackclient/tests/functional/network/v2/test_network_qos_rule.py b/openstackclient/tests/functional/network/v2/test_network_qos_rule.py
index 0fe1854b..25455b13 100644
--- a/openstackclient/tests/functional/network/v2/test_network_qos_rule.py
+++ b/openstackclient/tests/functional/network/v2/test_network_qos_rule.py
@@ -29,31 +29,33 @@ class NetworkQosRuleTestsMinimumBandwidth(common.NetworkTests):
self.QOS_POLICY_NAME = 'qos_policy_%s' % uuid.uuid4().hex
- self.openstack(
- 'network qos policy create %s' % self.QOS_POLICY_NAME
+ self.openstack('network qos policy create %s' % self.QOS_POLICY_NAME)
+ self.addCleanup(
+ self.openstack,
+ 'network qos policy delete %s' % self.QOS_POLICY_NAME,
)
- self.addCleanup(self.openstack,
- 'network qos policy delete %s' % self.QOS_POLICY_NAME)
cmd_output = self.openstack(
'network qos rule create '
'--type minimum-bandwidth '
'--min-kbps 2800 '
- '--egress %s' %
- self.QOS_POLICY_NAME,
+ '--egress %s' % self.QOS_POLICY_NAME,
parse_output=True,
)
self.RULE_ID = cmd_output['id']
- self.addCleanup(self.openstack,
- 'network qos rule delete %s %s' %
- (self.QOS_POLICY_NAME, self.RULE_ID))
+ self.addCleanup(
+ self.openstack,
+ 'network qos rule delete %s %s'
+ % (self.QOS_POLICY_NAME, self.RULE_ID),
+ )
self.assertTrue(self.RULE_ID)
def test_qos_rule_create_delete(self):
# This is to check the output of qos rule delete
policy_name = uuid.uuid4().hex
self.openstack('network qos policy create %s' % policy_name)
- self.addCleanup(self.openstack,
- 'network qos policy delete %s' % policy_name)
+ self.addCleanup(
+ self.openstack, 'network qos policy delete %s' % policy_name
+ )
rule = self.openstack(
'network qos rule create '
'--type minimum-bandwidth '
@@ -62,30 +64,33 @@ class NetworkQosRuleTestsMinimumBandwidth(common.NetworkTests):
parse_output=True,
)
raw_output = self.openstack(
- 'network qos rule delete %s %s' %
- (policy_name, rule['id']))
+ 'network qos rule delete %s %s' % (policy_name, rule['id'])
+ )
self.assertEqual('', raw_output)
def test_qos_rule_list(self):
cmd_output = self.openstack(
'network qos rule list %s' % self.QOS_POLICY_NAME,
- parse_output=True,)
+ parse_output=True,
+ )
self.assertIn(self.RULE_ID, [rule['ID'] for rule in cmd_output])
def test_qos_rule_show(self):
cmd_output = self.openstack(
- 'network qos rule show %s %s' %
- (self.QOS_POLICY_NAME, self.RULE_ID),
+ 'network qos rule show %s %s'
+ % (self.QOS_POLICY_NAME, self.RULE_ID),
parse_output=True,
)
self.assertEqual(self.RULE_ID, cmd_output['id'])
def test_qos_rule_set(self):
- self.openstack('network qos rule set --min-kbps 7500 %s %s' %
- (self.QOS_POLICY_NAME, self.RULE_ID))
+ self.openstack(
+ 'network qos rule set --min-kbps 7500 %s %s'
+ % (self.QOS_POLICY_NAME, self.RULE_ID)
+ )
cmd_output = self.openstack(
- 'network qos rule show %s %s' %
- (self.QOS_POLICY_NAME, self.RULE_ID),
+ 'network qos rule show %s %s'
+ % (self.QOS_POLICY_NAME, self.RULE_ID),
parse_output=True,
)
self.assertEqual(7500, cmd_output['min_kbps'])
@@ -102,31 +107,33 @@ class NetworkQosRuleTestsMinimumPacketRate(common.NetworkTests):
self.QOS_POLICY_NAME = 'qos_policy_%s' % uuid.uuid4().hex
- self.openstack(
- 'network qos policy create %s' % self.QOS_POLICY_NAME
+ self.openstack('network qos policy create %s' % self.QOS_POLICY_NAME)
+ self.addCleanup(
+ self.openstack,
+ 'network qos policy delete %s' % self.QOS_POLICY_NAME,
)
- self.addCleanup(self.openstack,
- 'network qos policy delete %s' % self.QOS_POLICY_NAME)
cmd_output = self.openstack(
'network qos rule create '
'--type minimum-packet-rate '
'--min-kpps 2800 '
- '--egress %s' %
- self.QOS_POLICY_NAME,
+ '--egress %s' % self.QOS_POLICY_NAME,
parse_output=True,
)
self.RULE_ID = cmd_output['id']
- self.addCleanup(self.openstack,
- 'network qos rule delete %s %s' %
- (self.QOS_POLICY_NAME, self.RULE_ID))
+ self.addCleanup(
+ self.openstack,
+ 'network qos rule delete %s %s'
+ % (self.QOS_POLICY_NAME, self.RULE_ID),
+ )
self.assertTrue(self.RULE_ID)
def test_qos_rule_create_delete(self):
# This is to check the output of qos rule delete
policy_name = uuid.uuid4().hex
self.openstack('network qos policy create %s' % policy_name)
- self.addCleanup(self.openstack,
- 'network qos policy delete %s' % policy_name)
+ self.addCleanup(
+ self.openstack, 'network qos policy delete %s' % policy_name
+ )
rule = self.openstack(
'network qos rule create '
'--type minimum-packet-rate '
@@ -135,30 +142,33 @@ class NetworkQosRuleTestsMinimumPacketRate(common.NetworkTests):
parse_output=True,
)
raw_output = self.openstack(
- 'network qos rule delete %s %s' %
- (policy_name, rule['id']))
+ 'network qos rule delete %s %s' % (policy_name, rule['id'])
+ )
self.assertEqual('', raw_output)
def test_qos_rule_list(self):
cmd_output = self.openstack(
'network qos rule list %s' % self.QOS_POLICY_NAME,
- parse_output=True,)
+ parse_output=True,
+ )
self.assertIn(self.RULE_ID, [rule['ID'] for rule in cmd_output])
def test_qos_rule_show(self):
cmd_output = self.openstack(
- 'network qos rule show %s %s' %
- (self.QOS_POLICY_NAME, self.RULE_ID),
+ 'network qos rule show %s %s'
+ % (self.QOS_POLICY_NAME, self.RULE_ID),
parse_output=True,
)
self.assertEqual(self.RULE_ID, cmd_output['id'])
def test_qos_rule_set(self):
- self.openstack('network qos rule set --min-kpps 7500 --any %s %s' %
- (self.QOS_POLICY_NAME, self.RULE_ID))
+ self.openstack(
+ 'network qos rule set --min-kpps 7500 --any %s %s'
+ % (self.QOS_POLICY_NAME, self.RULE_ID)
+ )
cmd_output = self.openstack(
- 'network qos rule show %s %s' %
- (self.QOS_POLICY_NAME, self.RULE_ID),
+ 'network qos rule show %s %s'
+ % (self.QOS_POLICY_NAME, self.RULE_ID),
parse_output=True,
)
self.assertEqual(7500, cmd_output['min_kpps'])
@@ -175,30 +185,32 @@ class NetworkQosRuleTestsDSCPMarking(common.NetworkTests):
self.skipTest("No Network service present")
self.QOS_POLICY_NAME = 'qos_policy_%s' % uuid.uuid4().hex
- self.openstack(
- 'network qos policy create %s' % self.QOS_POLICY_NAME
+ self.openstack('network qos policy create %s' % self.QOS_POLICY_NAME)
+ self.addCleanup(
+ self.openstack,
+ 'network qos policy delete %s' % self.QOS_POLICY_NAME,
)
- self.addCleanup(self.openstack,
- 'network qos policy delete %s' % self.QOS_POLICY_NAME)
cmd_output = self.openstack(
'network qos rule create '
'--type dscp-marking '
- '--dscp-mark 8 %s' %
- self.QOS_POLICY_NAME,
+ '--dscp-mark 8 %s' % self.QOS_POLICY_NAME,
parse_output=True,
)
self.RULE_ID = cmd_output['id']
- self.addCleanup(self.openstack,
- 'network qos rule delete %s %s' %
- (self.QOS_POLICY_NAME, self.RULE_ID))
+ self.addCleanup(
+ self.openstack,
+ 'network qos rule delete %s %s'
+ % (self.QOS_POLICY_NAME, self.RULE_ID),
+ )
self.assertTrue(self.RULE_ID)
def test_qos_rule_create_delete(self):
# This is to check the output of qos rule delete
policy_name = uuid.uuid4().hex
self.openstack('network qos policy create %s' % policy_name)
- self.addCleanup(self.openstack,
- 'network qos policy delete %s' % policy_name)
+ self.addCleanup(
+ self.openstack, 'network qos policy delete %s' % policy_name
+ )
rule = self.openstack(
'network qos rule create '
'--type dscp-marking '
@@ -206,30 +218,33 @@ class NetworkQosRuleTestsDSCPMarking(common.NetworkTests):
parse_output=True,
)
raw_output = self.openstack(
- 'network qos rule delete %s %s' %
- (policy_name, rule['id']))
+ 'network qos rule delete %s %s' % (policy_name, rule['id'])
+ )
self.assertEqual('', raw_output)
def test_qos_rule_list(self):
cmd_output = self.openstack(
'network qos rule list %s' % self.QOS_POLICY_NAME,
- parse_output=True,)
+ parse_output=True,
+ )
self.assertIn(self.RULE_ID, [rule['ID'] for rule in cmd_output])
def test_qos_rule_show(self):
cmd_output = self.openstack(
- 'network qos rule show %s %s' %
- (self.QOS_POLICY_NAME, self.RULE_ID),
+ 'network qos rule show %s %s'
+ % (self.QOS_POLICY_NAME, self.RULE_ID),
parse_output=True,
)
self.assertEqual(self.RULE_ID, cmd_output['id'])
def test_qos_rule_set(self):
- self.openstack('network qos rule set --dscp-mark 32 %s %s' %
- (self.QOS_POLICY_NAME, self.RULE_ID))
+ self.openstack(
+ 'network qos rule set --dscp-mark 32 %s %s'
+ % (self.QOS_POLICY_NAME, self.RULE_ID)
+ )
cmd_output = self.openstack(
- 'network qos rule show %s %s' %
- (self.QOS_POLICY_NAME, self.RULE_ID),
+ 'network qos rule show %s %s'
+ % (self.QOS_POLICY_NAME, self.RULE_ID),
parse_output=True,
)
self.assertEqual(32, cmd_output['dscp_mark'])
@@ -245,31 +260,33 @@ class NetworkQosRuleTestsBandwidthLimit(common.NetworkTests):
self.skipTest("No Network service present")
self.QOS_POLICY_NAME = 'qos_policy_%s' % uuid.uuid4().hex
- self.openstack(
- 'network qos policy create %s' % self.QOS_POLICY_NAME
+ self.openstack('network qos policy create %s' % self.QOS_POLICY_NAME)
+ self.addCleanup(
+ self.openstack,
+ 'network qos policy delete %s' % self.QOS_POLICY_NAME,
)
- self.addCleanup(self.openstack,
- 'network qos policy delete %s' % self.QOS_POLICY_NAME)
cmd_output = self.openstack(
'network qos rule create '
'--type bandwidth-limit '
'--max-kbps 10000 '
- '--egress %s' %
- self.QOS_POLICY_NAME,
+ '--egress %s' % self.QOS_POLICY_NAME,
parse_output=True,
)
self.RULE_ID = cmd_output['id']
- self.addCleanup(self.openstack,
- 'network qos rule delete %s %s' %
- (self.QOS_POLICY_NAME, self.RULE_ID))
+ self.addCleanup(
+ self.openstack,
+ 'network qos rule delete %s %s'
+ % (self.QOS_POLICY_NAME, self.RULE_ID),
+ )
self.assertTrue(self.RULE_ID)
def test_qos_rule_create_delete(self):
# This is to check the output of qos rule delete
policy_name = uuid.uuid4().hex
self.openstack('network qos policy create %s' % policy_name)
- self.addCleanup(self.openstack,
- 'network qos policy delete %s' % policy_name)
+ self.addCleanup(
+ self.openstack, 'network qos policy delete %s' % policy_name
+ )
rule = self.openstack(
'network qos rule create '
'--type bandwidth-limit '
@@ -279,33 +296,34 @@ class NetworkQosRuleTestsBandwidthLimit(common.NetworkTests):
parse_output=True,
)
raw_output = self.openstack(
- 'network qos rule delete %s %s' %
- (policy_name, rule['id']))
+ 'network qos rule delete %s %s' % (policy_name, rule['id'])
+ )
self.assertEqual('', raw_output)
def test_qos_rule_list(self):
cmd_output = self.openstack(
- 'network qos rule list %s' %
- self.QOS_POLICY_NAME,
- parse_output=True,)
+ 'network qos rule list %s' % self.QOS_POLICY_NAME,
+ parse_output=True,
+ )
self.assertIn(self.RULE_ID, [rule['ID'] for rule in cmd_output])
def test_qos_rule_show(self):
cmd_output = self.openstack(
- 'network qos rule show %s %s' %
- (self.QOS_POLICY_NAME, self.RULE_ID),
+ 'network qos rule show %s %s'
+ % (self.QOS_POLICY_NAME, self.RULE_ID),
parse_output=True,
)
self.assertEqual(self.RULE_ID, cmd_output['id'])
def test_qos_rule_set(self):
- self.openstack('network qos rule set --max-kbps 15000 '
- '--max-burst-kbits 1800 '
- '--ingress %s %s' %
- (self.QOS_POLICY_NAME, self.RULE_ID))
+ self.openstack(
+ 'network qos rule set --max-kbps 15000 '
+ '--max-burst-kbits 1800 '
+ '--ingress %s %s' % (self.QOS_POLICY_NAME, self.RULE_ID)
+ )
cmd_output = self.openstack(
- 'network qos rule show %s %s' %
- (self.QOS_POLICY_NAME, self.RULE_ID),
+ 'network qos rule show %s %s'
+ % (self.QOS_POLICY_NAME, self.RULE_ID),
parse_output=True,
)
self.assertEqual(15000, cmd_output['max_kbps'])
diff --git a/openstackclient/tests/functional/network/v2/test_network_qos_rule_type.py b/openstackclient/tests/functional/network/v2/test_network_qos_rule_type.py
index 4ead65cc..77f0d71c 100644
--- a/openstackclient/tests/functional/network/v2/test_network_qos_rule_type.py
+++ b/openstackclient/tests/functional/network/v2/test_network_qos_rule_type.py
@@ -17,17 +17,17 @@ from openstackclient.tests.functional.network.v2 import common
class NetworkQosRuleTypeTests(common.NetworkTests):
- """Functional tests for Network QoS rule type. """
+ """Functional tests for Network QoS rule type."""
- AVAILABLE_RULE_TYPES = ['dscp_marking',
- 'bandwidth_limit']
+ AVAILABLE_RULE_TYPES = ['dscp_marking', 'bandwidth_limit']
# NOTE(ralonsoh): this list was updated in Yoga (February 2022)
- ALL_AVAILABLE_RULE_TYPES = ['dscp_marking',
- 'bandwidth_limit',
- 'minimum_bandwidth',
- 'packet_rate_limit',
- 'minimum_packet_rate',
- ]
+ ALL_AVAILABLE_RULE_TYPES = [
+ 'dscp_marking',
+ 'bandwidth_limit',
+ 'minimum_bandwidth',
+ 'packet_rate_limit',
+ 'minimum_packet_rate',
+ ]
def setUp(self):
super(NetworkQosRuleTypeTests, self).setUp()
@@ -49,7 +49,7 @@ class NetworkQosRuleTypeTests(common.NetworkTests):
cmd_output = self.openstack(
'network qos rule type list --all-supported -f json',
- parse_output=True
+ parse_output=True,
)
for rule_type in self.AVAILABLE_RULE_TYPES:
self.assertIn(rule_type, [x['Type'] for x in cmd_output])
@@ -59,8 +59,7 @@ class NetworkQosRuleTypeTests(common.NetworkTests):
self.skipTest('No "qos-rule-type-filter" extension present')
cmd_output = self.openstack(
- 'network qos rule type list --all-rules -f json',
- parse_output=True
+ 'network qos rule type list --all-rules -f json', parse_output=True
)
for rule_type in self.ALL_AVAILABLE_RULE_TYPES:
self.assertIn(rule_type, [x['Type'] for x in cmd_output])
diff --git a/openstackclient/tests/functional/network/v2/test_network_rbac.py b/openstackclient/tests/functional/network/v2/test_network_rbac.py
index cb66759a..e5130cd1 100644
--- a/openstackclient/tests/functional/network/v2/test_network_rbac.py
+++ b/openstackclient/tests/functional/network/v2/test_network_rbac.py
@@ -17,6 +17,7 @@ from openstackclient.tests.functional.network.v2 import common
class NetworkRBACTests(common.NetworkTests):
"""Functional tests for network rbac"""
+
OBJECT_ID = None
ID = None
HEADERS = ['ID']
@@ -35,20 +36,20 @@ class NetworkRBACTests(common.NetworkTests):
'network create ' + self.NET_NAME,
parse_output=True,
)
- self.addCleanup(self.openstack,
- 'network delete ' + cmd_output['id'])
+ self.addCleanup(self.openstack, 'network delete ' + cmd_output['id'])
self.OBJECT_ID = cmd_output['id']
cmd_output = self.openstack(
- 'network rbac create ' +
- self.OBJECT_ID +
- ' --action access_as_shared' +
- ' --target-project admin' +
- ' --type network',
+ 'network rbac create '
+ + self.OBJECT_ID
+ + ' --action access_as_shared'
+ + ' --target-project admin'
+ + ' --type network',
parse_output=True,
)
- self.addCleanup(self.openstack,
- 'network rbac delete ' + cmd_output['id'])
+ self.addCleanup(
+ self.openstack, 'network rbac delete ' + cmd_output['id']
+ )
self.ID = cmd_output['id']
self.assertEqual(self.OBJECT_ID, cmd_output['object_id'])
@@ -59,20 +60,27 @@ class NetworkRBACTests(common.NetworkTests):
def test_network_rbac_show(self):
cmd_output = self.openstack(
'network rbac show ' + self.ID,
- parse_output=True,)
+ parse_output=True,
+ )
self.assertEqual(self.ID, cmd_output['id'])
def test_network_rbac_set(self):
project_id = self.openstack(
'project create ' + self.PROJECT_NAME,
- parse_output=True,)['id']
- self.openstack('network rbac set ' + self.ID +
- ' --target-project ' + self.PROJECT_NAME)
+ parse_output=True,
+ )['id']
+ self.openstack(
+ 'network rbac set '
+ + self.ID
+ + ' --target-project '
+ + self.PROJECT_NAME
+ )
cmd_output_rbac = self.openstack(
'network rbac show ' + self.ID,
parse_output=True,
)
self.assertEqual(project_id, cmd_output_rbac['target_project_id'])
raw_output_project = self.openstack(
- 'project delete ' + self.PROJECT_NAME)
+ 'project delete ' + self.PROJECT_NAME
+ )
self.assertEqual('', raw_output_project)
diff --git a/openstackclient/tests/functional/network/v2/test_network_segment.py b/openstackclient/tests/functional/network/v2/test_network_segment.py
index 111c4dc3..f8b5aaf6 100644
--- a/openstackclient/tests/functional/network/v2/test_network_segment.py
+++ b/openstackclient/tests/functional/network/v2/test_network_segment.py
@@ -27,7 +27,8 @@ class NetworkSegmentTests(common.NetworkTests):
# Create a network for the all subnet tests
cmd_output = cls.openstack(
- 'network create ' + cls.NETWORK_NAME, parse_output=True,
+ 'network create ' + cls.NETWORK_NAME,
+ parse_output=True,
)
# Get network_id for assertEqual
cls.NETWORK_ID = cmd_output["id"]
@@ -37,8 +38,7 @@ class NetworkSegmentTests(common.NetworkTests):
try:
if cls.haz_network:
raw_output = cls.openstack(
- 'network delete ' +
- cls.NETWORK_NAME
+ 'network delete ' + cls.NETWORK_NAME
)
cls.assertOutput('', raw_output)
finally:
@@ -53,11 +53,13 @@ class NetworkSegmentTests(common.NetworkTests):
def test_network_segment_create_delete(self):
name = uuid.uuid4().hex
json_output = self.openstack(
- ' network segment create ' +
- '--network ' + self.NETWORK_ID + ' ' +
- '--network-type geneve ' +
- '--segment 2055 ' +
- name,
+ ' network segment create '
+ + '--network '
+ + self.NETWORK_ID
+ + ' '
+ + '--network-type geneve '
+ + '--segment 2055 '
+ + name,
parse_output=True,
)
self.assertEqual(
@@ -73,18 +75,19 @@ class NetworkSegmentTests(common.NetworkTests):
def test_network_segment_list(self):
name = uuid.uuid4().hex
json_output = self.openstack(
- ' network segment create ' +
- '--network ' + self.NETWORK_ID + ' ' +
- '--network-type geneve ' +
- '--segment 2055 ' +
- name,
+ ' network segment create '
+ + '--network '
+ + self.NETWORK_ID
+ + ' '
+ + '--network-type geneve '
+ + '--segment 2055 '
+ + name,
parse_output=True,
)
network_segment_id = json_output.get('id')
network_segment_name = json_output.get('name')
self.addCleanup(
- self.openstack,
- 'network segment delete ' + network_segment_id
+ self.openstack, 'network segment delete ' + network_segment_id
)
self.assertEqual(
name,
@@ -95,26 +98,23 @@ class NetworkSegmentTests(common.NetworkTests):
'network segment list',
parse_output=True,
)
- item_map = {
- item.get('ID'): item.get('Name') for item in json_output
- }
+ item_map = {item.get('ID'): item.get('Name') for item in json_output}
self.assertIn(network_segment_id, item_map.keys())
self.assertIn(network_segment_name, item_map.values())
def test_network_segment_set_show(self):
name = uuid.uuid4().hex
json_output = self.openstack(
- ' network segment create ' +
- '--network ' + self.NETWORK_ID + ' ' +
- '--network-type geneve ' +
- '--segment 2055 ' +
- name,
+ ' network segment create '
+ + '--network '
+ + self.NETWORK_ID
+ + ' '
+ + '--network-type geneve '
+ + '--segment 2055 '
+ + name,
parse_output=True,
)
- self.addCleanup(
- self.openstack,
- 'network segment delete ' + name
- )
+ self.addCleanup(self.openstack, 'network segment delete ' + name)
extension_output = self.openstack(
"extension list ",
@@ -133,15 +133,16 @@ class NetworkSegmentTests(common.NetworkTests):
new_description = 'new_description'
cmd_output = self.openstack(
- 'network segment set ' +
- '--description ' + new_description + ' ' +
- name
+ 'network segment set '
+ + '--description '
+ + new_description
+ + ' '
+ + name
)
self.assertOutput('', cmd_output)
json_output = self.openstack(
- 'network segment show ' +
- name,
+ 'network segment show ' + name,
parse_output=True,
)
self.assertEqual(
diff --git a/openstackclient/tests/functional/network/v2/test_network_segment_range.py b/openstackclient/tests/functional/network/v2/test_network_segment_range.py
index 5cdf5812..0dd67ead 100644
--- a/openstackclient/tests/functional/network/v2/test_network_segment_range.py
+++ b/openstackclient/tests/functional/network/v2/test_network_segment_range.py
@@ -35,16 +35,19 @@ class NetworkSegmentRangeTests(common.NetworkTests):
# Make a project
project_id = self.openstack(
'project create ' + self.PROJECT_NAME,
- parse_output=True,)['id']
+ parse_output=True,
+ )['id']
name = uuid.uuid4().hex
json_output = self.openstack(
- ' network segment range create ' +
- '--private ' +
- "--project " + self.PROJECT_NAME + " " +
- '--network-type vxlan ' +
- '--minimum 2005 ' +
- '--maximum 2009 ' +
- name,
+ ' network segment range create '
+ + '--private '
+ + "--project "
+ + self.PROJECT_NAME
+ + " "
+ + '--network-type vxlan '
+ + '--minimum 2005 '
+ + '--maximum 2009 '
+ + name,
parse_output=True,
)
self.assertEqual(
@@ -61,25 +64,26 @@ class NetworkSegmentRangeTests(common.NetworkTests):
)
self.assertOutput('', raw_output)
raw_output_project = self.openstack(
- 'project delete ' + self.PROJECT_NAME)
+ 'project delete ' + self.PROJECT_NAME
+ )
self.assertEqual('', raw_output_project)
def test_network_segment_range_list(self):
name = uuid.uuid4().hex
json_output = self.openstack(
- ' network segment range create ' +
- '--shared ' +
- '--network-type geneve ' +
- '--minimum 2013 ' +
- '--maximum 2017 ' +
- name,
+ ' network segment range create '
+ + '--shared '
+ + '--network-type geneve '
+ + '--minimum 2013 '
+ + '--maximum 2017 '
+ + name,
parse_output=True,
)
network_segment_range_id = json_output.get('id')
network_segment_range_name = json_output.get('name')
self.addCleanup(
self.openstack,
- 'network segment range delete ' + network_segment_range_id
+ 'network segment range delete ' + network_segment_range_id,
)
self.assertEqual(
name,
@@ -90,31 +94,29 @@ class NetworkSegmentRangeTests(common.NetworkTests):
'network segment range list',
parse_output=True,
)
- item_map = {
- item.get('ID'): item.get('Name') for item in json_output
- }
+ item_map = {item.get('ID'): item.get('Name') for item in json_output}
self.assertIn(network_segment_range_id, item_map.keys())
self.assertIn(network_segment_range_name, item_map.values())
def test_network_segment_range_set_show(self):
project_id = self.openstack(
'project create ' + self.PROJECT_NAME,
- parse_output=True,)['id']
+ parse_output=True,
+ )['id']
name = uuid.uuid4().hex
json_output = self.openstack(
- ' network segment range create ' +
- '--private ' +
- "--project " + self.PROJECT_NAME + " " +
- '--network-type geneve ' +
- '--minimum 2021 ' +
- '--maximum 2025 ' +
- name,
+ ' network segment range create '
+ + '--private '
+ + "--project "
+ + self.PROJECT_NAME
+ + " "
+ + '--network-type geneve '
+ + '--minimum 2021 '
+ + '--maximum 2025 '
+ + name,
parse_output=True,
)
- self.addCleanup(
- self.openstack,
- 'network segment range delete ' + name
- )
+ self.addCleanup(self.openstack, 'network segment range delete ' + name)
self.assertEqual(
name,
json_output["name"],
@@ -127,14 +129,13 @@ class NetworkSegmentRangeTests(common.NetworkTests):
new_minimum = 2020
new_maximum = 2029
cmd_output = self.openstack(
- 'network segment range set --minimum {min} --maximum {max} {name}'
- .format(min=new_minimum, max=new_maximum, name=name)
+ 'network segment range set --minimum {min} --maximum {max} '
+ '{name}'.format(min=new_minimum, max=new_maximum, name=name)
)
self.assertOutput('', cmd_output)
json_output = self.openstack(
- 'network segment range show ' +
- name,
+ 'network segment range show ' + name,
parse_output=True,
)
self.assertEqual(
@@ -147,5 +148,6 @@ class NetworkSegmentRangeTests(common.NetworkTests):
)
raw_output_project = self.openstack(
- 'project delete ' + self.PROJECT_NAME)
+ 'project delete ' + self.PROJECT_NAME
+ )
self.assertEqual('', raw_output_project)
diff --git a/openstackclient/tests/functional/network/v2/test_network_service_provider.py b/openstackclient/tests/functional/network/v2/test_network_service_provider.py
index 9d513564..dd1d26e2 100644
--- a/openstackclient/tests/functional/network/v2/test_network_service_provider.py
+++ b/openstackclient/tests/functional/network/v2/test_network_service_provider.py
@@ -37,5 +37,6 @@ class TestNetworkServiceProvider(common.NetworkTests):
def test_network_service_provider_list(self):
cmd_output = self.openstack(
'network service provider list',
- parse_output=True,)
+ parse_output=True,
+ )
self.assertIn('L3_ROUTER_NAT', [x['Service Type'] for x in cmd_output])
diff --git a/openstackclient/tests/functional/network/v2/test_network_trunk.py b/openstackclient/tests/functional/network/v2/test_network_trunk.py
index bbb77a0d..bb50164f 100644
--- a/openstackclient/tests/functional/network/v2/test_network_trunk.py
+++ b/openstackclient/tests/functional/network/v2/test_network_trunk.py
@@ -37,113 +37,122 @@ class NetworkTrunkTests(common.NetworkTests):
self.openstack(
'subnet create %s '
- '--network %s --subnet-range 10.0.0.0/24' % (
- subnet_name, network_name))
- self.openstack('port create %s --network %s' %
- (self.parent_port_name, network_name))
- self.addCleanup(self.openstack, 'port delete %s' %
- self.parent_port_name)
- json_out = self.openstack('port create %s --network %s -f json' %
- (self.sub_port_name, network_name))
+ '--network %s --subnet-range 10.0.0.0/24'
+ % (subnet_name, network_name)
+ )
+ self.openstack(
+ 'port create %s --network %s'
+ % (self.parent_port_name, network_name)
+ )
+ self.addCleanup(
+ self.openstack, 'port delete %s' % self.parent_port_name
+ )
+ json_out = self.openstack(
+ 'port create %s --network %s -f json'
+ % (self.sub_port_name, network_name)
+ )
self.sub_port_id = json.loads(json_out)['id']
self.addCleanup(self.openstack, 'port delete %s' % self.sub_port_name)
def test_network_trunk_create_delete(self):
trunk_name = uuid.uuid4().hex
- self.openstack('network trunk create %s --parent-port %s -f json ' %
- (trunk_name, self.parent_port_name))
- raw_output = self.openstack(
- 'network trunk delete ' +
- trunk_name
+ self.openstack(
+ 'network trunk create %s --parent-port %s -f json '
+ % (trunk_name, self.parent_port_name)
)
+ raw_output = self.openstack('network trunk delete ' + trunk_name)
self.assertEqual('', raw_output)
def test_network_trunk_list(self):
trunk_name = uuid.uuid4().hex
- json_output = json.loads(self.openstack(
- 'network trunk create %s --parent-port %s -f json ' %
- (trunk_name, self.parent_port_name)))
- self.addCleanup(self.openstack,
- 'network trunk delete ' + trunk_name)
+ json_output = json.loads(
+ self.openstack(
+ 'network trunk create %s --parent-port %s -f json '
+ % (trunk_name, self.parent_port_name)
+ )
+ )
+ self.addCleanup(self.openstack, 'network trunk delete ' + trunk_name)
self.assertEqual(trunk_name, json_output['name'])
- json_output = json.loads(self.openstack(
- 'network trunk list -f json'
- ))
+ json_output = json.loads(self.openstack('network trunk list -f json'))
self.assertIn(trunk_name, [tr['Name'] for tr in json_output])
def test_network_trunk_set_unset(self):
trunk_name = uuid.uuid4().hex
- json_output = json.loads(self.openstack(
- 'network trunk create %s --parent-port %s -f json ' %
- (trunk_name, self.parent_port_name)))
- self.addCleanup(self.openstack,
- 'network trunk delete ' + trunk_name)
+ json_output = json.loads(
+ self.openstack(
+ 'network trunk create %s --parent-port %s -f json '
+ % (trunk_name, self.parent_port_name)
+ )
+ )
+ self.addCleanup(self.openstack, 'network trunk delete ' + trunk_name)
self.assertEqual(trunk_name, json_output['name'])
- self.openstack(
- 'network trunk set '
- '--enable ' +
- trunk_name
- )
+ self.openstack('network trunk set ' '--enable ' + trunk_name)
- json_output = json.loads(self.openstack(
- 'network trunk show -f json ' +
- trunk_name
- ))
+ json_output = json.loads(
+ self.openstack('network trunk show -f json ' + trunk_name)
+ )
self.assertTrue(json_output['is_admin_state_up'])
# Add subport to trunk
self.openstack(
- 'network trunk set ' +
- '--subport port=%s,segmentation-type=vlan,segmentation-id=42 ' %
- (self.sub_port_name) +
- trunk_name
- )
- json_output = json.loads(self.openstack(
- 'network trunk show -f json ' +
- trunk_name
- ))
+ 'network trunk set '
+ + '--subport port=%s,segmentation-type=vlan,segmentation-id=42 '
+ % (self.sub_port_name)
+ + trunk_name
+ )
+ json_output = json.loads(
+ self.openstack('network trunk show -f json ' + trunk_name)
+ )
self.assertEqual(
- [{
- 'port_id': self.sub_port_id,
- 'segmentation_id': 42,
- 'segmentation_type': 'vlan'
- }],
- json_output['sub_ports'])
+ [
+ {
+ 'port_id': self.sub_port_id,
+ 'segmentation_id': 42,
+ 'segmentation_type': 'vlan',
+ }
+ ],
+ json_output['sub_ports'],
+ )
# Remove subport from trunk
self.openstack(
- 'network trunk unset ' +
- trunk_name +
- ' --subport ' +
- self.sub_port_name
- )
- json_output = json.loads(self.openstack(
- 'network trunk show -f json ' +
- trunk_name
- ))
- self.assertEqual(
- [],
- json_output['sub_ports'])
+ 'network trunk unset '
+ + trunk_name
+ + ' --subport '
+ + self.sub_port_name
+ )
+ json_output = json.loads(
+ self.openstack('network trunk show -f json ' + trunk_name)
+ )
+ self.assertEqual([], json_output['sub_ports'])
def test_network_trunk_list_subports(self):
trunk_name = uuid.uuid4().hex
- json_output = json.loads(self.openstack(
- 'network trunk create %s --parent-port %s '
- '--subport port=%s,segmentation-type=vlan,segmentation-id=42 '
- '-f json ' %
- (trunk_name, self.parent_port_name, self.sub_port_name)))
- self.addCleanup(self.openstack,
- 'network trunk delete ' + trunk_name)
+ json_output = json.loads(
+ self.openstack(
+ 'network trunk create %s --parent-port %s '
+ '--subport port=%s,segmentation-type=vlan,segmentation-id=42 '
+ '-f json '
+ % (trunk_name, self.parent_port_name, self.sub_port_name)
+ )
+ )
+ self.addCleanup(self.openstack, 'network trunk delete ' + trunk_name)
self.assertEqual(trunk_name, json_output['name'])
- json_output = json.loads(self.openstack(
- 'network subport list --trunk %s -f json' % trunk_name))
+ json_output = json.loads(
+ self.openstack(
+ 'network subport list --trunk %s -f json' % trunk_name
+ )
+ )
self.assertEqual(
- [{
- 'Port': self.sub_port_id,
- 'Segmentation ID': 42,
- 'Segmentation Type': 'vlan'
- }],
- json_output)
+ [
+ {
+ 'Port': self.sub_port_id,
+ 'Segmentation ID': 42,
+ 'Segmentation Type': 'vlan',
+ }
+ ],
+ json_output,
+ )
diff --git a/openstackclient/tests/functional/network/v2/test_port.py b/openstackclient/tests/functional/network/v2/test_port.py
index f5bc9c4a..b3d3a109 100644
--- a/openstackclient/tests/functional/network/v2/test_port.py
+++ b/openstackclient/tests/functional/network/v2/test_port.py
@@ -31,9 +31,7 @@ class PortTests(common.NetworkTagTests):
cls.NETWORK_NAME = uuid.uuid4().hex
# Create a network for the port tests
- cls.openstack(
- 'network create %s' % cls.NETWORK_NAME
- )
+ cls.openstack('network create %s' % cls.NETWORK_NAME)
@classmethod
def tearDownClass(cls):
@@ -55,8 +53,7 @@ class PortTests(common.NetworkTagTests):
def test_port_delete(self):
"""Test create, delete multiple"""
json_output = self.openstack(
- 'port create --network %s %s' %
- (self.NETWORK_NAME, self.NAME),
+ 'port create --network %s %s' % (self.NETWORK_NAME, self.NAME),
parse_output=True,
)
id1 = json_output.get('id')
@@ -65,8 +62,7 @@ class PortTests(common.NetworkTagTests):
self.assertEqual(self.NAME, json_output.get('name'))
json_output = self.openstack(
- 'port create --network %s %sx' %
- (self.NETWORK_NAME, self.NAME),
+ 'port create --network %s %sx' % (self.NETWORK_NAME, self.NAME),
parse_output=True,
)
id2 = json_output.get('id')
@@ -81,8 +77,7 @@ class PortTests(common.NetworkTagTests):
def test_port_list(self):
"""Test create defaults, list, delete"""
json_output = self.openstack(
- 'port create --network %s %s' %
- (self.NETWORK_NAME, self.NAME),
+ 'port create --network %s %s' % (self.NETWORK_NAME, self.NAME),
parse_output=True,
)
id1 = json_output.get('id')
@@ -93,8 +88,7 @@ class PortTests(common.NetworkTagTests):
self.assertEqual(self.NAME, json_output.get('name'))
json_output = self.openstack(
- 'port create --network %s %sx' %
- (self.NETWORK_NAME, self.NAME),
+ 'port create --network %s %sx' % (self.NETWORK_NAME, self.NAME),
parse_output=True,
)
id2 = json_output.get('id')
@@ -109,8 +103,9 @@ class PortTests(common.NetworkTagTests):
'port list',
parse_output=True,
)
- item_map = {item.get('ID'): item.get('MAC Address') for item in
- json_output}
+ item_map = {
+ item.get('ID'): item.get('MAC Address') for item in json_output
+ }
self.assertIn(id1, item_map.keys())
self.assertIn(id2, item_map.keys())
self.assertIn(mac1, item_map.values())
@@ -130,8 +125,9 @@ class PortTests(common.NetworkTagTests):
'port list --mac-address %s' % mac2,
parse_output=True,
)
- item_map = {item.get('ID'): item.get('MAC Address') for item in
- json_output}
+ item_map = {
+ item.get('ID'): item.get('MAC Address') for item in json_output
+ }
self.assertNotIn(id1, item_map.keys())
self.assertIn(id2, item_map.keys())
self.assertNotIn(mac1, item_map.values())
@@ -155,8 +151,7 @@ class PortTests(common.NetworkTagTests):
'port create '
'--network %s '
'--description xyzpdq '
- '--disable %s' %
- (self.NETWORK_NAME, name),
+ '--disable %s' % (self.NETWORK_NAME, name),
parse_output=True,
)
id1 = json_output.get('id')
@@ -165,10 +160,7 @@ class PortTests(common.NetworkTagTests):
self.assertEqual('xyzpdq', json_output.get('description'))
self.assertEqual(False, json_output.get('admin_state_up'))
- raw_output = self.openstack(
- 'port set --enable %s' %
- name
- )
+ raw_output = self.openstack('port set --enable %s' % name)
self.assertOutput('', raw_output)
json_output = self.openstack(
@@ -183,7 +175,8 @@ class PortTests(common.NetworkTagTests):
self.assertIsNotNone(json_output.get('mac_address'))
raw_output = self.openstack(
- 'port unset --security-group %s %s' % (sg_id, id1))
+ 'port unset --security-group %s %s' % (sg_id, id1)
+ )
self.assertOutput('', raw_output)
json_output = self.openstack(
@@ -195,8 +188,7 @@ class PortTests(common.NetworkTagTests):
def test_port_admin_set(self):
"""Test create, set (as admin), show, delete"""
json_output = self.openstack(
- 'port create '
- '--network %s %s' % (self.NETWORK_NAME, self.NAME),
+ 'port create ' '--network %s %s' % (self.NETWORK_NAME, self.NAME),
parse_output=True,
)
id_ = json_output.get('id')
@@ -204,8 +196,8 @@ class PortTests(common.NetworkTagTests):
raw_output = self.openstack(
'--os-username admin '
- 'port set --mac-address 11:22:33:44:55:66 %s' %
- self.NAME)
+ 'port set --mac-address 11:22:33:44:55:66 %s' % self.NAME
+ )
self.assertOutput('', raw_output)
json_output = self.openstack(
'port show %s' % self.NAME,
@@ -217,8 +209,7 @@ class PortTests(common.NetworkTagTests):
"""Test create, set, show, delete"""
sg_name1 = uuid.uuid4().hex
json_output = self.openstack(
- 'security group create %s' %
- sg_name1,
+ 'security group create %s' % sg_name1,
parse_output=True,
)
sg_id1 = json_output.get('id')
@@ -226,8 +217,7 @@ class PortTests(common.NetworkTagTests):
sg_name2 = uuid.uuid4().hex
json_output = self.openstack(
- 'security group create %s' %
- sg_name2,
+ 'security group create %s' % sg_name2,
parse_output=True,
)
sg_id2 = json_output.get('id')
@@ -237,8 +227,7 @@ class PortTests(common.NetworkTagTests):
json_output = self.openstack(
'port create '
'--network %s '
- '--security-group %s %s' %
- (self.NETWORK_NAME, sg_name1, name),
+ '--security-group %s %s' % (self.NETWORK_NAME, sg_name1, name),
parse_output=True,
)
id1 = json_output.get('id')
@@ -247,9 +236,7 @@ class PortTests(common.NetworkTagTests):
self.assertEqual([sg_id1], json_output.get('security_group_ids'))
raw_output = self.openstack(
- 'port set '
- '--security-group %s %s' %
- (sg_name2, name)
+ 'port set ' '--security-group %s %s' % (sg_name2, name)
)
self.assertOutput('', raw_output)
@@ -260,25 +247,26 @@ class PortTests(common.NetworkTagTests):
self.assertEqual(name, json_output.get('name'))
# NOTE(amotoki): The order of the field is not predictable,
self.assertIsInstance(json_output.get('security_group_ids'), list)
- self.assertEqual(sorted([sg_id1, sg_id2]),
- sorted(json_output.get('security_group_ids')))
+ self.assertEqual(
+ sorted([sg_id1, sg_id2]),
+ sorted(json_output.get('security_group_ids')),
+ )
raw_output = self.openstack(
- 'port unset --security-group %s %s' % (sg_id1, id1))
+ 'port unset --security-group %s %s' % (sg_id1, id1)
+ )
self.assertOutput('', raw_output)
json_output = self.openstack(
'port show %s' % name,
parse_output=True,
)
- self.assertEqual(
- [sg_id2],
- json_output.get('security_group_ids')
- )
+ self.assertEqual([sg_id2], json_output.get('security_group_ids'))
def _create_resource_for_tag_test(self, name, args):
return self.openstack(
- '{} create --network {} {} {}'
- .format(self.base_command, self.NETWORK_NAME, args, name),
+ '{} create --network {} {} {}'.format(
+ self.base_command, self.NETWORK_NAME, args, name
+ ),
parse_output=True,
)
diff --git a/openstackclient/tests/functional/network/v2/test_router.py b/openstackclient/tests/functional/network/v2/test_router.py
index 07a5a633..fcd72d9f 100644
--- a/openstackclient/tests/functional/network/v2/test_router.py
+++ b/openstackclient/tests/functional/network/v2/test_router.py
@@ -31,8 +31,7 @@ class RouterTests(common.NetworkTagTests):
name1 = uuid.uuid4().hex
name2 = uuid.uuid4().hex
cmd_output = self.openstack(
- 'router create ' +
- name1,
+ 'router create ' + name1,
parse_output=True,
)
self.assertEqual(
@@ -40,8 +39,7 @@ class RouterTests(common.NetworkTagTests):
cmd_output["name"],
)
cmd_output = self.openstack(
- 'router create ' +
- name2,
+ 'router create ' + name2,
parse_output=True,
)
self.assertEqual(
@@ -49,8 +47,7 @@ class RouterTests(common.NetworkTagTests):
cmd_output["name"],
)
- del_output = self.openstack(
- 'router delete ' + name1 + ' ' + name2)
+ del_output = self.openstack('router delete ' + name1 + ' ' + name2)
self.assertOutput('', del_output)
def test_router_list(self):
@@ -80,9 +77,7 @@ class RouterTests(common.NetworkTagTests):
name1 = uuid.uuid4().hex
name2 = uuid.uuid4().hex
cmd_output = self.openstack(
- 'router create ' +
- '--disable ' +
- name1,
+ 'router create ' + '--disable ' + name1,
parse_output=True,
)
@@ -100,9 +95,7 @@ class RouterTests(common.NetworkTagTests):
cmd_output["project_id"],
)
cmd_output = self.openstack(
- 'router create ' +
- '--project ' + demo_project_id +
- ' ' + name2,
+ 'router create ' + '--project ' + demo_project_id + ' ' + name2,
parse_output=True,
)
@@ -122,8 +115,7 @@ class RouterTests(common.NetworkTagTests):
# Test list --project
cmd_output = self.openstack(
- 'router list ' +
- '--project ' + demo_project_id,
+ 'router list ' + '--project ' + demo_project_id,
parse_output=True,
)
names = [x["Name"] for x in cmd_output]
@@ -132,8 +124,7 @@ class RouterTests(common.NetworkTagTests):
# Test list --disable
cmd_output = self.openstack(
- 'router list ' +
- '--disable ',
+ 'router list ' + '--disable ',
parse_output=True,
)
names = [x["Name"] for x in cmd_output]
@@ -142,8 +133,7 @@ class RouterTests(common.NetworkTagTests):
# Test list --name
cmd_output = self.openstack(
- 'router list ' +
- '--name ' + name1,
+ 'router list ' + '--name ' + name1,
parse_output=True,
)
names = [x["Name"] for x in cmd_output]
@@ -152,8 +142,7 @@ class RouterTests(common.NetworkTagTests):
# Test list --long
cmd_output = self.openstack(
- 'router list ' +
- '--long ',
+ 'router list ' + '--long ',
parse_output=True,
)
names = [x["Name"] for x in cmd_output]
@@ -169,7 +158,8 @@ class RouterTests(common.NetworkTagTests):
name = uuid.uuid4().hex
cmd_output = self.openstack(
'router create ' + name,
- parse_output=True,)
+ parse_output=True,
+ )
self.addCleanup(self.openstack, 'router delete ' + name)
# Get router ID
@@ -177,7 +167,8 @@ class RouterTests(common.NetworkTagTests):
# Get l3 agent id
cmd_output = self.openstack(
'network agent list --agent-type l3',
- parse_output=True,)
+ parse_output=True,
+ )
# Check at least one L3 agent is included in the response.
self.assertTrue(cmd_output)
@@ -185,20 +176,24 @@ class RouterTests(common.NetworkTagTests):
# Add router to agent
self.openstack(
- 'network agent add router --l3 ' + agent_id + ' ' + router_id)
+ 'network agent add router --l3 ' + agent_id + ' ' + router_id
+ )
cmd_output = self.openstack(
'router list --agent ' + agent_id,
- parse_output=True,)
+ parse_output=True,
+ )
router_ids = [x['ID'] for x in cmd_output]
self.assertIn(router_id, router_ids)
# Remove router from agent
self.openstack(
- 'network agent remove router --l3 ' + agent_id + ' ' + router_id)
+ 'network agent remove router --l3 ' + agent_id + ' ' + router_id
+ )
cmd_output = self.openstack(
'router list --agent ' + agent_id,
- parse_output=True,)
+ parse_output=True,
+ )
router_ids = [x['ID'] for x in cmd_output]
self.assertNotIn(router_id, router_ids)
@@ -208,9 +203,7 @@ class RouterTests(common.NetworkTagTests):
name = uuid.uuid4().hex
new_name = name + "_"
cmd_output = self.openstack(
- 'router create ' +
- '--description aaaa ' +
- name,
+ 'router create ' + '--description aaaa ' + name,
parse_output=True,
)
self.addCleanup(self.openstack, 'router delete ' + new_name)
@@ -225,17 +218,17 @@ class RouterTests(common.NetworkTagTests):
# Test set --disable
cmd_output = self.openstack(
- 'router set ' +
- '--name ' + new_name +
- ' --description bbbb ' +
- '--disable ' +
- name
+ 'router set '
+ + '--name '
+ + new_name
+ + ' --description bbbb '
+ + '--disable '
+ + name
)
self.assertOutput('', cmd_output)
cmd_output = self.openstack(
- 'router show ' +
- new_name,
+ 'router show ' + new_name,
parse_output=True,
)
self.assertEqual(
@@ -256,13 +249,10 @@ class RouterTests(common.NetworkTagTests):
# Test unset
cmd_output = self.openstack(
- 'router unset ' +
- '--external-gateway ' +
- new_name
+ 'router unset ' + '--external-gateway ' + new_name
)
cmd_output = self.openstack(
- 'router show ' +
- new_name,
+ 'router show ' + new_name,
parse_output=True,
)
self.assertIsNone(cmd_output["external_gateway_info"])
@@ -272,16 +262,15 @@ class RouterTests(common.NetworkTagTests):
return
cmd_output = self.openstack(
- 'router set ' +
- '--distributed ' +
- '--external-gateway public ' +
- router_name
+ 'router set '
+ + '--distributed '
+ + '--external-gateway public '
+ + router_name
)
self.assertOutput('', cmd_output)
cmd_output = self.openstack(
- 'router show ' +
- router_name,
+ 'router show ' + router_name,
parse_output=True,
)
self.assertTrue(cmd_output["distributed"])
@@ -297,38 +286,51 @@ class RouterTests(common.NetworkTagTests):
self.openstack(
'subnet create %s '
- '--network %s --subnet-range 10.0.0.0/24' % (
- subnet_name, network_name))
+ '--network %s --subnet-range 10.0.0.0/24'
+ % (subnet_name, network_name)
+ )
self.openstack('router create %s' % router_name)
self.addCleanup(self.openstack, 'router delete %s' % router_name)
self.openstack('router add subnet %s %s' % (router_name, subnet_name))
- self.addCleanup(self.openstack, 'router remove subnet %s %s' % (
- router_name, subnet_name))
-
- out1 = self.openstack(
- 'router add route %s '
- '--route destination=10.0.10.0/24,gateway=10.0.0.10' %
- router_name,
- parse_output=True,),
+ self.addCleanup(
+ self.openstack,
+ 'router remove subnet %s %s' % (router_name, subnet_name),
+ )
+
+ out1 = (
+ self.openstack(
+ 'router add route %s '
+ '--route destination=10.0.10.0/24,gateway=10.0.0.10'
+ % router_name,
+ parse_output=True,
+ ),
+ )
self.assertEqual(1, len(out1[0]['routes']))
self.addCleanup(
- self.openstack, 'router set %s --no-route' % router_name)
-
- out2 = self.openstack(
- 'router add route %s '
- '--route destination=10.0.10.0/24,gateway=10.0.0.10 '
- '--route destination=10.0.11.0/24,gateway=10.0.0.11' %
- router_name,
- parse_output=True,),
+ self.openstack, 'router set %s --no-route' % router_name
+ )
+
+ out2 = (
+ self.openstack(
+ 'router add route %s '
+ '--route destination=10.0.10.0/24,gateway=10.0.0.10 '
+ '--route destination=10.0.11.0/24,gateway=10.0.0.11'
+ % router_name,
+ parse_output=True,
+ ),
+ )
self.assertEqual(2, len(out2[0]['routes']))
- out3 = self.openstack(
- 'router remove route %s '
- '--route destination=10.0.11.0/24,gateway=10.0.0.11 '
- '--route destination=10.0.12.0/24,gateway=10.0.0.12' %
- router_name,
- parse_output=True,),
+ out3 = (
+ self.openstack(
+ 'router remove route %s '
+ '--route destination=10.0.11.0/24,gateway=10.0.0.11 '
+ '--route destination=10.0.12.0/24,gateway=10.0.0.12'
+ % router_name,
+ parse_output=True,
+ ),
+ )
self.assertEqual(1, len(out3[0]['routes']))
diff --git a/openstackclient/tests/functional/network/v2/test_security_group.py b/openstackclient/tests/functional/network/v2/test_security_group.py
index c9d929f5..571c01ee 100644
--- a/openstackclient/tests/functional/network/v2/test_security_group.py
+++ b/openstackclient/tests/functional/network/v2/test_security_group.py
@@ -27,12 +27,12 @@ class SecurityGroupTests(common.NetworkTests):
self.NAME = uuid.uuid4().hex
self.OTHER_NAME = uuid.uuid4().hex
cmd_output = self.openstack(
- 'security group create ' +
- self.NAME,
+ 'security group create ' + self.NAME,
parse_output=True,
)
- self.addCleanup(self.openstack,
- 'security group delete ' + cmd_output['id'])
+ self.addCleanup(
+ self.openstack, 'security group delete ' + cmd_output['id']
+ )
self.assertEqual(self.NAME, cmd_output['name'])
def test_security_group_list(self):
@@ -42,8 +42,10 @@ class SecurityGroupTests(common.NetworkTests):
def test_security_group_set(self):
other_name = uuid.uuid4().hex
raw_output = self.openstack(
- 'security group set --description NSA --stateless --name ' +
- other_name + ' ' + self.NAME
+ 'security group set --description NSA --stateless --name '
+ + other_name
+ + ' '
+ + self.NAME
)
self.assertEqual('', raw_output)
diff --git a/openstackclient/tests/functional/network/v2/test_security_group_rule.py b/openstackclient/tests/functional/network/v2/test_security_group_rule.py
index d64fb420..6fdd041c 100644
--- a/openstackclient/tests/functional/network/v2/test_security_group_rule.py
+++ b/openstackclient/tests/functional/network/v2/test_security_group_rule.py
@@ -28,24 +28,26 @@ class SecurityGroupRuleTests(common.NetworkTests):
# Create the security group to hold the rule
cmd_output = self.openstack(
- 'security group create ' +
- self.SECURITY_GROUP_NAME,
+ 'security group create ' + self.SECURITY_GROUP_NAME,
parse_output=True,
)
- self.addCleanup(self.openstack,
- 'security group delete ' + self.SECURITY_GROUP_NAME)
+ self.addCleanup(
+ self.openstack, 'security group delete ' + self.SECURITY_GROUP_NAME
+ )
self.assertEqual(self.SECURITY_GROUP_NAME, cmd_output['name'])
# Create the security group rule.
cmd_output = self.openstack(
- 'security group rule create ' +
- self.SECURITY_GROUP_NAME + ' ' +
- '--protocol tcp --dst-port 80:80 ' +
- '--ingress --ethertype IPv4 ',
+ 'security group rule create '
+ + self.SECURITY_GROUP_NAME
+ + ' '
+ + '--protocol tcp --dst-port 80:80 '
+ + '--ingress --ethertype IPv4 ',
parse_output=True,
)
- self.addCleanup(self.openstack,
- 'security group rule delete ' + cmd_output['id'])
+ self.addCleanup(
+ self.openstack, 'security group rule delete ' + cmd_output['id']
+ )
self.SECURITY_GROUP_RULE_ID = cmd_output['id']
def test_security_group_rule_list(self):
@@ -53,8 +55,9 @@ class SecurityGroupRuleTests(common.NetworkTests):
'security group rule list ' + self.SECURITY_GROUP_NAME,
parse_output=True,
)
- self.assertIn(self.SECURITY_GROUP_RULE_ID,
- [rule['ID'] for rule in cmd_output])
+ self.assertIn(
+ self.SECURITY_GROUP_RULE_ID, [rule['ID'] for rule in cmd_output]
+ )
def test_security_group_rule_show(self):
cmd_output = self.openstack(
diff --git a/openstackclient/tests/functional/network/v2/test_subnet.py b/openstackclient/tests/functional/network/v2/test_subnet.py
index 041ec9f0..90eb7729 100644
--- a/openstackclient/tests/functional/network/v2/test_subnet.py
+++ b/openstackclient/tests/functional/network/v2/test_subnet.py
@@ -29,8 +29,7 @@ class SubnetTests(common.NetworkTagTests):
# Create a network for the all subnet tests
cmd_output = cls.openstack(
- 'network create ' +
- cls.NETWORK_NAME,
+ 'network create ' + cls.NETWORK_NAME,
parse_output=True,
)
# Get network_id for assertEqual
@@ -41,8 +40,7 @@ class SubnetTests(common.NetworkTagTests):
try:
if cls.haz_network:
raw_output = cls.openstack(
- 'network delete ' +
- cls.NETWORK_NAME
+ 'network delete ' + cls.NETWORK_NAME
)
cls.assertOutput('', raw_output)
finally:
@@ -57,9 +55,9 @@ class SubnetTests(common.NetworkTagTests):
def test_subnet_create_and_delete(self):
"""Test create, delete multiple"""
name1 = uuid.uuid4().hex
- cmd = ('subnet create --network ' +
- self.NETWORK_NAME +
- ' --subnet-range')
+ cmd = (
+ 'subnet create --network ' + self.NETWORK_NAME + ' --subnet-range'
+ )
cmd_output = self._subnet_create(cmd, name1)
self.assertEqual(
name1,
@@ -70,9 +68,9 @@ class SubnetTests(common.NetworkTagTests):
cmd_output["network_id"],
)
name2 = uuid.uuid4().hex
- cmd = ('subnet create --network ' +
- self.NETWORK_NAME +
- ' --subnet-range')
+ cmd = (
+ 'subnet create --network ' + self.NETWORK_NAME + ' --subnet-range'
+ )
cmd_output = self._subnet_create(cmd, name2)
self.assertEqual(
name2,
@@ -83,17 +81,19 @@ class SubnetTests(common.NetworkTagTests):
cmd_output["network_id"],
)
- del_output = self.openstack(
- 'subnet delete ' + name1 + ' ' + name2)
+ del_output = self.openstack('subnet delete ' + name1 + ' ' + name2)
self.assertOutput('', del_output)
def test_subnet_list(self):
"""Test create, list filter"""
name1 = uuid.uuid4().hex
name2 = uuid.uuid4().hex
- cmd = ('subnet create ' +
- '--network ' + self.NETWORK_NAME +
- ' --dhcp --subnet-range')
+ cmd = (
+ 'subnet create '
+ + '--network '
+ + self.NETWORK_NAME
+ + ' --dhcp --subnet-range'
+ )
cmd_output = self._subnet_create(cmd, name1)
self.addCleanup(self.openstack, 'subnet delete ' + name1)
@@ -114,10 +114,13 @@ class SubnetTests(common.NetworkTagTests):
cmd_output["ip_version"],
)
- cmd = ('subnet create ' +
- '--network ' + self.NETWORK_NAME +
- ' --ip-version 6 --no-dhcp ' +
- '--subnet-range')
+ cmd = (
+ 'subnet create '
+ + '--network '
+ + self.NETWORK_NAME
+ + ' --ip-version 6 --no-dhcp '
+ + '--subnet-range'
+ )
cmd_output = self._subnet_create(cmd, name2, is_type_ipv4=False)
self.addCleanup(self.openstack, 'subnet delete ' + name2)
@@ -140,8 +143,7 @@ class SubnetTests(common.NetworkTagTests):
# Test list --long
cmd_output = self.openstack(
- 'subnet list ' +
- '--long ',
+ 'subnet list ' + '--long ',
parse_output=True,
)
names = [x["Name"] for x in cmd_output]
@@ -150,8 +152,7 @@ class SubnetTests(common.NetworkTagTests):
# Test list --name
cmd_output = self.openstack(
- 'subnet list ' +
- '--name ' + name1,
+ 'subnet list ' + '--name ' + name1,
parse_output=True,
)
names = [x["Name"] for x in cmd_output]
@@ -160,8 +161,7 @@ class SubnetTests(common.NetworkTagTests):
# Test list --ip-version
cmd_output = self.openstack(
- 'subnet list ' +
- '--ip-version 6',
+ 'subnet list ' + '--ip-version 6',
parse_output=True,
)
names = [x["Name"] for x in cmd_output]
@@ -170,8 +170,7 @@ class SubnetTests(common.NetworkTagTests):
# Test list --network
cmd_output = self.openstack(
- 'subnet list ' +
- '--network ' + self.NETWORK_ID,
+ 'subnet list ' + '--network ' + self.NETWORK_ID,
parse_output=True,
)
names = [x["Name"] for x in cmd_output]
@@ -180,8 +179,7 @@ class SubnetTests(common.NetworkTagTests):
# Test list --no-dhcp
cmd_output = self.openstack(
- 'subnet list ' +
- '--no-dhcp ',
+ 'subnet list ' + '--no-dhcp ',
parse_output=True,
)
names = [x["Name"] for x in cmd_output]
@@ -193,9 +191,12 @@ class SubnetTests(common.NetworkTagTests):
name = uuid.uuid4().hex
new_name = name + "_"
- cmd = ('subnet create ' +
- '--network ' + self.NETWORK_NAME +
- ' --description aaaa --subnet-range')
+ cmd = (
+ 'subnet create '
+ + '--network '
+ + self.NETWORK_NAME
+ + ' --description aaaa --subnet-range'
+ )
cmd_output = self._subnet_create(cmd, name)
self.addCleanup(self.openstack, 'subnet delete ' + new_name)
@@ -210,19 +211,19 @@ class SubnetTests(common.NetworkTagTests):
# Test set --no-dhcp --name --gateway --description
cmd_output = self.openstack(
- 'subnet set ' +
- '--name ' + new_name +
- ' --description bbbb ' +
- '--no-dhcp ' +
- '--gateway 10.10.11.1 ' +
- '--service-type network:floatingip_agent_gateway ' +
- name
+ 'subnet set '
+ + '--name '
+ + new_name
+ + ' --description bbbb '
+ + '--no-dhcp '
+ + '--gateway 10.10.11.1 '
+ + '--service-type network:floatingip_agent_gateway '
+ + name
)
self.assertOutput('', cmd_output)
cmd_output = self.openstack(
- 'subnet show ' +
- new_name,
+ 'subnet show ' + new_name,
parse_output=True,
)
self.assertEqual(
@@ -248,15 +249,14 @@ class SubnetTests(common.NetworkTagTests):
# Test unset
cmd_output = self.openstack(
- 'subnet unset ' +
- '--service-type network:floatingip_agent_gateway ' +
- new_name
+ 'subnet unset '
+ + '--service-type network:floatingip_agent_gateway '
+ + new_name
)
self.assertOutput('', cmd_output)
cmd_output = self.openstack(
- 'subnet show ' +
- new_name,
+ 'subnet show ' + new_name,
parse_output=True,
)
self.assertEqual(
@@ -271,23 +271,32 @@ class SubnetTests(common.NetworkTagTests):
for i in range(4):
# Make a random subnet
if is_type_ipv4:
- subnet = ".".join(map(
- str,
- (random.randint(0, 223) for _ in range(3))
- )) + ".0/26"
+ subnet = (
+ ".".join(
+ map(str, (random.randint(0, 223) for _ in range(3)))
+ )
+ + ".0/26"
+ )
else:
- subnet = ":".join(map(
- str,
- (hex(random.randint(0, 65535))[2:] for _ in range(7))
- )) + ":0/112"
+ subnet = (
+ ":".join(
+ map(
+ str,
+ (
+ hex(random.randint(0, 65535))[2:]
+ for _ in range(7)
+ ),
+ )
+ )
+ + ":0/112"
+ )
try:
cmd_output = self.openstack(
- cmd + ' ' + subnet + ' ' +
- name,
+ cmd + ' ' + subnet + ' ' + name,
parse_output=True,
)
except Exception:
- if (i == 3):
+ if i == 3:
# raise the exception at the last time
raise
pass
@@ -297,7 +306,11 @@ class SubnetTests(common.NetworkTagTests):
return cmd_output
def _create_resource_for_tag_test(self, name, args):
- cmd = ('subnet create --network ' +
- self.NETWORK_NAME + ' ' + args +
- ' --subnet-range')
+ cmd = (
+ 'subnet create --network '
+ + self.NETWORK_NAME
+ + ' '
+ + args
+ + ' --subnet-range'
+ )
return self._subnet_create(cmd, name)
diff --git a/openstackclient/tests/functional/network/v2/test_subnet_pool.py b/openstackclient/tests/functional/network/v2/test_subnet_pool.py
index 8dc5e7a1..f7cb1d74 100644
--- a/openstackclient/tests/functional/network/v2/test_subnet_pool.py
+++ b/openstackclient/tests/functional/network/v2/test_subnet_pool.py
@@ -32,26 +32,14 @@ class SubnetPoolTests(common.NetworkTagTests):
name1 = uuid.uuid4().hex
cmd_output, pool_prefix = self._subnet_pool_create("", name1)
- self.assertEqual(
- name1,
- cmd_output["name"]
- )
- self.assertEqual(
- [pool_prefix],
- cmd_output["prefixes"]
- )
+ self.assertEqual(name1, cmd_output["name"])
+ self.assertEqual([pool_prefix], cmd_output["prefixes"])
name2 = uuid.uuid4().hex
cmd_output, pool_prefix = self._subnet_pool_create("", name2)
- self.assertEqual(
- name2,
- cmd_output["name"]
- )
- self.assertEqual(
- [pool_prefix],
- cmd_output["prefixes"]
- )
+ self.assertEqual(name2, cmd_output["name"])
+ self.assertEqual([pool_prefix], cmd_output["prefixes"])
del_output = self.openstack(
'subnet pool delete ' + name1 + ' ' + name2,
@@ -85,8 +73,7 @@ class SubnetPoolTests(common.NetworkTagTests):
name2 = uuid.uuid4().hex
cmd_output, pool_prefix = self._subnet_pool_create(
- '--project ' + demo_project_id +
- ' --no-share ',
+ '--project ' + demo_project_id + ' --no-share ',
name1,
)
self.addCleanup(self.openstack, 'subnet pool delete ' + name1)
@@ -131,8 +118,7 @@ class SubnetPoolTests(common.NetworkTagTests):
# Test list --project
cmd_output = self.openstack(
- 'subnet pool list ' +
- '--project ' + demo_project_id,
+ 'subnet pool list ' + '--project ' + demo_project_id,
parse_output=True,
)
names = [x["Name"] for x in cmd_output]
@@ -141,8 +127,7 @@ class SubnetPoolTests(common.NetworkTagTests):
# Test list --share
cmd_output = self.openstack(
- 'subnet pool list ' +
- '--share',
+ 'subnet pool list ' + '--share',
parse_output=True,
)
names = [x["Name"] for x in cmd_output]
@@ -151,8 +136,7 @@ class SubnetPoolTests(common.NetworkTagTests):
# Test list --name
cmd_output = self.openstack(
- 'subnet pool list ' +
- '--name ' + name1,
+ 'subnet pool list ' + '--name ' + name1,
parse_output=True,
)
names = [x["Name"] for x in cmd_output]
@@ -161,8 +145,7 @@ class SubnetPoolTests(common.NetworkTagTests):
# Test list --long
cmd_output = self.openstack(
- 'subnet pool list ' +
- '--long ',
+ 'subnet pool list ' + '--long ',
parse_output=True,
)
names = [x["Name"] for x in cmd_output]
@@ -175,11 +158,11 @@ class SubnetPoolTests(common.NetworkTagTests):
name = uuid.uuid4().hex
new_name = name + "_"
cmd_output, pool_prefix = self._subnet_pool_create(
- '--default-prefix-length 16 ' +
- '--min-prefix-length 16 ' +
- '--max-prefix-length 32 ' +
- '--description aaaa ' +
- '--default-quota 10 ',
+ '--default-prefix-length 16 '
+ + '--min-prefix-length 16 '
+ + '--max-prefix-length 32 '
+ + '--description aaaa '
+ + '--default-quota 10 ',
name,
)
@@ -218,21 +201,21 @@ class SubnetPoolTests(common.NetworkTagTests):
# Test set
cmd_output = self.openstack(
- 'subnet pool set ' +
- '--name ' + new_name +
- ' --description bbbb ' +
- ' --pool-prefix 10.110.0.0/16 ' +
- '--default-prefix-length 8 ' +
- '--min-prefix-length 8 ' +
- '--max-prefix-length 16 ' +
- '--default-quota 20 ' +
- name,
+ 'subnet pool set '
+ + '--name '
+ + new_name
+ + ' --description bbbb '
+ + ' --pool-prefix 10.110.0.0/16 '
+ + '--default-prefix-length 8 '
+ + '--min-prefix-length 8 '
+ + '--max-prefix-length 16 '
+ + '--default-quota 20 '
+ + name,
)
self.assertOutput('', cmd_output)
cmd_output = self.openstack(
- 'subnet pool show ' +
- new_name,
+ 'subnet pool show ' + new_name,
parse_output=True,
)
self.assertEqual(
@@ -300,26 +283,42 @@ class SubnetPoolTests(common.NetworkTagTests):
for i in range(4):
# Create a random prefix
if is_type_ipv4:
- pool_prefix = ".".join(map(
- str,
- (random.randint(0, 223) for _ in range(2)),
- )) + ".0.0/16"
+ pool_prefix = (
+ ".".join(
+ map(
+ str,
+ (random.randint(0, 223) for _ in range(2)),
+ )
+ )
+ + ".0.0/16"
+ )
else:
- pool_prefix = ":".join(map(
- str,
- (hex(random.randint(0, 65535))[2:] for _ in range(6)),
- )) + ":0:0/96"
+ pool_prefix = (
+ ":".join(
+ map(
+ str,
+ (
+ hex(random.randint(0, 65535))[2:]
+ for _ in range(6)
+ ),
+ )
+ )
+ + ":0:0/96"
+ )
try:
cmd_output = self.openstack(
- 'subnet pool create ' +
- cmd + ' ' +
- '--pool-prefix ' + pool_prefix + ' ' +
- name,
+ 'subnet pool create '
+ + cmd
+ + ' '
+ + '--pool-prefix '
+ + pool_prefix
+ + ' '
+ + name,
parse_output=True,
)
except Exception:
- if (i == 3):
+ if i == 3:
# Raise the exception the last time
raise
pass
diff --git a/openstackclient/tests/unit/network/test_common.py b/openstackclient/tests/unit/network/test_common.py
index 4dde1b2b..dec27b7b 100644
--- a/openstackclient/tests/unit/network/test_common.py
+++ b/openstackclient/tests/unit/network/test_common.py
@@ -49,7 +49,6 @@ def _add_compute_argument(parser):
class FakeNetworkAndComputeCommand(common.NetworkAndComputeCommand):
-
def update_parser_common(self, parser):
return _add_common_argument(parser)
@@ -67,7 +66,6 @@ class FakeNetworkAndComputeCommand(common.NetworkAndComputeCommand):
class FakeNetworkAndComputeLister(common.NetworkAndComputeLister):
-
def update_parser_common(self, parser):
return _add_common_argument(parser)
@@ -85,7 +83,6 @@ class FakeNetworkAndComputeLister(common.NetworkAndComputeLister):
class FakeNetworkAndComputeShowOne(common.NetworkAndComputeShowOne):
-
def update_parser_common(self, parser):
return _add_common_argument(parser)
@@ -103,11 +100,12 @@ class FakeNetworkAndComputeShowOne(common.NetworkAndComputeShowOne):
class FakeCreateNeutronCommandWithExtraArgs(
- common.NeutronCommandWithExtraArgs):
-
+ common.NeutronCommandWithExtraArgs
+):
def get_parser(self, prog_name):
- parser = super(FakeCreateNeutronCommandWithExtraArgs,
- self).get_parser(prog_name)
+ parser = super(FakeCreateNeutronCommandWithExtraArgs, self).get_parser(
+ prog_name
+ )
parser.add_argument(
'--known-attribute',
)
@@ -119,12 +117,12 @@ class FakeCreateNeutronCommandWithExtraArgs(
if 'known_attribute' in parsed_args:
attrs['known_attribute'] = parsed_args.known_attribute
attrs.update(
- self._parse_extra_properties(parsed_args.extra_properties))
+ self._parse_extra_properties(parsed_args.extra_properties)
+ )
client.test_create_action(**attrs)
class TestNetworkAndCompute(utils.TestCommand):
-
def setUp(self):
super(TestNetworkAndCompute, self).setUp()
@@ -134,26 +132,22 @@ class TestNetworkAndCompute(utils.TestCommand):
self.app.client_manager.network = mock.Mock()
self.network = self.app.client_manager.network
self.network.network_action = mock.Mock(
- return_value='take_action_network')
+ return_value='take_action_network'
+ )
# Create compute client mocks.
self.app.client_manager.compute = mock.Mock()
self.compute = self.app.client_manager.compute
self.compute.compute_action = mock.Mock(
- return_value='take_action_compute')
+ return_value='take_action_compute'
+ )
# Subclasses can override the command object to test.
self.cmd = FakeNetworkAndComputeCommand(self.app, self.namespace)
def test_take_action_network(self):
- arglist = [
- 'common',
- 'network'
- ]
- verifylist = [
- ('common', 'common'),
- ('network', 'network')
- ]
+ arglist = ['common', 'network']
+ verifylist = [('common', 'common'), ('network', 'network')]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
@@ -161,14 +155,8 @@ class TestNetworkAndCompute(utils.TestCommand):
self.assertEqual('take_action_network', result)
def test_take_action_compute(self):
- arglist = [
- 'common',
- 'compute'
- ]
- verifylist = [
- ('common', 'common'),
- ('compute', 'compute')
- ]
+ arglist = ['common', 'compute']
+ verifylist = [('common', 'common'), ('compute', 'compute')]
self.app.client_manager.network_endpoint_enabled = False
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
@@ -178,21 +166,18 @@ class TestNetworkAndCompute(utils.TestCommand):
class TestNetworkAndComputeCommand(TestNetworkAndCompute):
-
def setUp(self):
super(TestNetworkAndComputeCommand, self).setUp()
self.cmd = FakeNetworkAndComputeCommand(self.app, self.namespace)
class TestNetworkAndComputeLister(TestNetworkAndCompute):
-
def setUp(self):
super(TestNetworkAndComputeLister, self).setUp()
self.cmd = FakeNetworkAndComputeLister(self.app, self.namespace)
class TestNetworkAndComputeShowOne(TestNetworkAndCompute):
-
def setUp(self):
super(TestNetworkAndComputeShowOne, self).setUp()
self.cmd = FakeNetworkAndComputeShowOne(self.app, self.namespace)
@@ -200,18 +185,25 @@ class TestNetworkAndComputeShowOne(TestNetworkAndCompute):
def test_take_action_with_http_exception(self):
with mock.patch.object(self.cmd, 'take_action_network') as m_action:
m_action.side_effect = openstack.exceptions.HttpException("bar")
- self.assertRaisesRegex(exceptions.CommandError, "bar",
- self.cmd.take_action, mock.Mock())
+ self.assertRaisesRegex(
+ exceptions.CommandError,
+ "bar",
+ self.cmd.take_action,
+ mock.Mock(),
+ )
self.app.client_manager.network_endpoint_enabled = False
with mock.patch.object(self.cmd, 'take_action_compute') as m_action:
m_action.side_effect = openstack.exceptions.HttpException("bar")
- self.assertRaisesRegex(exceptions.CommandError, "bar",
- self.cmd.take_action, mock.Mock())
+ self.assertRaisesRegex(
+ exceptions.CommandError,
+ "bar",
+ self.cmd.take_action,
+ mock.Mock(),
+ )
class TestNeutronCommandWithExtraArgs(utils.TestCommand):
-
def setUp(self):
super(TestNeutronCommandWithExtraArgs, self).setUp()
@@ -223,106 +215,143 @@ class TestNeutronCommandWithExtraArgs(utils.TestCommand):
# Subclasses can override the command object to test.
self.cmd = FakeCreateNeutronCommandWithExtraArgs(
- self.app, self.namespace)
+ self.app, self.namespace
+ )
def test_create_extra_attributes_default_type(self):
arglist = [
- '--known-attribute', 'known-value',
- '--extra-property', 'name=extra_name,value=extra_value'
+ '--known-attribute',
+ 'known-value',
+ '--extra-property',
+ 'name=extra_name,value=extra_value',
]
verifylist = [
('known_attribute', 'known-value'),
- ('extra_properties', [{'name': 'extra_name',
- 'value': 'extra_value'}])
+ (
+ 'extra_properties',
+ [{'name': 'extra_name', 'value': 'extra_value'}],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
self.cmd.take_action(parsed_args)
self.network.test_create_action.assert_called_with(
- known_attribute='known-value', extra_name='extra_value')
+ known_attribute='known-value', extra_name='extra_value'
+ )
def test_create_extra_attributes_string(self):
arglist = [
- '--known-attribute', 'known-value',
- '--extra-property', 'type=str,name=extra_name,value=extra_value'
+ '--known-attribute',
+ 'known-value',
+ '--extra-property',
+ 'type=str,name=extra_name,value=extra_value',
]
verifylist = [
('known_attribute', 'known-value'),
- ('extra_properties', [{'name': 'extra_name',
- 'type': 'str',
- 'value': 'extra_value'}])
+ (
+ 'extra_properties',
+ [
+ {
+ 'name': 'extra_name',
+ 'type': 'str',
+ 'value': 'extra_value',
+ }
+ ],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
self.cmd.take_action(parsed_args)
self.network.test_create_action.assert_called_with(
- known_attribute='known-value', extra_name='extra_value')
+ known_attribute='known-value', extra_name='extra_value'
+ )
def test_create_extra_attributes_bool(self):
arglist = [
- '--known-attribute', 'known-value',
- '--extra-property', 'type=bool,name=extra_name,value=TrUe'
+ '--known-attribute',
+ 'known-value',
+ '--extra-property',
+ 'type=bool,name=extra_name,value=TrUe',
]
verifylist = [
('known_attribute', 'known-value'),
- ('extra_properties', [{'name': 'extra_name',
- 'type': 'bool',
- 'value': 'TrUe'}])
+ (
+ 'extra_properties',
+ [{'name': 'extra_name', 'type': 'bool', 'value': 'TrUe'}],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
self.cmd.take_action(parsed_args)
self.network.test_create_action.assert_called_with(
- known_attribute='known-value', extra_name=True)
+ known_attribute='known-value', extra_name=True
+ )
def test_create_extra_attributes_int(self):
arglist = [
- '--known-attribute', 'known-value',
- '--extra-property', 'type=int,name=extra_name,value=8'
+ '--known-attribute',
+ 'known-value',
+ '--extra-property',
+ 'type=int,name=extra_name,value=8',
]
verifylist = [
('known_attribute', 'known-value'),
- ('extra_properties', [{'name': 'extra_name',
- 'type': 'int',
- 'value': '8'}])
+ (
+ 'extra_properties',
+ [{'name': 'extra_name', 'type': 'int', 'value': '8'}],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
self.cmd.take_action(parsed_args)
self.network.test_create_action.assert_called_with(
- known_attribute='known-value', extra_name=8)
+ known_attribute='known-value', extra_name=8
+ )
def test_create_extra_attributes_list(self):
arglist = [
- '--known-attribute', 'known-value',
- '--extra-property', 'type=list,name=extra_name,value=v_1;v_2'
+ '--known-attribute',
+ 'known-value',
+ '--extra-property',
+ 'type=list,name=extra_name,value=v_1;v_2',
]
verifylist = [
('known_attribute', 'known-value'),
- ('extra_properties', [{'name': 'extra_name',
- 'type': 'list',
- 'value': 'v_1;v_2'}])
+ (
+ 'extra_properties',
+ [{'name': 'extra_name', 'type': 'list', 'value': 'v_1;v_2'}],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
self.cmd.take_action(parsed_args)
self.network.test_create_action.assert_called_with(
- known_attribute='known-value', extra_name=['v_1', 'v_2'])
+ known_attribute='known-value', extra_name=['v_1', 'v_2']
+ )
def test_create_extra_attributes_dict(self):
arglist = [
- '--known-attribute', 'known-value',
- '--extra-property', 'type=dict,name=extra_name,value=n1:v1;n2:v2'
+ '--known-attribute',
+ 'known-value',
+ '--extra-property',
+ 'type=dict,name=extra_name,value=n1:v1;n2:v2',
]
verifylist = [
('known_attribute', 'known-value'),
- ('extra_properties', [{'name': 'extra_name',
- 'type': 'dict',
- 'value': 'n1:v1;n2:v2'}])
+ (
+ 'extra_properties',
+ [
+ {
+ 'name': 'extra_name',
+ 'type': 'dict',
+ 'value': 'n1:v1;n2:v2',
+ }
+ ],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
self.cmd.take_action(parsed_args)
self.network.test_create_action.assert_called_with(
- known_attribute='known-value',
- extra_name={'n1': 'v1', 'n2': 'v2'})
+ known_attribute='known-value', extra_name={'n1': 'v1', 'n2': 'v2'}
+ )
diff --git a/openstackclient/tests/unit/network/test_utils.py b/openstackclient/tests/unit/network/test_utils.py
index 6252d7f7..bc3bc127 100644
--- a/openstackclient/tests/unit/network/test_utils.py
+++ b/openstackclient/tests/unit/network/test_utils.py
@@ -18,7 +18,6 @@ from openstackclient.tests.unit import utils as tests_utils
class TestUtils(tests_utils.TestCase):
-
def test_str2bool(self):
self.assertTrue(utils.str2bool("true"))
self.assertTrue(utils.str2bool("True"))
@@ -35,25 +34,19 @@ class TestUtils(tests_utils.TestCase):
self.assertIsNone(utils.str2bool(None))
def test_str2list(self):
- self.assertEqual(
- ['a', 'b', 'c'], utils.str2list("a;b;c"))
- self.assertEqual(
- ['abc'], utils.str2list("abc"))
+ self.assertEqual(['a', 'b', 'c'], utils.str2list("a;b;c"))
+ self.assertEqual(['abc'], utils.str2list("abc"))
self.assertEqual([], utils.str2list(""))
self.assertEqual([], utils.str2list(None))
def test_str2dict(self):
+ self.assertEqual({'a': 'aaa', 'b': '2'}, utils.str2dict('a:aaa;b:2'))
self.assertEqual(
- {'a': 'aaa', 'b': '2'},
- utils.str2dict('a:aaa;b:2'))
- self.assertEqual(
- {'a': 'aaa;b;c', 'd': 'ddd'},
- utils.str2dict('a:aaa;b;c;d:ddd'))
+ {'a': 'aaa;b;c', 'd': 'ddd'}, utils.str2dict('a:aaa;b;c;d:ddd')
+ )
self.assertEqual({}, utils.str2dict(""))
self.assertEqual({}, utils.str2dict(None))
- self.assertRaises(
- exceptions.CommandError,
- utils.str2dict, "aaa;b:2")
+ self.assertRaises(exceptions.CommandError, utils.str2dict, "aaa;b:2")
diff --git a/openstackclient/tests/unit/network/v2/fakes.py b/openstackclient/tests/unit/network/v2/fakes.py
index 6d922008..ce7ec798 100644
--- a/openstackclient/tests/unit/network/v2/fakes.py
+++ b/openstackclient/tests/unit/network/v2/fakes.py
@@ -61,16 +61,38 @@ RULE_TYPE_BANDWIDTH_LIMIT = 'bandwidth-limit'
RULE_TYPE_DSCP_MARKING = 'dscp-marking'
RULE_TYPE_MINIMUM_BANDWIDTH = 'minimum-bandwidth'
RULE_TYPE_MINIMUM_PACKET_RATE = 'minimum-packet-rate'
-VALID_QOS_RULES = [RULE_TYPE_BANDWIDTH_LIMIT,
- RULE_TYPE_DSCP_MARKING,
- RULE_TYPE_MINIMUM_BANDWIDTH,
- RULE_TYPE_MINIMUM_PACKET_RATE]
-VALID_DSCP_MARKS = [0, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32,
- 34, 36, 38, 40, 46, 48, 56]
+VALID_QOS_RULES = [
+ RULE_TYPE_BANDWIDTH_LIMIT,
+ RULE_TYPE_DSCP_MARKING,
+ RULE_TYPE_MINIMUM_BANDWIDTH,
+ RULE_TYPE_MINIMUM_PACKET_RATE,
+]
+VALID_DSCP_MARKS = [
+ 0,
+ 8,
+ 10,
+ 12,
+ 14,
+ 16,
+ 18,
+ 20,
+ 22,
+ 24,
+ 26,
+ 28,
+ 30,
+ 32,
+ 34,
+ 36,
+ 38,
+ 40,
+ 46,
+ 48,
+ 56,
+]
class FakeNetworkV2Client(object):
-
def __init__(self, **kwargs):
self.session = mock.Mock()
self.extensions = mock.Mock()
@@ -78,7 +100,6 @@ class FakeNetworkV2Client(object):
class TestNetworkV2(utils.TestCommand):
-
def setUp(self):
super(TestNetworkV2, self).setUp()
@@ -92,8 +113,9 @@ class TestNetworkV2(utils.TestCommand):
)
self.app.client_manager.sdk_connection = mock.Mock()
- self.app.client_manager.sdk_connection.network = \
+ self.app.client_manager.sdk_connection.network = (
self.app.client_manager.network
+ )
self.app.client_manager.identity = (
identity_fakes_v3.FakeIdentityv3Client(
@@ -124,15 +146,15 @@ class FakeExtension(object):
'description': 'description-' + uuid.uuid4().hex,
'updated': '2013-07-09T12:00:0-00:00',
'alias': 'Dystopian',
- 'links': '[{"href":''"https://github.com/os/network", "type"}]',
+ 'links': '[{"href":' '"https://github.com/os/network", "type"}]',
}
# Overwrite default attributes.
extension_info.update(attrs)
extension = fakes.FakeResource(
- info=copy.deepcopy(extension_info),
- loaded=True)
+ info=copy.deepcopy(extension_info), loaded=True
+ )
return extension
@@ -169,8 +191,8 @@ class FakeNetworkQosPolicy(object):
qos_policy_attrs.update(attrs)
qos_policy = fakes.FakeResource(
- info=copy.deepcopy(qos_policy_attrs),
- loaded=True)
+ info=copy.deepcopy(qos_policy_attrs), loaded=True
+ )
# Set attributes with special mapping in OpenStack SDK.
qos_policy.is_shared = qos_policy_attrs['shared']
@@ -191,7 +213,8 @@ class FakeNetworkQosPolicy(object):
qos_policies = []
for i in range(0, count):
qos_policies.append(
- FakeNetworkQosPolicy.create_one_qos_policy(attrs))
+ FakeNetworkQosPolicy.create_one_qos_policy(attrs)
+ )
return qos_policies
@@ -240,8 +263,8 @@ class FakeNetworkSecGroup(object):
}
security_group = fakes.FakeResource(
- info=copy.deepcopy(security_group_attrs),
- loaded=True)
+ info=copy.deepcopy(security_group_attrs), loaded=True
+ )
return security_group
@@ -285,8 +308,9 @@ class FakeNetworkQosRule(object):
# Overwrite default attributes.
qos_rule_attrs.update(attrs)
- qos_rule = fakes.FakeResource(info=copy.deepcopy(qos_rule_attrs),
- loaded=True)
+ qos_rule = fakes.FakeResource(
+ info=copy.deepcopy(qos_rule_attrs), loaded=True
+ )
return qos_rule
@@ -322,7 +346,7 @@ class FakeNetworkQosRule(object):
qos minimum bandwidth rules
"""
if qos_rules is None:
- qos_rules = (FakeNetworkQosRule.create_qos_rules(count))
+ qos_rules = FakeNetworkQosRule.create_qos_rules(count)
return mock.Mock(side_effect=qos_rules)
@@ -350,8 +374,8 @@ class FakeNetworkQosRuleType(object):
qos_rule_type_attrs.update(attrs)
return fakes.FakeResource(
- info=copy.deepcopy(qos_rule_type_attrs),
- loaded=True)
+ info=copy.deepcopy(qos_rule_type_attrs), loaded=True
+ )
@staticmethod
def create_qos_rule_types(attrs=None, count=2):
@@ -367,7 +391,8 @@ class FakeNetworkQosRuleType(object):
qos_rule_types = []
for i in range(0, count):
qos_rule_types.append(
- FakeNetworkQosRuleType.create_one_qos_rule_type(attrs))
+ FakeNetworkQosRuleType.create_one_qos_rule_type(attrs)
+ )
return qos_rule_types
@@ -408,8 +433,9 @@ class FakeRouter(object):
# Overwrite default attributes.
router_attrs.update(attrs)
- router = fakes.FakeResource(info=copy.deepcopy(router_attrs),
- loaded=True)
+ router = fakes.FakeResource(
+ info=copy.deepcopy(router_attrs), loaded=True
+ )
# Set attributes with special mapping in OpenStack SDK.
router.is_admin_state_up = router_attrs['admin_state_up']
@@ -485,8 +511,8 @@ class FakeSecurityGroup(object):
security_group_attrs.update(attrs)
security_group = fakes.FakeResource(
- info=copy.deepcopy(security_group_attrs),
- loaded=True)
+ info=copy.deepcopy(security_group_attrs), loaded=True
+ )
return security_group
@@ -504,7 +530,8 @@ class FakeSecurityGroup(object):
security_groups = []
for i in range(0, count):
security_groups.append(
- FakeSecurityGroup.create_one_security_group(attrs))
+ FakeSecurityGroup.create_one_security_group(attrs)
+ )
return security_groups
@@ -544,8 +571,8 @@ class FakeSecurityGroupRule(object):
# Set default attributes.
security_group_rule_attrs = {
- 'description': 'security-group-rule-description-' +
- uuid.uuid4().hex,
+ 'description': 'security-group-rule-description-'
+ + uuid.uuid4().hex,
'direction': 'ingress',
'ether_type': 'IPv4',
'id': 'security-group-rule-id-' + uuid.uuid4().hex,
@@ -564,8 +591,8 @@ class FakeSecurityGroupRule(object):
security_group_rule_attrs.update(attrs)
security_group_rule = fakes.FakeResource(
- info=copy.deepcopy(security_group_rule_attrs),
- loaded=True)
+ info=copy.deepcopy(security_group_rule_attrs), loaded=True
+ )
return security_group_rule
@@ -583,7 +610,8 @@ class FakeSecurityGroupRule(object):
security_group_rules = []
for i in range(0, count):
security_group_rules.append(
- FakeSecurityGroupRule.create_one_security_group_rule(attrs))
+ FakeSecurityGroupRule.create_one_security_group_rule(attrs)
+ )
return security_group_rules
@@ -604,7 +632,8 @@ class FakeSecurityGroupRule(object):
"""
if security_group_rules is None:
security_group_rules = (
- FakeSecurityGroupRule.create_security_group_rules(count))
+ FakeSecurityGroupRule.create_security_group_rules(count)
+ )
return mock.Mock(side_effect=security_group_rules)
@@ -649,8 +678,9 @@ class FakeSubnet(object):
# Overwrite default attributes.
subnet_attrs.update(attrs)
- subnet = fakes.FakeResource(info=copy.deepcopy(subnet_attrs),
- loaded=True)
+ subnet = fakes.FakeResource(
+ info=copy.deepcopy(subnet_attrs), loaded=True
+ )
# Set attributes with special mappings in OpenStack SDK.
subnet.is_dhcp_enabled = subnet_attrs['enable_dhcp']
@@ -731,8 +761,7 @@ class FakeFloatingIP(object):
floating_ip_attrs.update(attrs)
floating_ip = fakes.FakeResource(
- info=copy.deepcopy(floating_ip_attrs),
- loaded=True
+ info=copy.deepcopy(floating_ip_attrs), loaded=True
)
return floating_ip
@@ -793,8 +822,8 @@ class FakeNetworkMeter(object):
meter_attrs.update(attrs)
meter = fakes.FakeResource(
- info=copy.deepcopy(meter_attrs),
- loaded=True)
+ info=copy.deepcopy(meter_attrs), loaded=True
+ )
return meter
@@ -804,16 +833,14 @@ class FakeNetworkMeter(object):
meters = []
for i in range(0, count):
- meters.append(FakeNetworkMeter.
- create_one_meter(attrs))
+ meters.append(FakeNetworkMeter.create_one_meter(attrs))
return meters
@staticmethod
def get_meter(meter=None, count=2):
"""Get a list of meters"""
if meter is None:
- meter = (FakeNetworkMeter.
- create_meter(count))
+ meter = FakeNetworkMeter.create_meter(count)
return mock.Mock(side_effect=meter)
@@ -840,8 +867,8 @@ class FakeNetworkMeterRule(object):
meter_rule_attrs.update(attrs)
meter_rule = fakes.FakeResource(
- info=copy.deepcopy(meter_rule_attrs),
- loaded=True)
+ info=copy.deepcopy(meter_rule_attrs), loaded=True
+ )
return meter_rule
@@ -851,16 +878,14 @@ class FakeNetworkMeterRule(object):
meter_rules = []
for i in range(0, count):
- meter_rules.append(FakeNetworkMeterRule.
- create_one_rule(attrs))
+ meter_rules.append(FakeNetworkMeterRule.create_one_rule(attrs))
return meter_rules
@staticmethod
def get_meter_rule(meter_rule=None, count=2):
"""Get a list of meter rules"""
if meter_rule is None:
- meter_rule = (FakeNetworkMeterRule.
- create_meter_rule(count))
+ meter_rule = FakeNetworkMeterRule.create_meter_rule(count)
return mock.Mock(side_effect=meter_rule)
@@ -901,13 +926,13 @@ class FakeSubnetPool(object):
subnet_pool_attrs.update(attrs)
subnet_pool = fakes.FakeResource(
- info=copy.deepcopy(subnet_pool_attrs),
- loaded=True
+ info=copy.deepcopy(subnet_pool_attrs), loaded=True
)
# Set attributes with special mapping in OpenStack SDK.
- subnet_pool.default_prefix_length = \
- subnet_pool_attrs['default_prefixlen']
+ subnet_pool.default_prefix_length = subnet_pool_attrs[
+ 'default_prefixlen'
+ ]
subnet_pool.is_shared = subnet_pool_attrs['shared']
subnet_pool.maximum_prefix_length = subnet_pool_attrs['max_prefixlen']
subnet_pool.minimum_prefix_length = subnet_pool_attrs['min_prefixlen']
@@ -927,9 +952,7 @@ class FakeSubnetPool(object):
"""
subnet_pools = []
for i in range(0, count):
- subnet_pools.append(
- FakeSubnetPool.create_one_subnet_pool(attrs)
- )
+ subnet_pools.append(FakeSubnetPool.create_one_subnet_pool(attrs))
return subnet_pools
@@ -971,8 +994,8 @@ class FakeNetworkServiceProvider(object):
service_provider.update(attrs)
provider = fakes.FakeResource(
- info=copy.deepcopy(service_provider),
- loaded=True)
+ info=copy.deepcopy(service_provider), loaded=True
+ )
provider.is_default = service_provider['default']
return provider
@@ -983,9 +1006,11 @@ class FakeNetworkServiceProvider(object):
service_providers = []
for i in range(0, count):
- service_providers.append(FakeNetworkServiceProvider.
- create_one_network_service_provider(
- attrs))
+ service_providers.append(
+ FakeNetworkServiceProvider.create_one_network_service_provider(
+ attrs
+ )
+ )
return service_providers
@@ -1006,13 +1031,14 @@ class FakeQuota(object):
'security_groups': 10,
'security_group_rules': 100,
'subnets': 20,
- 'subnet_pools': 30}
+ 'subnet_pools': 30,
+ }
quota_attrs.update(attrs)
quota = fakes.FakeResource(
- info=copy.deepcopy(quota_attrs),
- loaded=True)
+ info=copy.deepcopy(quota_attrs), loaded=True
+ )
return quota
@staticmethod
@@ -1029,13 +1055,14 @@ class FakeQuota(object):
'security_group': 30,
'security_group_rule': 200,
'subnet': 10,
- 'subnetpool': 20}
+ 'subnetpool': 20,
+ }
quota_attrs.update(attrs)
quota = fakes.FakeResource(
- info=copy.deepcopy(quota_attrs),
- loaded=True)
+ info=copy.deepcopy(quota_attrs), loaded=True
+ )
return quota
@staticmethod
@@ -1052,18 +1079,19 @@ class FakeQuota(object):
'security_groups': {'used': 0, 'reserved': 0, 'limit': 10},
'security_group_rules': {'used': 0, 'reserved': 0, 'limit': 100},
'subnets': {'used': 0, 'reserved': 0, 'limit': 20},
- 'subnet_pools': {'used': 0, 'reserved': 0, 'limit': 30}}
+ 'subnet_pools': {'used': 0, 'reserved': 0, 'limit': 30},
+ }
quota_attrs.update(attrs)
quota = fakes.FakeResource(
- info=copy.deepcopy(quota_attrs),
- loaded=True)
+ info=copy.deepcopy(quota_attrs), loaded=True
+ )
return quota
class FakeFloatingIPPortForwarding(object):
- """"Fake one or more Port forwarding"""
+ """Fake one or more Port forwarding"""
@staticmethod
def create_one_port_forwarding(attrs=None, use_range=False):
@@ -1113,8 +1141,7 @@ class FakeFloatingIPPortForwarding(object):
port_forwarding_attrs.update(attrs)
port_forwarding = fakes.FakeResource(
- info=copy.deepcopy(port_forwarding_attrs),
- loaded=True
+ info=copy.deepcopy(port_forwarding_attrs), loaded=True
)
return port_forwarding
@@ -1122,20 +1149,21 @@ class FakeFloatingIPPortForwarding(object):
def create_port_forwardings(attrs=None, count=2, use_range=False):
"""Create multiple fake Port Forwarding.
- :param Dictionary attrs:
- A dictionary with all attributes
- :param int count:
- The number of Port Forwarding rule to fake
- :param Boolean use_range:
- A boolean which defines if we will use ranges or not
- :return:
- A list of FakeResource objects faking the Port Forwardings
- """
+ :param Dictionary attrs:
+ A dictionary with all attributes
+ :param int count:
+ The number of Port Forwarding rule to fake
+ :param Boolean use_range:
+ A boolean which defines if we will use ranges or not
+ :return:
+ A list of FakeResource objects faking the Port Forwardings
+ """
port_forwardings = []
for i in range(0, count):
port_forwardings.append(
FakeFloatingIPPortForwarding.create_one_port_forwarding(
- attrs, use_range=use_range)
+ attrs, use_range=use_range
+ )
)
return port_forwardings
@@ -1159,14 +1187,15 @@ class FakeFloatingIPPortForwarding(object):
if port_forwardings is None:
port_forwardings = (
FakeFloatingIPPortForwarding.create_port_forwardings(
- count, use_range=use_range)
+ count, use_range=use_range
+ )
)
return mock.Mock(side_effect=port_forwardings)
class FakeL3ConntrackHelper(object):
- """"Fake one or more L3 conntrack helper"""
+ """Fake one or more L3 conntrack helper"""
@staticmethod
def create_one_l3_conntrack_helper(attrs=None):
@@ -1178,9 +1207,7 @@ class FakeL3ConntrackHelper(object):
A FakeResource object with protocol, port, etc.
"""
attrs = attrs or {}
- router_id = (
- attrs.get('router_id') or 'router-id-' + uuid.uuid4().hex
- )
+ router_id = attrs.get('router_id') or 'router-id-' + uuid.uuid4().hex
# Set default attributes.
ct_attrs = {
'id': uuid.uuid4().hex,
@@ -1194,10 +1221,7 @@ class FakeL3ConntrackHelper(object):
# Overwrite default attributes.
ct_attrs.update(attrs)
- ct = fakes.FakeResource(
- info=copy.deepcopy(ct_attrs),
- loaded=True
- )
+ ct = fakes.FakeResource(info=copy.deepcopy(ct_attrs), loaded=True)
return ct
@staticmethod
@@ -1234,8 +1258,8 @@ class FakeL3ConntrackHelper(object):
L3 conntrack helpers
"""
if ct_helpers is None:
- ct_helpers = (
- FakeL3ConntrackHelper.create_l3_conntrack_helpers(count)
+ ct_helpers = FakeL3ConntrackHelper.create_l3_conntrack_helpers(
+ count
)
return mock.Mock(side_effect=ct_helpers)
@@ -1456,7 +1480,8 @@ def create_one_ip_availability(attrs=None):
network_ip_attrs.update(attrs)
network_ip_availability = _ip_availability.NetworkIPAvailability(
- **network_ip_attrs)
+ **network_ip_attrs
+ )
return network_ip_availability
@@ -1684,8 +1709,10 @@ def create_one_network_segment_range(attrs=None):
'physical_network': 'physical-network-name-' + fake_uuid,
'minimum': 100,
'maximum': 106,
- 'used': {104: '3312e4ba67864b2eb53f3f41432f8efc',
- 106: '3312e4ba67864b2eb53f3f41432f8efc'},
+ 'used': {
+ 104: '3312e4ba67864b2eb53f3f41432f8efc',
+ 106: '3312e4ba67864b2eb53f3f41432f8efc',
+ },
'available': [100, 101, 102, 103, 105],
'location': 'MUNCHMUNCHMUNCH',
}
@@ -1693,8 +1720,9 @@ def create_one_network_segment_range(attrs=None):
# Overwrite default attributes.
network_segment_range_attrs.update(attrs)
- network_segment_range = (
- _segment_range.NetworkSegmentRange(**network_segment_range_attrs))
+ network_segment_range = _segment_range.NetworkSegmentRange(
+ **network_segment_range_attrs
+ )
return network_segment_range
@@ -1744,8 +1772,12 @@ def create_one_port(attrs=None):
'dns_domain': 'dns-domain-' + uuid.uuid4().hex,
'dns_name': 'dns-name-' + uuid.uuid4().hex,
'extra_dhcp_opts': [{}],
- 'fixed_ips': [{'ip_address': '10.0.0.3',
- 'subnet_id': 'subnet-id-' + uuid.uuid4().hex}],
+ 'fixed_ips': [
+ {
+ 'ip_address': '10.0.0.3',
+ 'subnet_id': 'subnet-id-' + uuid.uuid4().hex,
+ }
+ ],
'id': 'port-id-' + uuid.uuid4().hex,
'mac_address': 'fa:16:3e:a9:4e:72',
'name': 'port-name-' + uuid.uuid4().hex,
@@ -2063,9 +2095,9 @@ def create_one_local_ip_association(attrs=None):
# Overwrite default attributes.
local_ip_association_attrs.update(attrs)
- local_ip_association = (
- _local_ip_association.LocalIPAssociation(
- **local_ip_association_attrs))
+ local_ip_association = _local_ip_association.LocalIPAssociation(
+ **local_ip_association_attrs
+ )
return local_ip_association
@@ -2116,12 +2148,8 @@ def create_one_ndp_proxy(attrs=None):
A FakeResource object with router_id, port_id, etc.
"""
attrs = attrs or {}
- router_id = (
- attrs.get('router_id') or 'router-id-' + uuid.uuid4().hex
- )
- port_id = (
- attrs.get('port_id') or 'port-id-' + uuid.uuid4().hex
- )
+ router_id = attrs.get('router_id') or 'router-id-' + uuid.uuid4().hex
+ port_id = attrs.get('port_id') or 'port-id-' + uuid.uuid4().hex
# Set default attributes.
np_attrs = {
'id': uuid.uuid4().hex,
@@ -2152,9 +2180,7 @@ def create_ndp_proxies(attrs=None, count=2):
"""
ndp_proxies = []
for i in range(0, count):
- ndp_proxies.append(
- create_one_ndp_proxy(attrs)
- )
+ ndp_proxies.append(create_one_ndp_proxy(attrs))
return ndp_proxies
@@ -2173,9 +2199,7 @@ def get_ndp_proxies(ndp_proxies=None, count=2):
ndp proxy
"""
if ndp_proxies is None:
- ndp_proxies = (
- create_ndp_proxies(count)
- )
+ ndp_proxies = create_ndp_proxies(count)
return mock.Mock(side_effect=ndp_proxies)
@@ -2198,10 +2222,13 @@ def create_one_trunk(attrs=None):
'admin_state_up': True,
'project_id': 'project-id-' + uuid.uuid4().hex,
'status': 'ACTIVE',
- 'sub_ports': [{'port_id': 'subport-' +
- uuid.uuid4().hex,
- 'segmentation_type': 'vlan',
- 'segmentation_id': 100}],
+ 'sub_ports': [
+ {
+ 'port_id': 'subport-' + uuid.uuid4().hex,
+ 'segmentation_type': 'vlan',
+ 'segmentation_id': 100,
+ }
+ ],
}
# Overwrite default attributes.
trunk_attrs.update(attrs)
diff --git a/openstackclient/tests/unit/network/v2/test_address_group.py b/openstackclient/tests/unit/network/v2/test_address_group.py
index f550db69..fa67347a 100644
--- a/openstackclient/tests/unit/network/v2/test_address_group.py
+++ b/openstackclient/tests/unit/network/v2/test_address_group.py
@@ -23,7 +23,6 @@ from openstackclient.tests.unit import utils as tests_utils
class TestAddressGroup(network_fakes.TestNetworkV2):
-
def setUp(self):
super(TestAddressGroup, self).setUp()
@@ -36,16 +35,14 @@ class TestAddressGroup(network_fakes.TestNetworkV2):
class TestCreateAddressGroup(TestAddressGroup):
-
project = identity_fakes_v3.FakeProject.create_one_project()
domain = identity_fakes_v3.FakeDomain.create_one_domain()
# The new address group created.
- new_address_group = (
- network_fakes.create_one_address_group(
- attrs={
- 'project_id': project.id,
- }
- ))
+ new_address_group = network_fakes.create_one_address_group(
+ attrs={
+ 'project_id': project.id,
+ }
+ )
columns = (
'addresses',
'description',
@@ -64,7 +61,8 @@ class TestCreateAddressGroup(TestAddressGroup):
def setUp(self):
super(TestCreateAddressGroup, self).setUp()
self.network.create_address_group = mock.Mock(
- return_value=self.new_address_group)
+ return_value=self.new_address_group
+ )
# Get the command object to test
self.cmd = address_group.CreateAddressGroup(self.app, self.namespace)
@@ -77,8 +75,13 @@ class TestCreateAddressGroup(TestAddressGroup):
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_create_default_options(self):
arglist = [
@@ -92,21 +95,27 @@ class TestCreateAddressGroup(TestAddressGroup):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_address_group.assert_called_once_with(**{
- 'name': self.new_address_group.name,
- 'addresses': [],
- })
+ self.network.create_address_group.assert_called_once_with(
+ **{
+ 'name': self.new_address_group.name,
+ 'addresses': [],
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, data)
def test_create_all_options(self):
arglist = [
- '--project', self.project.name,
- '--project-domain', self.domain.name,
- '--address', '10.0.0.1',
- '--description', self.new_address_group.description,
+ '--project',
+ self.project.name,
+ '--project-domain',
+ self.domain.name,
+ '--address',
+ '10.0.0.1',
+ '--description',
+ self.new_address_group.description,
self.new_address_group.name,
]
verifylist = [
@@ -118,20 +127,21 @@ class TestCreateAddressGroup(TestAddressGroup):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
-
- self.network.create_address_group.assert_called_once_with(**{
- 'addresses': ['10.0.0.1/32'],
- 'project_id': self.project.id,
- 'name': self.new_address_group.name,
- 'description': self.new_address_group.description,
- })
+ columns, data = self.cmd.take_action(parsed_args)
+
+ self.network.create_address_group.assert_called_once_with(
+ **{
+ 'addresses': ['10.0.0.1/32'],
+ 'project_id': self.project.id,
+ 'name': self.new_address_group.name,
+ 'description': self.new_address_group.description,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, data)
class TestDeleteAddressGroup(TestAddressGroup):
-
# The address group to delete.
_address_groups = network_fakes.create_address_groups(count=2)
@@ -139,7 +149,8 @@ class TestDeleteAddressGroup(TestAddressGroup):
super(TestDeleteAddressGroup, self).setUp()
self.network.delete_address_group = mock.Mock(return_value=None)
self.network.find_address_group = network_fakes.get_address_groups(
- address_groups=self._address_groups)
+ address_groups=self._address_groups
+ )
# Get the command object to test
self.cmd = address_group.DeleteAddressGroup(self.app, self.namespace)
@@ -156,9 +167,11 @@ class TestDeleteAddressGroup(TestAddressGroup):
result = self.cmd.take_action(parsed_args)
self.network.find_address_group.assert_called_once_with(
- self._address_groups[0].name, ignore_missing=False)
+ self._address_groups[0].name, ignore_missing=False
+ )
self.network.delete_address_group.assert_called_once_with(
- self._address_groups[0])
+ self._address_groups[0]
+ )
self.assertIsNone(result)
def test_multi_address_groups_delete(self):
@@ -185,14 +198,16 @@ class TestDeleteAddressGroup(TestAddressGroup):
'unexist_address_group',
]
verifylist = [
- ('address_group',
- [self._address_groups[0].name, 'unexist_address_group']),
+ (
+ 'address_group',
+ [self._address_groups[0].name, 'unexist_address_group'],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
find_mock_result = [self._address_groups[0], exceptions.CommandError]
- self.network.find_address_group = (
- mock.Mock(side_effect=find_mock_result)
+ self.network.find_address_group = mock.Mock(
+ side_effect=find_mock_result
)
try:
@@ -202,16 +217,17 @@ class TestDeleteAddressGroup(TestAddressGroup):
self.assertEqual('1 of 2 address groups failed to delete.', str(e))
self.network.find_address_group.assert_any_call(
- self._address_groups[0].name, ignore_missing=False)
+ self._address_groups[0].name, ignore_missing=False
+ )
self.network.find_address_group.assert_any_call(
- 'unexist_address_group', ignore_missing=False)
+ 'unexist_address_group', ignore_missing=False
+ )
self.network.delete_address_group.assert_called_once_with(
self._address_groups[0]
)
class TestListAddressGroup(TestAddressGroup):
-
# The address groups to list up.
address_groups = network_fakes.create_address_groups(count=3)
columns = (
@@ -223,18 +239,21 @@ class TestListAddressGroup(TestAddressGroup):
)
data = []
for group in address_groups:
- data.append((
- group.id,
- group.name,
- group.description,
- group.project_id,
- group.addresses,
- ))
+ data.append(
+ (
+ group.id,
+ group.name,
+ group.description,
+ group.project_id,
+ group.addresses,
+ )
+ )
def setUp(self):
super(TestListAddressGroup, self).setUp()
self.network.address_groups = mock.Mock(
- return_value=self.address_groups)
+ return_value=self.address_groups
+ )
# Get the command object to test
self.cmd = address_group.ListAddressGroup(self.app, self.namespace)
@@ -252,7 +271,8 @@ class TestListAddressGroup(TestAddressGroup):
def test_address_group_list_name(self):
arglist = [
- '--name', self.address_groups[0].name,
+ '--name',
+ self.address_groups[0].name,
]
verifylist = [
('name', self.address_groups[0].name),
@@ -261,7 +281,8 @@ class TestListAddressGroup(TestAddressGroup):
columns, data = self.cmd.take_action(parsed_args)
self.network.address_groups.assert_called_once_with(
- **{'name': self.address_groups[0].name})
+ **{'name': self.address_groups[0].name}
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
@@ -269,7 +290,8 @@ class TestListAddressGroup(TestAddressGroup):
project = identity_fakes_v3.FakeProject.create_one_project()
self.projects_mock.get.return_value = project
arglist = [
- '--project', project.id,
+ '--project',
+ project.id,
]
verifylist = [
('project', project.id),
@@ -278,7 +300,8 @@ class TestListAddressGroup(TestAddressGroup):
columns, data = self.cmd.take_action(parsed_args)
self.network.address_groups.assert_called_once_with(
- project_id=project.id)
+ project_id=project.id
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
@@ -286,8 +309,10 @@ class TestListAddressGroup(TestAddressGroup):
project = identity_fakes_v3.FakeProject.create_one_project()
self.projects_mock.get.return_value = project
arglist = [
- '--project', project.id,
- '--project-domain', project.domain_id,
+ '--project',
+ project.id,
+ '--project-domain',
+ project.domain_id,
]
verifylist = [
('project', project.id),
@@ -296,13 +321,13 @@ class TestListAddressGroup(TestAddressGroup):
columns, data = self.cmd.take_action(parsed_args)
self.network.address_groups.assert_called_once_with(
- project_id=project.id)
+ project_id=project.id
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
class TestSetAddressGroup(TestAddressGroup):
-
# The address group to set.
_address_group = network_fakes.create_one_address_group()
@@ -310,14 +335,18 @@ class TestSetAddressGroup(TestAddressGroup):
super(TestSetAddressGroup, self).setUp()
self.network.update_address_group = mock.Mock(return_value=None)
self.network.find_address_group = mock.Mock(
- return_value=self._address_group)
+ return_value=self._address_group
+ )
self.network.add_addresses_to_address_group = mock.Mock(
- return_value=self._address_group)
+ return_value=self._address_group
+ )
# Get the command object to test
self.cmd = address_group.SetAddressGroup(self.app, self.namespace)
def test_set_nothing(self):
- arglist = [self._address_group.name, ]
+ arglist = [
+ self._address_group.name,
+ ]
verifylist = [
('address_group', self._address_group.name),
]
@@ -331,8 +360,10 @@ class TestSetAddressGroup(TestAddressGroup):
def test_set_name_and_description(self):
arglist = [
- '--name', 'new_address_group_name',
- '--description', 'new_address_group_description',
+ '--name',
+ 'new_address_group_name',
+ '--description',
+ 'new_address_group_description',
self._address_group.name,
]
verifylist = [
@@ -348,13 +379,15 @@ class TestSetAddressGroup(TestAddressGroup):
'description': 'new_address_group_description',
}
self.network.update_address_group.assert_called_with(
- self._address_group, **attrs)
+ self._address_group, **attrs
+ )
self.assertIsNone(result)
def test_set_one_address(self):
arglist = [
self._address_group.name,
- '--address', '10.0.0.2',
+ '--address',
+ '10.0.0.2',
]
verifylist = [
('address_group', self._address_group.name),
@@ -364,14 +397,17 @@ class TestSetAddressGroup(TestAddressGroup):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.network.add_addresses_to_address_group.assert_called_once_with(
- self._address_group, ['10.0.0.2/32'])
+ self._address_group, ['10.0.0.2/32']
+ )
self.assertIsNone(result)
def test_set_multiple_addresses(self):
arglist = [
self._address_group.name,
- '--address', '10.0.0.2',
- '--address', '2001::/16',
+ '--address',
+ '10.0.0.2',
+ '--address',
+ '2001::/16',
]
verifylist = [
('address_group', self._address_group.name),
@@ -381,12 +417,12 @@ class TestSetAddressGroup(TestAddressGroup):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.network.add_addresses_to_address_group.assert_called_once_with(
- self._address_group, ['10.0.0.2/32', '2001::/16'])
+ self._address_group, ['10.0.0.2/32', '2001::/16']
+ )
self.assertIsNone(result)
class TestShowAddressGroup(TestAddressGroup):
-
# The address group to show.
_address_group = network_fakes.create_one_address_group()
columns = (
@@ -407,7 +443,8 @@ class TestShowAddressGroup(TestAddressGroup):
def setUp(self):
super(TestShowAddressGroup, self).setUp()
self.network.find_address_group = mock.Mock(
- return_value=self._address_group)
+ return_value=self._address_group
+ )
# Get the command object to test
self.cmd = address_group.ShowAddressGroup(self.app, self.namespace)
@@ -417,8 +454,13 @@ class TestShowAddressGroup(TestAddressGroup):
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_show_all_options(self):
arglist = [
@@ -432,27 +474,31 @@ class TestShowAddressGroup(TestAddressGroup):
columns, data = self.cmd.take_action(parsed_args)
self.network.find_address_group.assert_called_once_with(
- self._address_group.name, ignore_missing=False)
+ self._address_group.name, ignore_missing=False
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
class TestUnsetAddressGroup(TestAddressGroup):
-
# The address group to unset.
_address_group = network_fakes.create_one_address_group()
def setUp(self):
super(TestUnsetAddressGroup, self).setUp()
self.network.find_address_group = mock.Mock(
- return_value=self._address_group)
+ return_value=self._address_group
+ )
self.network.remove_addresses_from_address_group = mock.Mock(
- return_value=self._address_group)
+ return_value=self._address_group
+ )
# Get the command object to test
self.cmd = address_group.UnsetAddressGroup(self.app, self.namespace)
def test_unset_nothing(self):
- arglist = [self._address_group.name, ]
+ arglist = [
+ self._address_group.name,
+ ]
verifylist = [
('address_group', self._address_group.name),
]
@@ -466,7 +512,8 @@ class TestUnsetAddressGroup(TestAddressGroup):
def test_unset_one_address(self):
arglist = [
self._address_group.name,
- '--address', '10.0.0.2',
+ '--address',
+ '10.0.0.2',
]
verifylist = [
('address_group', self._address_group.name),
@@ -475,15 +522,18 @@ class TestUnsetAddressGroup(TestAddressGroup):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
- self.network.remove_addresses_from_address_group.\
- assert_called_once_with(self._address_group, ['10.0.0.2/32'])
+ self.network.remove_addresses_from_address_group.assert_called_once_with( # noqa: E501
+ self._address_group, ['10.0.0.2/32']
+ )
self.assertIsNone(result)
def test_unset_multiple_addresses(self):
arglist = [
self._address_group.name,
- '--address', '10.0.0.2',
- '--address', '2001::/16',
+ '--address',
+ '10.0.0.2',
+ '--address',
+ '2001::/16',
]
verifylist = [
('address_group', self._address_group.name),
@@ -492,7 +542,7 @@ class TestUnsetAddressGroup(TestAddressGroup):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
- self.network.remove_addresses_from_address_group.\
- assert_called_once_with(self._address_group,
- ['10.0.0.2/32', '2001::/16'])
+ self.network.remove_addresses_from_address_group.assert_called_once_with( # noqa: E501
+ self._address_group, ['10.0.0.2/32', '2001::/16']
+ )
self.assertIsNone(result)
diff --git a/openstackclient/tests/unit/network/v2/test_address_scope.py b/openstackclient/tests/unit/network/v2/test_address_scope.py
index d4c83528..e645cc60 100644
--- a/openstackclient/tests/unit/network/v2/test_address_scope.py
+++ b/openstackclient/tests/unit/network/v2/test_address_scope.py
@@ -23,7 +23,6 @@ from openstackclient.tests.unit import utils as tests_utils
class TestAddressScope(network_fakes.TestNetworkV2):
-
def setUp(self):
super(TestAddressScope, self).setUp()
@@ -36,21 +35,15 @@ class TestAddressScope(network_fakes.TestNetworkV2):
class TestCreateAddressScope(TestAddressScope):
-
project = identity_fakes_v3.FakeProject.create_one_project()
domain = identity_fakes_v3.FakeDomain.create_one_domain()
# The new address scope created.
new_address_scope = network_fakes.create_one_address_scope(
attrs={
'project_id': project.id,
- })
- columns = (
- 'id',
- 'ip_version',
- 'name',
- 'project_id',
- 'shared'
+ }
)
+ columns = ('id', 'ip_version', 'name', 'project_id', 'shared')
data = (
new_address_scope.id,
new_address_scope.ip_version,
@@ -62,7 +55,8 @@ class TestCreateAddressScope(TestAddressScope):
def setUp(self):
super(TestCreateAddressScope, self).setUp()
self.network.create_address_scope = mock.Mock(
- return_value=self.new_address_scope)
+ return_value=self.new_address_scope
+ )
# Get the command object to test
self.cmd = address_scope.CreateAddressScope(self.app, self.namespace)
@@ -75,8 +69,13 @@ class TestCreateAddressScope(TestAddressScope):
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_create_default_options(self):
arglist = [
@@ -89,21 +88,26 @@ class TestCreateAddressScope(TestAddressScope):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_address_scope.assert_called_once_with(**{
- 'ip_version': self.new_address_scope.ip_version,
- 'name': self.new_address_scope.name,
- })
+ self.network.create_address_scope.assert_called_once_with(
+ **{
+ 'ip_version': self.new_address_scope.ip_version,
+ 'name': self.new_address_scope.name,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
def test_create_all_options(self):
arglist = [
- '--ip-version', str(self.new_address_scope.ip_version),
+ '--ip-version',
+ str(self.new_address_scope.ip_version),
'--share',
- '--project', self.project.name,
- '--project-domain', self.domain.name,
+ '--project',
+ self.project.name,
+ '--project-domain',
+ self.domain.name,
self.new_address_scope.name,
]
verifylist = [
@@ -115,14 +119,16 @@ class TestCreateAddressScope(TestAddressScope):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_address_scope.assert_called_once_with(**{
- 'ip_version': self.new_address_scope.ip_version,
- 'shared': True,
- 'project_id': self.project.id,
- 'name': self.new_address_scope.name,
- })
+ self.network.create_address_scope.assert_called_once_with(
+ **{
+ 'ip_version': self.new_address_scope.ip_version,
+ 'shared': True,
+ 'project_id': self.project.id,
+ 'name': self.new_address_scope.name,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
@@ -139,17 +145,18 @@ class TestCreateAddressScope(TestAddressScope):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_address_scope.assert_called_once_with(**{
- 'ip_version': self.new_address_scope.ip_version,
- 'shared': False,
- 'name': self.new_address_scope.name,
- })
+ self.network.create_address_scope.assert_called_once_with(
+ **{
+ 'ip_version': self.new_address_scope.ip_version,
+ 'shared': False,
+ 'name': self.new_address_scope.name,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
class TestDeleteAddressScope(TestAddressScope):
-
# The address scope to delete.
_address_scopes = network_fakes.create_address_scopes(count=2)
@@ -157,7 +164,8 @@ class TestDeleteAddressScope(TestAddressScope):
super(TestDeleteAddressScope, self).setUp()
self.network.delete_address_scope = mock.Mock(return_value=None)
self.network.find_address_scope = network_fakes.get_address_scopes(
- address_scopes=self._address_scopes)
+ address_scopes=self._address_scopes
+ )
# Get the command object to test
self.cmd = address_scope.DeleteAddressScope(self.app, self.namespace)
@@ -174,9 +182,11 @@ class TestDeleteAddressScope(TestAddressScope):
result = self.cmd.take_action(parsed_args)
self.network.find_address_scope.assert_called_once_with(
- self._address_scopes[0].name, ignore_missing=False)
+ self._address_scopes[0].name, ignore_missing=False
+ )
self.network.delete_address_scope.assert_called_once_with(
- self._address_scopes[0])
+ self._address_scopes[0]
+ )
self.assertIsNone(result)
def test_multi_address_scopes_delete(self):
@@ -204,14 +214,16 @@ class TestDeleteAddressScope(TestAddressScope):
'unexist_address_scope',
]
verifylist = [
- ('address_scope',
- [self._address_scopes[0].name, 'unexist_address_scope']),
+ (
+ 'address_scope',
+ [self._address_scopes[0].name, 'unexist_address_scope'],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
find_mock_result = [self._address_scopes[0], exceptions.CommandError]
- self.network.find_address_scope = (
- mock.Mock(side_effect=find_mock_result)
+ self.network.find_address_scope = mock.Mock(
+ side_effect=find_mock_result
)
try:
@@ -221,16 +233,17 @@ class TestDeleteAddressScope(TestAddressScope):
self.assertEqual('1 of 2 address scopes failed to delete.', str(e))
self.network.find_address_scope.assert_any_call(
- self._address_scopes[0].name, ignore_missing=False)
+ self._address_scopes[0].name, ignore_missing=False
+ )
self.network.find_address_scope.assert_any_call(
- 'unexist_address_scope', ignore_missing=False)
+ 'unexist_address_scope', ignore_missing=False
+ )
self.network.delete_address_scope.assert_called_once_with(
self._address_scopes[0]
)
class TestListAddressScope(TestAddressScope):
-
# The address scopes to list up.
address_scopes = network_fakes.create_address_scopes(count=3)
columns = (
@@ -242,18 +255,21 @@ class TestListAddressScope(TestAddressScope):
)
data = []
for scope in address_scopes:
- data.append((
- scope.id,
- scope.name,
- scope.ip_version,
- scope.is_shared,
- scope.project_id,
- ))
+ data.append(
+ (
+ scope.id,
+ scope.name,
+ scope.ip_version,
+ scope.is_shared,
+ scope.project_id,
+ )
+ )
def setUp(self):
super(TestListAddressScope, self).setUp()
self.network.address_scopes = mock.Mock(
- return_value=self.address_scopes)
+ return_value=self.address_scopes
+ )
# Get the command object to test
self.cmd = address_scope.ListAddressScope(self.app, self.namespace)
@@ -271,7 +287,8 @@ class TestListAddressScope(TestAddressScope):
def test_address_scope_list_name(self):
arglist = [
- '--name', self.address_scopes[0].name,
+ '--name',
+ self.address_scopes[0].name,
]
verifylist = [
('name', self.address_scopes[0].name),
@@ -280,13 +297,15 @@ class TestListAddressScope(TestAddressScope):
columns, data = self.cmd.take_action(parsed_args)
self.network.address_scopes.assert_called_once_with(
- **{'name': self.address_scopes[0].name})
+ **{'name': self.address_scopes[0].name}
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, list(data))
def test_address_scope_list_ip_version(self):
arglist = [
- '--ip-version', str(4),
+ '--ip-version',
+ str(4),
]
verifylist = [
('ip_version', 4),
@@ -295,7 +314,8 @@ class TestListAddressScope(TestAddressScope):
columns, data = self.cmd.take_action(parsed_args)
self.network.address_scopes.assert_called_once_with(
- **{'ip_version': 4})
+ **{'ip_version': 4}
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, list(data))
@@ -303,7 +323,8 @@ class TestListAddressScope(TestAddressScope):
project = identity_fakes_v3.FakeProject.create_one_project()
self.projects_mock.get.return_value = project
arglist = [
- '--project', project.id,
+ '--project',
+ project.id,
]
verifylist = [
('project', project.id),
@@ -312,7 +333,8 @@ class TestListAddressScope(TestAddressScope):
columns, data = self.cmd.take_action(parsed_args)
self.network.address_scopes.assert_called_once_with(
- **{'project_id': project.id})
+ **{'project_id': project.id}
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, list(data))
@@ -320,8 +342,10 @@ class TestListAddressScope(TestAddressScope):
project = identity_fakes_v3.FakeProject.create_one_project()
self.projects_mock.get.return_value = project
arglist = [
- '--project', project.id,
- '--project-domain', project.domain_id,
+ '--project',
+ project.id,
+ '--project-domain',
+ project.domain_id,
]
verifylist = [
('project', project.id),
@@ -369,7 +393,6 @@ class TestListAddressScope(TestAddressScope):
class TestSetAddressScope(TestAddressScope):
-
# The address scope to set.
_address_scope = network_fakes.create_one_address_scope()
@@ -377,13 +400,16 @@ class TestSetAddressScope(TestAddressScope):
super(TestSetAddressScope, self).setUp()
self.network.update_address_scope = mock.Mock(return_value=None)
self.network.find_address_scope = mock.Mock(
- return_value=self._address_scope)
+ return_value=self._address_scope
+ )
# Get the command object to test
self.cmd = address_scope.SetAddressScope(self.app, self.namespace)
def test_set_nothing(self):
- arglist = [self._address_scope.name, ]
+ arglist = [
+ self._address_scope.name,
+ ]
verifylist = [
('address_scope', self._address_scope.name),
]
@@ -393,12 +419,14 @@ class TestSetAddressScope(TestAddressScope):
attrs = {}
self.network.update_address_scope.assert_called_with(
- self._address_scope, **attrs)
+ self._address_scope, **attrs
+ )
self.assertIsNone(result)
def test_set_name_and_share(self):
arglist = [
- '--name', 'new_address_scope',
+ '--name',
+ 'new_address_scope',
'--share',
self._address_scope.name,
]
@@ -415,7 +443,8 @@ class TestSetAddressScope(TestAddressScope):
'shared': True,
}
self.network.update_address_scope.assert_called_with(
- self._address_scope, **attrs)
+ self._address_scope, **attrs
+ )
self.assertIsNone(result)
def test_set_no_share(self):
@@ -434,15 +463,14 @@ class TestSetAddressScope(TestAddressScope):
'shared': False,
}
self.network.update_address_scope.assert_called_with(
- self._address_scope, **attrs)
+ self._address_scope, **attrs
+ )
self.assertIsNone(result)
class TestShowAddressScope(TestAddressScope):
-
# The address scope to show.
- _address_scope = (
- network_fakes.create_one_address_scope())
+ _address_scope = network_fakes.create_one_address_scope()
columns = (
'id',
'ip_version',
@@ -461,7 +489,8 @@ class TestShowAddressScope(TestAddressScope):
def setUp(self):
super(TestShowAddressScope, self).setUp()
self.network.find_address_scope = mock.Mock(
- return_value=self._address_scope)
+ return_value=self._address_scope
+ )
# Get the command object to test
self.cmd = address_scope.ShowAddressScope(self.app, self.namespace)
@@ -471,8 +500,13 @@ class TestShowAddressScope(TestAddressScope):
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_show_all_options(self):
arglist = [
@@ -486,6 +520,7 @@ class TestShowAddressScope(TestAddressScope):
columns, data = self.cmd.take_action(parsed_args)
self.network.find_address_scope.assert_called_once_with(
- self._address_scope.name, ignore_missing=False)
+ self._address_scope.name, ignore_missing=False
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(list(self.data), list(data))
diff --git a/openstackclient/tests/unit/network/v2/test_floating_ip_compute.py b/openstackclient/tests/unit/network/v2/test_floating_ip_compute.py
index 18212cf7..489212be 100644
--- a/openstackclient/tests/unit/network/v2/test_floating_ip_compute.py
+++ b/openstackclient/tests/unit/network/v2/test_floating_ip_compute.py
@@ -23,8 +23,8 @@ from openstackclient.tests.unit import utils as tests_utils
# Tests for Nova network
-class TestFloatingIPCompute(compute_fakes.TestComputev2):
+class TestFloatingIPCompute(compute_fakes.TestComputev2):
def setUp(self):
super(TestFloatingIPCompute, self).setUp()
@@ -32,11 +32,8 @@ class TestFloatingIPCompute(compute_fakes.TestComputev2):
self.compute = self.app.client_manager.compute
-@mock.patch(
- 'openstackclient.api.compute_v2.APIv2.floating_ip_create'
-)
+@mock.patch('openstackclient.api.compute_v2.APIv2.floating_ip_create')
class TestCreateFloatingIPCompute(TestFloatingIPCompute):
-
# The floating ip to be deleted.
_floating_ip = compute_fakes.FakeFloatingIP.create_one_floating_ip()
@@ -70,8 +67,13 @@ class TestCreateFloatingIPCompute(TestFloatingIPCompute):
arglist = []
verifylist = []
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_floating_ip_create_default(self, fip_mock):
fip_mock.return_value = self._floating_ip
@@ -90,11 +92,8 @@ class TestCreateFloatingIPCompute(TestFloatingIPCompute):
self.assertEqual(self.data, data)
-@mock.patch(
- 'openstackclient.api.compute_v2.APIv2.floating_ip_delete'
-)
+@mock.patch('openstackclient.api.compute_v2.APIv2.floating_ip_delete')
class TestDeleteFloatingIPCompute(TestFloatingIPCompute):
-
# The floating ips to be deleted.
_floating_ips = compute_fakes.FakeFloatingIP.create_floating_ips(count=2)
@@ -118,9 +117,7 @@ class TestDeleteFloatingIPCompute(TestFloatingIPCompute):
result = self.cmd.take_action(parsed_args)
- fip_mock.assert_called_once_with(
- self._floating_ips[0]['id']
- )
+ fip_mock.assert_called_once_with(self._floating_ips[0]['id'])
self.assertIsNone(result)
def test_floating_ip_delete_multi(self, fip_mock):
@@ -145,18 +142,20 @@ class TestDeleteFloatingIPCompute(TestFloatingIPCompute):
def test_floating_ip_delete_multi_exception(self, fip_mock):
fip_mock.return_value = mock.Mock(return_value=None)
- fip_mock.side_effect = ([
+ fip_mock.side_effect = [
mock.Mock(return_value=None),
exceptions.CommandError,
- ])
+ ]
arglist = [
self._floating_ips[0]['id'],
'unexist_floating_ip',
]
- verifylist = [(
- 'floating_ip',
- [self._floating_ips[0]['id'], 'unexist_floating_ip'],
- )]
+ verifylist = [
+ (
+ 'floating_ip',
+ [self._floating_ips[0]['id'], 'unexist_floating_ip'],
+ )
+ ]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
try:
@@ -169,11 +168,8 @@ class TestDeleteFloatingIPCompute(TestFloatingIPCompute):
fip_mock.assert_any_call('unexist_floating_ip')
-@mock.patch(
- 'openstackclient.api.compute_v2.APIv2.floating_ip_list'
-)
+@mock.patch('openstackclient.api.compute_v2.APIv2.floating_ip_list')
class TestListFloatingIPCompute(TestFloatingIPCompute):
-
# The floating ips to be list up
_floating_ips = compute_fakes.FakeFloatingIP.create_floating_ips(count=3)
@@ -187,13 +183,15 @@ class TestListFloatingIPCompute(TestFloatingIPCompute):
data = []
for ip in _floating_ips:
- data.append((
- ip['id'],
- ip['ip'],
- ip['fixed_ip'],
- ip['instance_id'],
- ip['pool'],
- ))
+ data.append(
+ (
+ ip['id'],
+ ip['ip'],
+ ip['fixed_ip'],
+ ip['instance_id'],
+ ip['pool'],
+ )
+ )
def setUp(self):
super(TestListFloatingIPCompute, self).setUp()
@@ -216,11 +214,8 @@ class TestListFloatingIPCompute(TestFloatingIPCompute):
self.assertEqual(self.data, list(data))
-@mock.patch(
- 'openstackclient.api.compute_v2.APIv2.floating_ip_find'
-)
+@mock.patch('openstackclient.api.compute_v2.APIv2.floating_ip_find')
class TestShowFloatingIPCompute(TestFloatingIPCompute):
-
# The floating ip to display.
_floating_ip = compute_fakes.FakeFloatingIP.create_one_floating_ip()
diff --git a/openstackclient/tests/unit/network/v2/test_floating_ip_network.py b/openstackclient/tests/unit/network/v2/test_floating_ip_network.py
index f76dcc79..d1d359d0 100644
--- a/openstackclient/tests/unit/network/v2/test_floating_ip_network.py
+++ b/openstackclient/tests/unit/network/v2/test_floating_ip_network.py
@@ -24,8 +24,8 @@ from openstackclient.tests.unit import utils as tests_utils
# Tests for Neutron network
-class TestFloatingIPNetwork(network_fakes.TestNetworkV2):
+class TestFloatingIPNetwork(network_fakes.TestNetworkV2):
def setUp(self):
super(TestFloatingIPNetwork, self).setUp()
@@ -38,7 +38,6 @@ class TestFloatingIPNetwork(network_fakes.TestNetworkV2):
class TestCreateFloatingIPNetwork(TestFloatingIPNetwork):
-
# Fake data for option tests.
floating_network = network_fakes.create_one_network()
subnet = network_fakes.FakeSubnet.create_one_subnet()
@@ -93,7 +92,8 @@ class TestCreateFloatingIPNetwork(TestFloatingIPNetwork):
self.network.set_tags = mock.Mock(return_value=None)
self.network.find_network = mock.Mock(
- return_value=self.floating_network)
+ return_value=self.floating_network
+ )
self.network.find_subnet = mock.Mock(return_value=self.subnet)
self.network.find_port = mock.Mock(return_value=self.port)
@@ -104,8 +104,13 @@ class TestCreateFloatingIPNetwork(TestFloatingIPNetwork):
arglist = []
verifylist = []
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_create_default_options(self):
arglist = [
@@ -118,21 +123,30 @@ class TestCreateFloatingIPNetwork(TestFloatingIPNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_ip.assert_called_once_with(**{
- 'floating_network_id': self.floating_ip.floating_network_id,
- })
+ self.network.create_ip.assert_called_once_with(
+ **{
+ 'floating_network_id': self.floating_ip.floating_network_id,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
def test_create_all_options(self):
arglist = [
- '--subnet', self.subnet.id,
- '--port', self.floating_ip.port_id,
- '--floating-ip-address', self.floating_ip.floating_ip_address,
- '--fixed-ip-address', self.floating_ip.fixed_ip_address,
- '--description', self.floating_ip.description,
- '--dns-domain', self.floating_ip.dns_domain,
- '--dns-name', self.floating_ip.dns_name,
+ '--subnet',
+ self.subnet.id,
+ '--port',
+ self.floating_ip.port_id,
+ '--floating-ip-address',
+ self.floating_ip.floating_ip_address,
+ '--fixed-ip-address',
+ self.floating_ip.fixed_ip_address,
+ '--description',
+ self.floating_ip.description,
+ '--dns-domain',
+ self.floating_ip.dns_domain,
+ '--dns-name',
+ self.floating_ip.dns_name,
self.floating_ip.floating_network_id,
]
verifylist = [
@@ -149,16 +163,18 @@ class TestCreateFloatingIPNetwork(TestFloatingIPNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_ip.assert_called_once_with(**{
- 'subnet_id': self.subnet.id,
- 'port_id': self.floating_ip.port_id,
- 'floating_ip_address': self.floating_ip.floating_ip_address,
- 'fixed_ip_address': self.floating_ip.fixed_ip_address,
- 'floating_network_id': self.floating_ip.floating_network_id,
- 'description': self.floating_ip.description,
- 'dns_domain': self.floating_ip.dns_domain,
- 'dns_name': self.floating_ip.dns_name,
- })
+ self.network.create_ip.assert_called_once_with(
+ **{
+ 'subnet_id': self.subnet.id,
+ 'port_id': self.floating_ip.port_id,
+ 'floating_ip_address': self.floating_ip.floating_ip_address,
+ 'fixed_ip_address': self.floating_ip.fixed_ip_address,
+ 'floating_network_id': self.floating_ip.floating_network_id,
+ 'description': self.floating_ip.description,
+ 'dns_domain': self.floating_ip.dns_domain,
+ 'dns_name': self.floating_ip.dns_name,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
@@ -166,7 +182,8 @@ class TestCreateFloatingIPNetwork(TestFloatingIPNetwork):
project = identity_fakes_v3.FakeProject.create_one_project()
self.projects_mock.get.return_value = project
arglist = [
- '--project', project.id,
+ '--project',
+ project.id,
self.floating_ip.floating_network_id,
]
verifylist = [
@@ -177,10 +194,12 @@ class TestCreateFloatingIPNetwork(TestFloatingIPNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_ip.assert_called_once_with(**{
- 'floating_network_id': self.floating_ip.floating_network_id,
- 'project_id': project.id,
- })
+ self.network.create_ip.assert_called_once_with(
+ **{
+ 'floating_network_id': self.floating_ip.floating_network_id,
+ 'project_id': project.id,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
@@ -189,8 +208,10 @@ class TestCreateFloatingIPNetwork(TestFloatingIPNetwork):
domain = identity_fakes_v3.FakeDomain.create_one_domain()
self.projects_mock.get.return_value = project
arglist = [
- "--project", project.name,
- "--project-domain", domain.name,
+ "--project",
+ project.name,
+ "--project-domain",
+ domain.name,
self.floating_ip.floating_network_id,
]
verifylist = [
@@ -203,10 +224,12 @@ class TestCreateFloatingIPNetwork(TestFloatingIPNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_ip.assert_called_once_with(**{
- 'floating_network_id': self.floating_ip.floating_network_id,
- 'project_id': project.id,
- })
+ self.network.create_ip.assert_called_once_with(
+ **{
+ 'floating_network_id': self.floating_ip.floating_network_id,
+ 'project_id': project.id,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
@@ -214,7 +237,8 @@ class TestCreateFloatingIPNetwork(TestFloatingIPNetwork):
qos_policy = network_fakes.FakeNetworkQosPolicy.create_one_qos_policy()
self.network.find_qos_policy = mock.Mock(return_value=qos_policy)
arglist = [
- '--qos-policy', qos_policy.id,
+ '--qos-policy',
+ qos_policy.id,
self.floating_ip.floating_network_id,
]
verifylist = [
@@ -225,10 +249,12 @@ class TestCreateFloatingIPNetwork(TestFloatingIPNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_ip.assert_called_once_with(**{
- 'floating_network_id': self.floating_ip.floating_network_id,
- 'qos_policy_id': qos_policy.id,
- })
+ self.network.create_ip.assert_called_once_with(
+ **{
+ 'floating_network_id': self.floating_ip.floating_network_id,
+ 'qos_policy_id': qos_policy.id,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
@@ -248,15 +274,17 @@ class TestCreateFloatingIPNetwork(TestFloatingIPNetwork):
verifylist.append(('no_tag', True))
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_ip.assert_called_once_with(**{
- 'floating_network_id': self.floating_ip.floating_network_id,
- })
+ self.network.create_ip.assert_called_once_with(
+ **{
+ 'floating_network_id': self.floating_ip.floating_network_id,
+ }
+ )
if add_tags:
self.network.set_tags.assert_called_once_with(
- self.floating_ip,
- tests_utils.CompareBySet(['red', 'blue']))
+ self.floating_ip, tests_utils.CompareBySet(['red', 'blue'])
+ )
else:
self.assertFalse(self.network.set_tags.called)
self.assertEqual(self.columns, columns)
@@ -270,7 +298,6 @@ class TestCreateFloatingIPNetwork(TestFloatingIPNetwork):
class TestDeleteFloatingIPNetwork(TestFloatingIPNetwork):
-
# The floating ips to be deleted.
floating_ips = network_fakes.FakeFloatingIP.create_floating_ips(count=2)
@@ -350,8 +377,7 @@ class TestDeleteFloatingIPNetwork(TestFloatingIPNetwork):
'unexist_floating_ip',
]
verifylist = [
- ('floating_ip',
- [self.floating_ips[0].id, 'unexist_floating_ip']),
+ ('floating_ip', [self.floating_ips[0].id, 'unexist_floating_ip']),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
@@ -369,24 +395,27 @@ class TestDeleteFloatingIPNetwork(TestFloatingIPNetwork):
'unexist_floating_ip',
ignore_missing=False,
)
- self.network.delete_ip.assert_called_once_with(
- self.floating_ips[0]
- )
+ self.network.delete_ip.assert_called_once_with(self.floating_ips[0])
class TestListFloatingIPNetwork(TestFloatingIPNetwork):
-
# The floating ips to list up
floating_ips = network_fakes.FakeFloatingIP.create_floating_ips(count=3)
- fake_network = network_fakes.create_one_network({
- 'id': 'fake_network_id',
- })
- fake_port = network_fakes.create_one_port({
- 'id': 'fake_port_id',
- })
- fake_router = network_fakes.FakeRouter.create_one_router({
- 'id': 'fake_router_id',
- })
+ fake_network = network_fakes.create_one_network(
+ {
+ 'id': 'fake_network_id',
+ }
+ )
+ fake_port = network_fakes.create_one_port(
+ {
+ 'id': 'fake_port_id',
+ }
+ )
+ fake_router = network_fakes.FakeRouter.create_one_router(
+ {
+ 'id': 'fake_router_id',
+ }
+ )
columns = (
'ID',
@@ -408,28 +437,32 @@ class TestListFloatingIPNetwork(TestFloatingIPNetwork):
data = []
data_long = []
for ip in floating_ips:
- data.append((
- ip.id,
- ip.floating_ip_address,
- ip.fixed_ip_address,
- ip.port_id,
- ip.floating_network_id,
- ip.project_id,
- ))
- data_long.append((
- ip.id,
- ip.floating_ip_address,
- ip.fixed_ip_address,
- ip.port_id,
- ip.floating_network_id,
- ip.project_id,
- ip.router_id,
- ip.status,
- ip.description,
- ip.tags,
- ip.dns_domain,
- ip.dns_name,
- ))
+ data.append(
+ (
+ ip.id,
+ ip.floating_ip_address,
+ ip.fixed_ip_address,
+ ip.port_id,
+ ip.floating_network_id,
+ ip.project_id,
+ )
+ )
+ data_long.append(
+ (
+ ip.id,
+ ip.floating_ip_address,
+ ip.fixed_ip_address,
+ ip.port_id,
+ ip.floating_network_id,
+ ip.project_id,
+ ip.router_id,
+ ip.status,
+ ip.description,
+ ip.tags,
+ ip.dns_domain,
+ ip.dns_name,
+ )
+ )
def setUp(self):
super(TestListFloatingIPNetwork, self).setUp()
@@ -455,7 +488,8 @@ class TestListFloatingIPNetwork(TestFloatingIPNetwork):
def test_floating_ip_list_network(self):
arglist = [
- '--network', 'fake_network_id',
+ '--network',
+ 'fake_network_id',
]
verifylist = [
('network', 'fake_network_id'),
@@ -464,15 +498,18 @@ class TestListFloatingIPNetwork(TestFloatingIPNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.ips.assert_called_once_with(**{
- 'floating_network_id': 'fake_network_id',
- })
+ self.network.ips.assert_called_once_with(
+ **{
+ 'floating_network_id': 'fake_network_id',
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, list(data))
def test_floating_ip_list_port(self):
arglist = [
- '--port', 'fake_port_id',
+ '--port',
+ 'fake_port_id',
]
verifylist = [
('port', 'fake_port_id'),
@@ -481,15 +518,18 @@ class TestListFloatingIPNetwork(TestFloatingIPNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.ips.assert_called_once_with(**{
- 'port_id': 'fake_port_id',
- })
+ self.network.ips.assert_called_once_with(
+ **{
+ 'port_id': 'fake_port_id',
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, list(data))
def test_floating_ip_list_fixed_ip_address(self):
arglist = [
- '--fixed-ip-address', self.floating_ips[0].fixed_ip_address,
+ '--fixed-ip-address',
+ self.floating_ips[0].fixed_ip_address,
]
verifylist = [
('fixed_ip_address', self.floating_ips[0].fixed_ip_address),
@@ -498,15 +538,18 @@ class TestListFloatingIPNetwork(TestFloatingIPNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.ips.assert_called_once_with(**{
- 'fixed_ip_address': self.floating_ips[0].fixed_ip_address,
- })
+ self.network.ips.assert_called_once_with(
+ **{
+ 'fixed_ip_address': self.floating_ips[0].fixed_ip_address,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, list(data))
def test_floating_ip_list_floating_ip_address(self):
arglist = [
- '--floating-ip-address', self.floating_ips[0].floating_ip_address,
+ '--floating-ip-address',
+ self.floating_ips[0].floating_ip_address,
]
verifylist = [
('floating_ip_address', self.floating_ips[0].floating_ip_address),
@@ -515,15 +558,23 @@ class TestListFloatingIPNetwork(TestFloatingIPNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.ips.assert_called_once_with(**{
- 'floating_ip_address': self.floating_ips[0].floating_ip_address,
- })
+ self.network.ips.assert_called_once_with(
+ **{
+ 'floating_ip_address': self.floating_ips[
+ 0
+ ].floating_ip_address,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, list(data))
def test_floating_ip_list_long(self):
- arglist = ['--long', ]
- verifylist = [('long', True), ]
+ arglist = [
+ '--long',
+ ]
+ verifylist = [
+ ('long', True),
+ ]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
@@ -535,7 +586,8 @@ class TestListFloatingIPNetwork(TestFloatingIPNetwork):
def test_floating_ip_list_status(self):
arglist = [
- '--status', 'ACTIVE',
+ '--status',
+ 'ACTIVE',
'--long',
]
verifylist = [
@@ -545,9 +597,11 @@ class TestListFloatingIPNetwork(TestFloatingIPNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.ips.assert_called_once_with(**{
- 'status': 'ACTIVE',
- })
+ self.network.ips.assert_called_once_with(
+ **{
+ 'status': 'ACTIVE',
+ }
+ )
self.assertEqual(self.columns_long, columns)
self.assertEqual(self.data_long, list(data))
@@ -555,7 +609,8 @@ class TestListFloatingIPNetwork(TestFloatingIPNetwork):
project = identity_fakes_v3.FakeProject.create_one_project()
self.projects_mock.get.return_value = project
arglist = [
- '--project', project.id,
+ '--project',
+ project.id,
]
verifylist = [
('project', project.id),
@@ -574,8 +629,10 @@ class TestListFloatingIPNetwork(TestFloatingIPNetwork):
project = identity_fakes_v3.FakeProject.create_one_project()
self.projects_mock.get.return_value = project
arglist = [
- '--project', project.id,
- '--project-domain', project.domain_id,
+ '--project',
+ project.id,
+ '--project-domain',
+ project.domain_id,
]
verifylist = [
('project', project.id),
@@ -591,7 +648,8 @@ class TestListFloatingIPNetwork(TestFloatingIPNetwork):
def test_floating_ip_list_router(self):
arglist = [
- '--router', 'fake_router_id',
+ '--router',
+ 'fake_router_id',
'--long',
]
verifylist = [
@@ -601,18 +659,24 @@ class TestListFloatingIPNetwork(TestFloatingIPNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.ips.assert_called_once_with(**{
- 'router_id': 'fake_router_id',
- })
+ self.network.ips.assert_called_once_with(
+ **{
+ 'router_id': 'fake_router_id',
+ }
+ )
self.assertEqual(self.columns_long, columns)
self.assertEqual(self.data_long, list(data))
def test_list_with_tag_options(self):
arglist = [
- '--tags', 'red,blue',
- '--any-tags', 'red,green',
- '--not-tags', 'orange,yellow',
- '--not-any-tags', 'black,white',
+ '--tags',
+ 'red,blue',
+ '--any-tags',
+ 'red,green',
+ '--not-tags',
+ 'orange,yellow',
+ '--not-any-tags',
+ 'black,white',
]
verifylist = [
('tags', ['red', 'blue']),
@@ -624,17 +688,18 @@ class TestListFloatingIPNetwork(TestFloatingIPNetwork):
columns, data = self.cmd.take_action(parsed_args)
self.network.ips.assert_called_once_with(
- **{'tags': 'red,blue',
- 'any_tags': 'red,green',
- 'not_tags': 'orange,yellow',
- 'not_any_tags': 'black,white'}
+ **{
+ 'tags': 'red,blue',
+ 'any_tags': 'red,green',
+ 'not_tags': 'orange,yellow',
+ 'not_any_tags': 'black,white',
+ }
)
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, list(data))
class TestShowFloatingIPNetwork(TestFloatingIPNetwork):
-
# The floating ip to display.
floating_ip = network_fakes.FakeFloatingIP.create_one_floating_ip()
@@ -698,7 +763,6 @@ class TestShowFloatingIPNetwork(TestFloatingIPNetwork):
class TestSetFloatingIP(TestFloatingIPNetwork):
-
# Fake data for option tests.
floating_network = network_fakes.create_one_network()
subnet = network_fakes.FakeSubnet.create_one_subnet()
@@ -726,7 +790,8 @@ class TestSetFloatingIP(TestFloatingIPNetwork):
def test_port_option(self):
arglist = [
self.floating_ip.id,
- '--port', self.floating_ip.port_id,
+ '--port',
+ self.floating_ip.port_id,
]
verifylist = [
('floating_ip', self.floating_ip.id),
@@ -746,13 +811,16 @@ class TestSetFloatingIP(TestFloatingIPNetwork):
)
self.network.update_ip.assert_called_once_with(
- self.floating_ip, **attrs)
+ self.floating_ip, **attrs
+ )
def test_fixed_ip_option(self):
arglist = [
self.floating_ip.id,
- '--port', self.floating_ip.port_id,
- "--fixed-ip-address", self.floating_ip.fixed_ip_address,
+ '--port',
+ self.floating_ip.port_id,
+ "--fixed-ip-address",
+ self.floating_ip.fixed_ip_address,
]
verifylist = [
('floating_ip', self.floating_ip.id),
@@ -772,13 +840,16 @@ class TestSetFloatingIP(TestFloatingIPNetwork):
ignore_missing=False,
)
self.network.update_ip.assert_called_once_with(
- self.floating_ip, **attrs)
+ self.floating_ip, **attrs
+ )
def test_description_option(self):
arglist = [
self.floating_ip.id,
- '--port', self.floating_ip.port_id,
- '--description', self.floating_ip.description,
+ '--port',
+ self.floating_ip.port_id,
+ '--description',
+ self.floating_ip.description,
]
verifylist = [
('floating_ip', self.floating_ip.id),
@@ -798,13 +869,15 @@ class TestSetFloatingIP(TestFloatingIPNetwork):
ignore_missing=False,
)
self.network.update_ip.assert_called_once_with(
- self.floating_ip, **attrs)
+ self.floating_ip, **attrs
+ )
def test_qos_policy_option(self):
qos_policy = network_fakes.FakeNetworkQosPolicy.create_one_qos_policy()
self.network.find_qos_policy = mock.Mock(return_value=qos_policy)
arglist = [
- "--qos-policy", qos_policy.id,
+ "--qos-policy",
+ qos_policy.id,
self.floating_ip.id,
]
verifylist = [
@@ -823,14 +896,17 @@ class TestSetFloatingIP(TestFloatingIPNetwork):
ignore_missing=False,
)
self.network.update_ip.assert_called_once_with(
- self.floating_ip, **attrs)
+ self.floating_ip, **attrs
+ )
def test_port_and_qos_policy_option(self):
qos_policy = network_fakes.FakeNetworkQosPolicy.create_one_qos_policy()
self.network.find_qos_policy = mock.Mock(return_value=qos_policy)
arglist = [
- "--qos-policy", qos_policy.id,
- '--port', self.floating_ip.port_id,
+ "--qos-policy",
+ qos_policy.id,
+ '--port',
+ self.floating_ip.port_id,
self.floating_ip.id,
]
verifylist = [
@@ -851,7 +927,8 @@ class TestSetFloatingIP(TestFloatingIPNetwork):
ignore_missing=False,
)
self.network.update_ip.assert_called_once_with(
- self.floating_ip, **attrs)
+ self.floating_ip, **attrs
+ )
def test_no_qos_policy_option(self):
arglist = [
@@ -874,12 +951,14 @@ class TestSetFloatingIP(TestFloatingIPNetwork):
ignore_missing=False,
)
self.network.update_ip.assert_called_once_with(
- self.floating_ip, **attrs)
+ self.floating_ip, **attrs
+ )
def test_port_and_no_qos_policy_option(self):
arglist = [
"--no-qos-policy",
- '--port', self.floating_ip.port_id,
+ '--port',
+ self.floating_ip.port_id,
self.floating_ip.id,
]
verifylist = [
@@ -900,7 +979,8 @@ class TestSetFloatingIP(TestFloatingIPNetwork):
ignore_missing=False,
)
self.network.update_ip.assert_called_once_with(
- self.floating_ip, **attrs)
+ self.floating_ip, **attrs
+ )
def _test_set_tags(self, with_tags=True):
if with_tags:
@@ -919,8 +999,8 @@ class TestSetFloatingIP(TestFloatingIPNetwork):
self.assertFalse(self.network.update_ip.called)
self.network.set_tags.assert_called_once_with(
- self.floating_ip,
- tests_utils.CompareBySet(expected_args))
+ self.floating_ip, tests_utils.CompareBySet(expected_args)
+ )
self.assertIsNone(result)
def test_set_with_tags(self):
@@ -931,7 +1011,6 @@ class TestSetFloatingIP(TestFloatingIPNetwork):
class TestUnsetFloatingIP(TestFloatingIPNetwork):
-
floating_network = network_fakes.create_one_network()
subnet = network_fakes.FakeSubnet.create_one_subnet()
port = network_fakes.create_one_port()
@@ -975,7 +1054,8 @@ class TestUnsetFloatingIP(TestFloatingIPNetwork):
ignore_missing=False,
)
self.network.update_ip.assert_called_once_with(
- self.floating_ip, **attrs)
+ self.floating_ip, **attrs
+ )
self.assertIsNone(result)
@@ -1000,7 +1080,8 @@ class TestUnsetFloatingIP(TestFloatingIPNetwork):
ignore_missing=False,
)
self.network.update_ip.assert_called_once_with(
- self.floating_ip, **attrs)
+ self.floating_ip, **attrs
+ )
self.assertIsNone(result)
@@ -1014,16 +1095,15 @@ class TestUnsetFloatingIP(TestFloatingIPNetwork):
verifylist = [('all_tag', True)]
expected_args = []
arglist.append(self.floating_ip.id)
- verifylist.append(
- ('floating_ip', self.floating_ip.id))
+ verifylist.append(('floating_ip', self.floating_ip.id))
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.assertFalse(self.network.update_ip.called)
self.network.set_tags.assert_called_once_with(
- self.floating_ip,
- tests_utils.CompareBySet(expected_args))
+ self.floating_ip, tests_utils.CompareBySet(expected_args)
+ )
self.assertIsNone(result)
def test_unset_with_tags(self):
diff --git a/openstackclient/tests/unit/network/v2/test_floating_ip_pool_compute.py b/openstackclient/tests/unit/network/v2/test_floating_ip_pool_compute.py
index 3dd99362..2e0f75bd 100644
--- a/openstackclient/tests/unit/network/v2/test_floating_ip_pool_compute.py
+++ b/openstackclient/tests/unit/network/v2/test_floating_ip_pool_compute.py
@@ -19,8 +19,8 @@ from openstackclient.tests.unit.compute.v2 import fakes as compute_fakes
# Tests for Compute network
-class TestFloatingIPPoolCompute(compute_fakes.TestComputev2):
+class TestFloatingIPPoolCompute(compute_fakes.TestComputev2):
def setUp(self):
super(TestFloatingIPPoolCompute, self).setUp()
@@ -28,24 +28,18 @@ class TestFloatingIPPoolCompute(compute_fakes.TestComputev2):
self.compute = self.app.client_manager.compute
-@mock.patch(
- 'openstackclient.api.compute_v2.APIv2.floating_ip_pool_list'
-)
+@mock.patch('openstackclient.api.compute_v2.APIv2.floating_ip_pool_list')
class TestListFloatingIPPoolCompute(TestFloatingIPPoolCompute):
-
# The floating ip pools to list up
- _floating_ip_pools = \
+ _floating_ip_pools = (
compute_fakes.FakeFloatingIPPool.create_floating_ip_pools(count=3)
-
- columns = (
- 'Name',
)
+ columns = ('Name',)
+
data = []
for pool in _floating_ip_pools:
- data.append((
- pool['name'],
- ))
+ data.append((pool['name'],))
def setUp(self):
super(TestListFloatingIPPoolCompute, self).setUp()
diff --git a/openstackclient/tests/unit/network/v2/test_floating_ip_pool_network.py b/openstackclient/tests/unit/network/v2/test_floating_ip_pool_network.py
index 95ff5549..fd0a208b 100644
--- a/openstackclient/tests/unit/network/v2/test_floating_ip_pool_network.py
+++ b/openstackclient/tests/unit/network/v2/test_floating_ip_pool_network.py
@@ -19,8 +19,8 @@ from openstackclient.tests.unit.network.v2 import fakes as network_fakes
# Tests for Network API v2
-class TestFloatingIPPoolNetwork(network_fakes.TestNetworkV2):
+class TestFloatingIPPoolNetwork(network_fakes.TestNetworkV2):
def setUp(self):
super(TestFloatingIPPoolNetwork, self).setUp()
@@ -29,18 +29,19 @@ class TestFloatingIPPoolNetwork(network_fakes.TestNetworkV2):
class TestListFloatingIPPoolNetwork(TestFloatingIPPoolNetwork):
-
def setUp(self):
super(TestListFloatingIPPoolNetwork, self).setUp()
# Get the command object to test
- self.cmd = floating_ip_pool.ListFloatingIPPool(self.app,
- self.namespace)
+ self.cmd = floating_ip_pool.ListFloatingIPPool(
+ self.app, self.namespace
+ )
def test_floating_ip_list(self):
arglist = []
verifylist = []
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- self.assertRaises(exceptions.CommandError, self.cmd.take_action,
- parsed_args)
+ self.assertRaises(
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
diff --git a/openstackclient/tests/unit/network/v2/test_floating_ip_port_forwarding.py b/openstackclient/tests/unit/network/v2/test_floating_ip_port_forwarding.py
index d0f5af8c..fb30a1a7 100644
--- a/openstackclient/tests/unit/network/v2/test_floating_ip_port_forwarding.py
+++ b/openstackclient/tests/unit/network/v2/test_floating_ip_port_forwarding.py
@@ -25,52 +25,45 @@ from openstackclient.tests.unit import utils as tests_utils
class TestFloatingIPPortForwarding(network_fakes.TestNetworkV2):
-
def setUp(self):
super(TestFloatingIPPortForwarding, self).setUp()
self.network = self.app.client_manager.network
- self.floating_ip = (network_fakes.FakeFloatingIP.
- create_one_floating_ip())
+ self.floating_ip = (
+ network_fakes.FakeFloatingIP.create_one_floating_ip()
+ )
self.port = network_fakes.create_one_port()
self.project = identity_fakes_v2.FakeProject.create_one_project()
self.network.find_port = mock.Mock(return_value=self.port)
class TestCreateFloatingIPPortForwarding(TestFloatingIPPortForwarding):
-
def setUp(self):
super(TestCreateFloatingIPPortForwarding, self).setUp()
- self.new_port_forwarding = (
- network_fakes.FakeFloatingIPPortForwarding.
- create_one_port_forwarding(
- attrs={
- 'internal_port_id': self.port.id,
- 'floatingip_id': self.floating_ip.id,
- }
- )
+ self.new_port_forwarding = network_fakes.FakeFloatingIPPortForwarding.create_one_port_forwarding( # noqa: E501
+ attrs={
+ 'internal_port_id': self.port.id,
+ 'floatingip_id': self.floating_ip.id,
+ }
)
- self.new_port_forwarding_with_ranges = (
- network_fakes.FakeFloatingIPPortForwarding.
- create_one_port_forwarding(
- use_range=True,
- attrs={
- 'internal_port_id': self.port.id,
- 'floatingip_id': self.floating_ip.id,
- }
- )
+ self.new_port_forwarding_with_ranges = network_fakes.FakeFloatingIPPortForwarding.create_one_port_forwarding( # noqa: E501
+ use_range=True,
+ attrs={
+ 'internal_port_id': self.port.id,
+ 'floatingip_id': self.floating_ip.id,
+ },
)
self.network.create_floating_ip_port_forwarding = mock.Mock(
- return_value=self.new_port_forwarding)
-
- self.network.find_ip = mock.Mock(
- return_value=self.floating_ip
+ return_value=self.new_port_forwarding
)
+ self.network.find_ip = mock.Mock(return_value=self.floating_ip)
+
# Get the command object to test
self.cmd = floating_ip_port_forwarding.CreateFloatingIPPortForwarding(
- self.app, self.namespace)
+ self.app, self.namespace
+ )
self.columns = (
'description',
@@ -82,7 +75,7 @@ class TestCreateFloatingIPPortForwarding(TestFloatingIPPortForwarding):
'internal_port',
'internal_port_id',
'internal_port_range',
- 'protocol'
+ 'protocol',
)
self.data = (
@@ -103,17 +96,24 @@ class TestCreateFloatingIPPortForwarding(TestFloatingIPPortForwarding):
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_create_all_options_with_range(self):
arglist = [
- '--port', self.new_port_forwarding_with_ranges.internal_port_id,
+ '--port',
+ self.new_port_forwarding_with_ranges.internal_port_id,
'--internal-protocol-port',
self.new_port_forwarding_with_ranges.internal_port_range,
'--external-protocol-port',
self.new_port_forwarding_with_ranges.external_port_range,
- '--protocol', self.new_port_forwarding_with_ranges.protocol,
+ '--protocol',
+ self.new_port_forwarding_with_ranges.protocol,
self.new_port_forwarding_with_ranges.floatingip_id,
'--internal-ip-address',
self.new_port_forwarding_with_ranges.internal_ip_address,
@@ -122,49 +122,53 @@ class TestCreateFloatingIPPortForwarding(TestFloatingIPPortForwarding):
]
verifylist = [
('port', self.new_port_forwarding_with_ranges.internal_port_id),
- ('internal_protocol_port',
- self.new_port_forwarding_with_ranges.internal_port_range),
- ('external_protocol_port',
- self.new_port_forwarding_with_ranges.external_port_range),
+ (
+ 'internal_protocol_port',
+ self.new_port_forwarding_with_ranges.internal_port_range,
+ ),
+ (
+ 'external_protocol_port',
+ self.new_port_forwarding_with_ranges.external_port_range,
+ ),
('protocol', self.new_port_forwarding_with_ranges.protocol),
- ('floating_ip',
- self.new_port_forwarding_with_ranges.floatingip_id),
- ('internal_ip_address', self.new_port_forwarding_with_ranges.
- internal_ip_address),
+ (
+ 'floating_ip',
+ self.new_port_forwarding_with_ranges.floatingip_id,
+ ),
+ (
+ 'internal_ip_address',
+ self.new_port_forwarding_with_ranges.internal_ip_address,
+ ),
('description', self.new_port_forwarding_with_ranges.description),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_floating_ip_port_forwarding.\
- assert_called_once_with(
- self.new_port_forwarding.floatingip_id,
- **{
- 'external_port_range':
- self.new_port_forwarding_with_ranges.
- external_port_range,
- 'internal_ip_address':
- self.new_port_forwarding_with_ranges.
- internal_ip_address,
- 'internal_port_range':
- self.new_port_forwarding_with_ranges.
- internal_port_range,
- 'internal_port_id':
- self.new_port_forwarding_with_ranges.internal_port_id,
- 'protocol': self.new_port_forwarding_with_ranges.protocol,
- 'description':
- self.new_port_forwarding_with_ranges.description,
- })
+ self.network.create_floating_ip_port_forwarding.assert_called_once_with( # noqa: E501
+ self.new_port_forwarding.floatingip_id,
+ **{
+ 'external_port_range': self.new_port_forwarding_with_ranges.external_port_range, # noqa: E501
+ 'internal_ip_address': self.new_port_forwarding_with_ranges.internal_ip_address, # noqa: E501
+ 'internal_port_range': self.new_port_forwarding_with_ranges.internal_port_range, # noqa: E501
+ 'internal_port_id': self.new_port_forwarding_with_ranges.internal_port_id, # noqa: E501
+ 'protocol': self.new_port_forwarding_with_ranges.protocol,
+ 'description': self.new_port_forwarding_with_ranges.description, # noqa: E501
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
def test_create_all_options_with_range_invalid_port_exception(self):
invalid_port_range = '999999:999999'
arglist = [
- '--port', self.new_port_forwarding_with_ranges.internal_port_id,
- '--internal-protocol-port', invalid_port_range,
- '--external-protocol-port', invalid_port_range,
- '--protocol', self.new_port_forwarding_with_ranges.protocol,
+ '--port',
+ self.new_port_forwarding_with_ranges.internal_port_id,
+ '--internal-protocol-port',
+ invalid_port_range,
+ '--external-protocol-port',
+ invalid_port_range,
+ '--protocol',
+ self.new_port_forwarding_with_ranges.protocol,
self.new_port_forwarding_with_ranges.floatingip_id,
'--internal-ip-address',
self.new_port_forwarding_with_ranges.internal_ip_address,
@@ -176,10 +180,14 @@ class TestCreateFloatingIPPortForwarding(TestFloatingIPPortForwarding):
('internal_protocol_port', invalid_port_range),
('external_protocol_port', invalid_port_range),
('protocol', self.new_port_forwarding_with_ranges.protocol),
- ('floating_ip',
- self.new_port_forwarding_with_ranges.floatingip_id),
- ('internal_ip_address', self.new_port_forwarding_with_ranges.
- internal_ip_address),
+ (
+ 'floating_ip',
+ self.new_port_forwarding_with_ranges.floatingip_id,
+ ),
+ (
+ 'internal_ip_address',
+ self.new_port_forwarding_with_ranges.internal_ip_address,
+ ),
('description', self.new_port_forwarding_with_ranges.description),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
@@ -194,10 +202,14 @@ class TestCreateFloatingIPPortForwarding(TestFloatingIPPortForwarding):
def test_create_all_options_with_invalid_range_exception(self):
invalid_port_range = '80:70'
arglist = [
- '--port', self.new_port_forwarding_with_ranges.internal_port_id,
- '--internal-protocol-port', invalid_port_range,
- '--external-protocol-port', invalid_port_range,
- '--protocol', self.new_port_forwarding_with_ranges.protocol,
+ '--port',
+ self.new_port_forwarding_with_ranges.internal_port_id,
+ '--internal-protocol-port',
+ invalid_port_range,
+ '--external-protocol-port',
+ invalid_port_range,
+ '--protocol',
+ self.new_port_forwarding_with_ranges.protocol,
self.new_port_forwarding_with_ranges.floatingip_id,
'--internal-ip-address',
self.new_port_forwarding_with_ranges.internal_ip_address,
@@ -209,15 +221,21 @@ class TestCreateFloatingIPPortForwarding(TestFloatingIPPortForwarding):
('internal_protocol_port', invalid_port_range),
('external_protocol_port', invalid_port_range),
('protocol', self.new_port_forwarding_with_ranges.protocol),
- ('floating_ip',
- self.new_port_forwarding_with_ranges.floatingip_id),
- ('internal_ip_address', self.new_port_forwarding_with_ranges.
- internal_ip_address),
+ (
+ 'floating_ip',
+ self.new_port_forwarding_with_ranges.floatingip_id,
+ ),
+ (
+ 'internal_ip_address',
+ self.new_port_forwarding_with_ranges.internal_ip_address,
+ ),
('description', self.new_port_forwarding_with_ranges.description),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- msg = 'The last number in port range must be greater or equal to ' \
- 'the first'
+ msg = (
+ 'The last number in port range must be greater or equal to '
+ 'the first'
+ )
try:
self.cmd.take_action(parsed_args)
self.fail('CommandError should be raised.')
@@ -229,10 +247,14 @@ class TestCreateFloatingIPPortForwarding(TestFloatingIPPortForwarding):
internal_range = '80:90'
external_range = '8080:8100'
arglist = [
- '--port', self.new_port_forwarding_with_ranges.internal_port_id,
- '--internal-protocol-port', internal_range,
- '--external-protocol-port', external_range,
- '--protocol', self.new_port_forwarding_with_ranges.protocol,
+ '--port',
+ self.new_port_forwarding_with_ranges.internal_port_id,
+ '--internal-protocol-port',
+ internal_range,
+ '--external-protocol-port',
+ external_range,
+ '--protocol',
+ self.new_port_forwarding_with_ranges.protocol,
self.new_port_forwarding_with_ranges.floatingip_id,
'--internal-ip-address',
self.new_port_forwarding_with_ranges.internal_ip_address,
@@ -244,15 +266,21 @@ class TestCreateFloatingIPPortForwarding(TestFloatingIPPortForwarding):
('internal_protocol_port', internal_range),
('external_protocol_port', external_range),
('protocol', self.new_port_forwarding_with_ranges.protocol),
- ('floating_ip',
- self.new_port_forwarding_with_ranges.floatingip_id),
- ('internal_ip_address', self.new_port_forwarding_with_ranges.
- internal_ip_address),
+ (
+ 'floating_ip',
+ self.new_port_forwarding_with_ranges.floatingip_id,
+ ),
+ (
+ 'internal_ip_address',
+ self.new_port_forwarding_with_ranges.internal_ip_address,
+ ),
('description', self.new_port_forwarding_with_ranges.description),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- msg = "The relation between internal and external ports does not " \
- "match the pattern 1:N and N:N"
+ msg = (
+ "The relation between internal and external ports does not "
+ "match the pattern 1:N and N:N"
+ )
try:
self.cmd.take_action(parsed_args)
self.fail('CommandError should be raised.')
@@ -262,12 +290,14 @@ class TestCreateFloatingIPPortForwarding(TestFloatingIPPortForwarding):
def test_create_all_options(self):
arglist = [
- '--port', self.new_port_forwarding.internal_port_id,
+ '--port',
+ self.new_port_forwarding.internal_port_id,
'--internal-protocol-port',
str(self.new_port_forwarding.internal_port),
'--external-protocol-port',
str(self.new_port_forwarding.external_port),
- '--protocol', self.new_port_forwarding.protocol,
+ '--protocol',
+ self.new_port_forwarding.protocol,
self.new_port_forwarding.floatingip_id,
'--internal-ip-address',
self.new_port_forwarding.internal_ip_address,
@@ -276,57 +306,60 @@ class TestCreateFloatingIPPortForwarding(TestFloatingIPPortForwarding):
]
verifylist = [
('port', self.new_port_forwarding.internal_port_id),
- ('internal_protocol_port',
- str(self.new_port_forwarding.internal_port)),
- ('external_protocol_port',
- str(self.new_port_forwarding.external_port)),
+ (
+ 'internal_protocol_port',
+ str(self.new_port_forwarding.internal_port),
+ ),
+ (
+ 'external_protocol_port',
+ str(self.new_port_forwarding.external_port),
+ ),
('protocol', self.new_port_forwarding.protocol),
('floating_ip', self.new_port_forwarding.floatingip_id),
- ('internal_ip_address', self.new_port_forwarding.
- internal_ip_address),
+ (
+ 'internal_ip_address',
+ self.new_port_forwarding.internal_ip_address,
+ ),
('description', self.new_port_forwarding.description),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_floating_ip_port_forwarding.\
- assert_called_once_with(
- self.new_port_forwarding.floatingip_id,
- **{
- 'external_port': self.new_port_forwarding.external_port,
- 'internal_ip_address': self.new_port_forwarding.
- internal_ip_address,
- 'internal_port': self.new_port_forwarding.internal_port,
- 'internal_port_id': self.new_port_forwarding.
- internal_port_id,
- 'protocol': self.new_port_forwarding.protocol,
- 'description': self.new_port_forwarding.description,
- })
+ self.network.create_floating_ip_port_forwarding.assert_called_once_with( # noqa: E501
+ self.new_port_forwarding.floatingip_id,
+ **{
+ 'external_port': self.new_port_forwarding.external_port,
+ 'internal_ip_address': self.new_port_forwarding.internal_ip_address, # noqa: E501
+ 'internal_port': self.new_port_forwarding.internal_port,
+ 'internal_port_id': self.new_port_forwarding.internal_port_id,
+ 'protocol': self.new_port_forwarding.protocol,
+ 'description': self.new_port_forwarding.description,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
class TestDeleteFloatingIPPortForwarding(TestFloatingIPPortForwarding):
-
def setUp(self):
super(TestDeleteFloatingIPPortForwarding, self).setUp()
self._port_forwarding = (
network_fakes.FakeFloatingIPPortForwarding.create_port_forwardings(
- count=2, attrs={
+ count=2,
+ attrs={
'floatingip_id': self.floating_ip.id,
- }
+ },
)
)
self.network.delete_floating_ip_port_forwarding = mock.Mock(
return_value=None
)
- self.network.find_ip = mock.Mock(
- return_value=self.floating_ip
- )
+ self.network.find_ip = mock.Mock(return_value=self.floating_ip)
# Get the command object to test
self.cmd = floating_ip_port_forwarding.DeleteFloatingIPPortForwarding(
- self.app, self.namespace)
+ self.app, self.namespace
+ )
def test_port_forwarding_delete(self):
arglist = [
@@ -342,12 +375,11 @@ class TestDeleteFloatingIPPortForwarding(TestFloatingIPPortForwarding):
result = self.cmd.take_action(parsed_args)
- self.network.delete_floating_ip_port_forwarding.\
- assert_called_once_with(
- self.floating_ip.id,
- self._port_forwarding[0].id,
- ignore_missing=False
- )
+ self.network.delete_floating_ip_port_forwarding.assert_called_once_with( # noqa: E501
+ self.floating_ip.id,
+ self._port_forwarding[0].id,
+ ignore_missing=False,
+ )
self.assertIsNone(result)
@@ -384,15 +416,17 @@ class TestDeleteFloatingIPPortForwarding(TestFloatingIPPortForwarding):
]
verifylist = [
('floating_ip', self.floating_ip.id),
- ('port_forwarding_id',
- [self._port_forwarding[0].id, 'unexist_port_forwarding_id']),
+ (
+ 'port_forwarding_id',
+ [self._port_forwarding[0].id, 'unexist_port_forwarding_id'],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
delete_mock_result = [None, exceptions.CommandError]
- self.network.delete_floating_ip_port_forwarding = (
- mock.MagicMock(side_effect=delete_mock_result)
+ self.network.delete_floating_ip_port_forwarding = mock.MagicMock(
+ side_effect=delete_mock_result
)
try:
@@ -400,26 +434,22 @@ class TestDeleteFloatingIPPortForwarding(TestFloatingIPPortForwarding):
self.fail('CommandError should be raised.')
except exceptions.CommandError as e:
self.assertEqual(
- '1 of 2 Port forwarding failed to delete.',
- str(e)
+ '1 of 2 Port forwarding failed to delete.', str(e)
)
- self.network.delete_floating_ip_port_forwarding.\
- assert_any_call(
- self.floating_ip.id,
- 'unexist_port_forwarding_id',
- ignore_missing=False
- )
- self.network.delete_floating_ip_port_forwarding.\
- assert_any_call(
- self.floating_ip.id,
- self._port_forwarding[0].id,
- ignore_missing=False
- )
+ self.network.delete_floating_ip_port_forwarding.assert_any_call(
+ self.floating_ip.id,
+ 'unexist_port_forwarding_id',
+ ignore_missing=False,
+ )
+ self.network.delete_floating_ip_port_forwarding.assert_any_call(
+ self.floating_ip.id,
+ self._port_forwarding[0].id,
+ ignore_missing=False,
+ )
class TestListFloatingIPPortForwarding(TestFloatingIPPortForwarding):
-
columns = (
'ID',
'Internal Port ID',
@@ -436,68 +466,67 @@ class TestListFloatingIPPortForwarding(TestFloatingIPPortForwarding):
super(TestListFloatingIPPortForwarding, self).setUp()
self.port_forwardings = (
network_fakes.FakeFloatingIPPortForwarding.create_port_forwardings(
- count=3, attrs={
+ count=3,
+ attrs={
'internal_port_id': self.port.id,
'floatingip_id': self.floating_ip.id,
- }
+ },
)
)
self.data = []
for port_forwarding in self.port_forwardings:
- self.data.append((
- port_forwarding.id,
- port_forwarding.internal_port_id,
- port_forwarding.internal_ip_address,
- port_forwarding.internal_port,
- port_forwarding.internal_port_range,
- port_forwarding.external_port,
- port_forwarding.external_port_range,
- port_forwarding.protocol,
- port_forwarding.description,
- ))
+ self.data.append(
+ (
+ port_forwarding.id,
+ port_forwarding.internal_port_id,
+ port_forwarding.internal_ip_address,
+ port_forwarding.internal_port,
+ port_forwarding.internal_port_range,
+ port_forwarding.external_port,
+ port_forwarding.external_port_range,
+ port_forwarding.protocol,
+ port_forwarding.description,
+ )
+ )
self.network.floating_ip_port_forwardings = mock.Mock(
return_value=self.port_forwardings
)
- self.network.find_ip = mock.Mock(
- return_value=self.floating_ip
- )
+ self.network.find_ip = mock.Mock(return_value=self.floating_ip)
# Get the command object to test
self.cmd = floating_ip_port_forwarding.ListFloatingIPPortForwarding(
- self.app,
- self.namespace
+ self.app, self.namespace
)
def test_port_forwarding_list(self):
- arglist = [
- self.floating_ip.id
- ]
- verifylist = [
- ('floating_ip', self.floating_ip.id)
- ]
+ arglist = [self.floating_ip.id]
+ verifylist = [('floating_ip', self.floating_ip.id)]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
self.network.floating_ip_port_forwardings.assert_called_once_with(
- self.floating_ip,
- **{}
+ self.floating_ip, **{}
)
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, list(data))
def test_port_forwarding_list_all_options(self):
arglist = [
- '--port', self.port_forwardings[0].internal_port_id,
+ '--port',
+ self.port_forwardings[0].internal_port_id,
'--external-protocol-port',
str(self.port_forwardings[0].external_port),
- '--protocol', self.port_forwardings[0].protocol,
+ '--protocol',
+ self.port_forwardings[0].protocol,
self.port_forwardings[0].floatingip_id,
]
verifylist = [
('port', self.port_forwardings[0].internal_port_id),
- ('external_protocol_port',
- str(self.port_forwardings[0].external_port)),
+ (
+ 'external_protocol_port',
+ str(self.port_forwardings[0].external_port),
+ ),
('protocol', self.port_forwardings[0].protocol),
('floating_ip', self.port_forwardings[0].floatingip_id),
]
@@ -511,39 +540,32 @@ class TestListFloatingIPPortForwarding(TestFloatingIPPortForwarding):
}
self.network.floating_ip_port_forwardings.assert_called_once_with(
- self.floating_ip,
- **query
+ self.floating_ip, **query
)
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, list(data))
class TestSetFloatingIPPortForwarding(TestFloatingIPPortForwarding):
-
# The Port Forwarding to set.
def setUp(self):
super(TestSetFloatingIPPortForwarding, self).setUp()
- self._port_forwarding = (
- network_fakes.FakeFloatingIPPortForwarding.
- create_one_port_forwarding(
- attrs={
- 'floatingip_id': self.floating_ip.id,
- }
- )
+ self._port_forwarding = network_fakes.FakeFloatingIPPortForwarding.create_one_port_forwarding( # noqa: E501
+ attrs={
+ 'floatingip_id': self.floating_ip.id,
+ }
)
self.network.update_floating_ip_port_forwarding = mock.Mock(
return_value=None
)
self.network.find_floating_ip_port_forwarding = mock.Mock(
- return_value=self._port_forwarding)
- self.network.find_ip = mock.Mock(
- return_value=self.floating_ip
+ return_value=self._port_forwarding
)
+ self.network.find_ip = mock.Mock(return_value=self.floating_ip)
# Get the command object to test
self.cmd = floating_ip_port_forwarding.SetFloatingIPPortForwarding(
- self.app,
- self.namespace
+ self.app, self.namespace
)
def test_set_nothing(self):
@@ -569,12 +591,18 @@ class TestSetFloatingIPPortForwarding(TestFloatingIPPortForwarding):
def test_set_all_thing(self):
arglist_single = [
- '--port', self.port.id,
- '--internal-ip-address', 'new_internal_ip_address',
- '--internal-protocol-port', '100',
- '--external-protocol-port', '200',
- '--protocol', 'tcp',
- '--description', 'some description',
+ '--port',
+ self.port.id,
+ '--internal-ip-address',
+ 'new_internal_ip_address',
+ '--internal-protocol-port',
+ '100',
+ '--external-protocol-port',
+ '200',
+ '--protocol',
+ 'tcp',
+ '--description',
+ 'some description',
self._port_forwarding.floatingip_id,
self._port_forwarding.id,
]
@@ -602,8 +630,11 @@ class TestSetFloatingIPPortForwarding(TestFloatingIPPortForwarding):
'protocol': 'tcp',
'description': 'some description',
}
- attrs_range = dict(attrs_single, internal_port_range='100:110',
- external_port_range='200:210')
+ attrs_range = dict(
+ attrs_single,
+ internal_port_range='100:110',
+ external_port_range='200:210',
+ )
attrs_range.pop('internal_port')
attrs_range.pop('external_port')
@@ -624,7 +655,6 @@ class TestSetFloatingIPPortForwarding(TestFloatingIPPortForwarding):
class TestShowFloatingIPPortForwarding(TestFloatingIPPortForwarding):
-
# The port forwarding to show.
columns = (
'description',
@@ -641,13 +671,10 @@ class TestShowFloatingIPPortForwarding(TestFloatingIPPortForwarding):
def setUp(self):
super(TestShowFloatingIPPortForwarding, self).setUp()
- self._port_forwarding = (
- network_fakes.FakeFloatingIPPortForwarding.
- create_one_port_forwarding(
- attrs={
- 'floatingip_id': self.floating_ip.id,
- }
- )
+ self._port_forwarding = network_fakes.FakeFloatingIPPortForwarding.create_one_port_forwarding( # noqa: E501
+ attrs={
+ 'floatingip_id': self.floating_ip.id,
+ }
)
self.data = (
self._port_forwarding.description,
@@ -664,13 +691,10 @@ class TestShowFloatingIPPortForwarding(TestFloatingIPPortForwarding):
self.network.find_floating_ip_port_forwarding = mock.Mock(
return_value=self._port_forwarding
)
- self.network.find_ip = mock.Mock(
- return_value=self.floating_ip
- )
+ self.network.find_ip = mock.Mock(return_value=self.floating_ip)
# Get the command object to test
self.cmd = floating_ip_port_forwarding.ShowFloatingIPPortForwarding(
- self.app,
- self.namespace
+ self.app, self.namespace
)
def test_show_no_options(self):
@@ -678,8 +702,13 @@ class TestShowFloatingIPPortForwarding(TestFloatingIPPortForwarding):
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_show_default_options(self):
arglist = [
@@ -695,9 +724,7 @@ class TestShowFloatingIPPortForwarding(TestFloatingIPPortForwarding):
columns, data = self.cmd.take_action(parsed_args)
self.network.find_floating_ip_port_forwarding.assert_called_once_with(
- self.floating_ip,
- self._port_forwarding.id,
- ignore_missing=False
+ self.floating_ip, self._port_forwarding.id, ignore_missing=False
)
self.assertEqual(self.columns, columns)
diff --git a/openstackclient/tests/unit/network/v2/test_ip_availability.py b/openstackclient/tests/unit/network/v2/test_ip_availability.py
index fbe3b1ab..50ead913 100644
--- a/openstackclient/tests/unit/network/v2/test_ip_availability.py
+++ b/openstackclient/tests/unit/network/v2/test_ip_availability.py
@@ -22,7 +22,6 @@ from openstackclient.tests.unit import utils as tests_utils
class TestIPAvailability(network_fakes.TestNetworkV2):
-
def setUp(self):
super(TestIPAvailability, self).setUp()
@@ -37,7 +36,6 @@ class TestIPAvailability(network_fakes.TestNetworkV2):
class TestListIPAvailability(TestIPAvailability):
-
_ip_availability = network_fakes.create_ip_availability(count=3)
columns = (
'Network ID',
@@ -47,20 +45,22 @@ class TestListIPAvailability(TestIPAvailability):
)
data = []
for net in _ip_availability:
- data.append((
- net.network_id,
- net.network_name,
- net.total_ips,
- net.used_ips,
- ))
+ data.append(
+ (
+ net.network_id,
+ net.network_name,
+ net.total_ips,
+ net.used_ips,
+ )
+ )
def setUp(self):
super(TestListIPAvailability, self).setUp()
- self.cmd = ip_availability.ListIPAvailability(
- self.app, self.namespace)
+ self.cmd = ip_availability.ListIPAvailability(self.app, self.namespace)
self.network.network_ip_availabilities = mock.Mock(
- return_value=self._ip_availability)
+ return_value=self._ip_availability
+ )
def test_list_no_options(self):
arglist = []
@@ -72,17 +72,17 @@ class TestListIPAvailability(TestIPAvailability):
filters = {'ip_version': 4}
self.network.network_ip_availabilities.assert_called_once_with(
- **filters)
+ **filters
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
def test_list_ip_version(self):
arglist = [
- '--ip-version', str(4),
- ]
- verifylist = [
- ('ip_version', 4)
+ '--ip-version',
+ str(4),
]
+ verifylist = [('ip_version', 4)]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
@@ -90,35 +90,32 @@ class TestListIPAvailability(TestIPAvailability):
filters = {'ip_version': 4}
self.network.network_ip_availabilities.assert_called_once_with(
- **filters)
+ **filters
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
def test_list_project(self):
- arglist = [
- '--project', self.project.name
- ]
- verifylist = [
- ('project', self.project.name)
- ]
+ arglist = ['--project', self.project.name]
+ verifylist = [('project', self.project.name)]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- filters = {'project_id': self.project.id,
- 'ip_version': 4}
+ filters = {'project_id': self.project.id, 'ip_version': 4}
self.network.network_ip_availabilities.assert_called_once_with(
- **filters)
+ **filters
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
class TestShowIPAvailability(TestIPAvailability):
-
_network = network_fakes.create_one_network()
_ip_availability = network_fakes.create_one_ip_availability(
- attrs={'network_id': _network.id})
+ attrs={'network_id': _network.id}
+ )
columns = (
'network_id',
@@ -132,8 +129,7 @@ class TestShowIPAvailability(TestIPAvailability):
_ip_availability.network_id,
_ip_availability.network_name,
_ip_availability.project_id,
- format_columns.ListDictColumn(
- _ip_availability.subnet_ip_availability),
+ format_columns.ListDictColumn(_ip_availability.subnet_ip_availability),
_ip_availability.total_ips,
_ip_availability.used_ips,
)
@@ -142,35 +138,37 @@ class TestShowIPAvailability(TestIPAvailability):
super(TestShowIPAvailability, self).setUp()
self.network.find_network_ip_availability = mock.Mock(
- return_value=self._ip_availability)
- self.network.find_network = mock.Mock(
- return_value=self._network)
+ return_value=self._ip_availability
+ )
+ self.network.find_network = mock.Mock(return_value=self._network)
# Get the command object to test
- self.cmd = ip_availability.ShowIPAvailability(
- self.app, self.namespace)
+ self.cmd = ip_availability.ShowIPAvailability(self.app, self.namespace)
def test_show_no_option(self):
arglist = []
verifylist = []
- self.assertRaises(tests_utils.ParserException,
- self.check_parser, self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_show_all_options(self):
arglist = [
self._ip_availability.network_name,
]
- verifylist = [
- ('network', self._ip_availability.network_name)
- ]
+ verifylist = [('network', self._ip_availability.network_name)]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
self.network.find_network_ip_availability.assert_called_once_with(
- self._ip_availability.network_id,
- ignore_missing=False)
+ self._ip_availability.network_id, ignore_missing=False
+ )
self.network.find_network.assert_called_once_with(
- self._ip_availability.network_name,
- ignore_missing=False)
+ self._ip_availability.network_name, ignore_missing=False
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, data)
diff --git a/openstackclient/tests/unit/network/v2/test_l3_conntrack_helper.py b/openstackclient/tests/unit/network/v2/test_l3_conntrack_helper.py
index b3d026a7..df1d8854 100644
--- a/openstackclient/tests/unit/network/v2/test_l3_conntrack_helper.py
+++ b/openstackclient/tests/unit/network/v2/test_l3_conntrack_helper.py
@@ -21,7 +21,6 @@ from openstackclient.tests.unit import utils as tests_utils
class TestConntrackHelper(network_fakes.TestNetworkV2):
-
def setUp(self):
super(TestConntrackHelper, self).setUp()
# Get a shortcut to the network client
@@ -31,48 +30,53 @@ class TestConntrackHelper(network_fakes.TestNetworkV2):
class TestCreateL3ConntrackHelper(TestConntrackHelper):
-
def setUp(self):
super(TestCreateL3ConntrackHelper, self).setUp()
attrs = {'router_id': self.router.id}
self.ct_helper = (
network_fakes.FakeL3ConntrackHelper.create_one_l3_conntrack_helper(
- attrs))
- self.columns = (
- 'helper',
- 'id',
- 'port',
- 'protocol',
- 'router_id'
+ attrs
+ )
)
+ self.columns = ('helper', 'id', 'port', 'protocol', 'router_id')
self.data = (
self.ct_helper.helper,
self.ct_helper.id,
self.ct_helper.port,
self.ct_helper.protocol,
- self.ct_helper.router_id
+ self.ct_helper.router_id,
)
self.network.create_conntrack_helper = mock.Mock(
- return_value=self.ct_helper)
+ return_value=self.ct_helper
+ )
# Get the command object to test
- self.cmd = l3_conntrack_helper.CreateConntrackHelper(self.app,
- self.namespace)
+ self.cmd = l3_conntrack_helper.CreateConntrackHelper(
+ self.app, self.namespace
+ )
def test_create_no_options(self):
arglist = []
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_create_default_options(self):
arglist = [
- '--helper', 'tftp',
- '--protocol', 'udp',
- '--port', '69',
+ '--helper',
+ 'tftp',
+ '--protocol',
+ 'udp',
+ '--port',
+ '69',
self.router.id,
]
@@ -83,49 +87,50 @@ class TestCreateL3ConntrackHelper(TestConntrackHelper):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
self.network.create_conntrack_helper.assert_called_once_with(
- self.router.id,
- **{'helper': 'tftp', 'protocol': 'udp',
- 'port': 69}
+ self.router.id, **{'helper': 'tftp', 'protocol': 'udp', 'port': 69}
)
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
def test_create_wrong_options(self):
arglist = [
- '--protocol', 'udp',
- '--port', '69',
+ '--protocol',
+ 'udp',
+ '--port',
+ '69',
self.router.id,
]
self.assertRaises(
tests_utils.ParserException,
self.check_parser,
- self.cmd, arglist, None)
+ self.cmd,
+ arglist,
+ None,
+ )
class TestDeleteL3ConntrackHelper(TestConntrackHelper):
-
def setUp(self):
super(TestDeleteL3ConntrackHelper, self).setUp()
attrs = {'router_id': self.router.id}
self.ct_helper = (
network_fakes.FakeL3ConntrackHelper.create_one_l3_conntrack_helper(
- attrs))
- self.network.delete_conntrack_helper = mock.Mock(
- return_value=None)
+ attrs
+ )
+ )
+ self.network.delete_conntrack_helper = mock.Mock(return_value=None)
# Get the command object to test
- self.cmd = l3_conntrack_helper.DeleteConntrackHelper(self.app,
- self.namespace)
+ self.cmd = l3_conntrack_helper.DeleteConntrackHelper(
+ self.app, self.namespace
+ )
def test_delete(self):
- arglist = [
- self.ct_helper.router_id,
- self.ct_helper.id
- ]
+ arglist = [self.ct_helper.router_id, self.ct_helper.id]
verifylist = [
('conntrack_helper_id', [self.ct_helper.id]),
('router', self.ct_helper.router_id),
@@ -133,35 +138,34 @@ class TestDeleteL3ConntrackHelper(TestConntrackHelper):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.network.delete_conntrack_helper.assert_called_once_with(
- self.ct_helper.id, self.router.id,
- ignore_missing=False)
+ self.ct_helper.id, self.router.id, ignore_missing=False
+ )
self.assertIsNone(result)
def test_delete_error(self):
- arglist = [
- self.router.id,
- self.ct_helper.id
- ]
+ arglist = [self.router.id, self.ct_helper.id]
verifylist = [
('conntrack_helper_id', [self.ct_helper.id]),
('router', self.router.id),
]
self.network.delete_conntrack_helper.side_effect = Exception(
- 'Error message')
+ 'Error message'
+ )
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
self.assertRaises(
- exceptions.CommandError,
- self.cmd.take_action, parsed_args)
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
class TestListL3ConntrackHelper(TestConntrackHelper):
-
def setUp(self):
super(TestListL3ConntrackHelper, self).setUp()
attrs = {'router_id': self.router.id}
ct_helpers = (
network_fakes.FakeL3ConntrackHelper.create_l3_conntrack_helpers(
- attrs, count=3))
+ attrs, count=3
+ )
+ )
self.columns = (
'ID',
'Router ID',
@@ -171,24 +175,24 @@ class TestListL3ConntrackHelper(TestConntrackHelper):
)
self.data = []
for ct_helper in ct_helpers:
- self.data.append((
- ct_helper.id,
- ct_helper.router_id,
- ct_helper.helper,
- ct_helper.protocol,
- ct_helper.port,
- ))
- self.network.conntrack_helpers = mock.Mock(
- return_value=ct_helpers)
+ self.data.append(
+ (
+ ct_helper.id,
+ ct_helper.router_id,
+ ct_helper.helper,
+ ct_helper.protocol,
+ ct_helper.port,
+ )
+ )
+ self.network.conntrack_helpers = mock.Mock(return_value=ct_helpers)
# Get the command object to test
- self.cmd = l3_conntrack_helper.ListConntrackHelper(self.app,
- self.namespace)
+ self.cmd = l3_conntrack_helper.ListConntrackHelper(
+ self.app, self.namespace
+ )
def test_conntrack_helpers_list(self):
- arglist = [
- self.router.id
- ]
+ arglist = [self.router.id]
verifylist = [
('router', self.router.id),
]
@@ -196,8 +200,7 @@ class TestListL3ConntrackHelper(TestConntrackHelper):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.conntrack_helpers.assert_called_once_with(
- self.router.id)
+ self.network.conntrack_helpers.assert_called_once_with(self.router.id)
self.assertEqual(self.columns, columns)
list_data = list(data)
self.assertEqual(len(self.data), len(list_data))
@@ -206,18 +209,20 @@ class TestListL3ConntrackHelper(TestConntrackHelper):
class TestSetL3ConntrackHelper(TestConntrackHelper):
-
def setUp(self):
super(TestSetL3ConntrackHelper, self).setUp()
attrs = {'router_id': self.router.id}
self.ct_helper = (
network_fakes.FakeL3ConntrackHelper.create_one_l3_conntrack_helper(
- attrs))
+ attrs
+ )
+ )
self.network.update_conntrack_helper = mock.Mock(return_value=None)
# Get the command object to test
- self.cmd = l3_conntrack_helper.SetConntrackHelper(self.app,
- self.namespace)
+ self.cmd = l3_conntrack_helper.SetConntrackHelper(
+ self.app, self.namespace
+ )
def test_set_nothing(self):
arglist = [
@@ -230,7 +235,7 @@ class TestSetL3ConntrackHelper(TestConntrackHelper):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- result = (self.cmd.take_action(parsed_args))
+ result = self.cmd.take_action(parsed_args)
self.network.update_conntrack_helper.assert_called_once_with(
self.ct_helper.id, self.router.id
@@ -241,7 +246,8 @@ class TestSetL3ConntrackHelper(TestConntrackHelper):
arglist = [
self.router.id,
self.ct_helper.id,
- '--port', '124',
+ '--port',
+ '124',
]
verifylist = [
('router', self.router.id),
@@ -250,7 +256,7 @@ class TestSetL3ConntrackHelper(TestConntrackHelper):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- result = (self.cmd.take_action(parsed_args))
+ result = self.cmd.take_action(parsed_args)
self.network.update_conntrack_helper.assert_called_once_with(
self.ct_helper.id, self.router.id, port=124
@@ -259,42 +265,44 @@ class TestSetL3ConntrackHelper(TestConntrackHelper):
class TestShowL3ConntrackHelper(TestConntrackHelper):
-
def setUp(self):
super(TestShowL3ConntrackHelper, self).setUp()
attrs = {'router_id': self.router.id}
self.ct_helper = (
network_fakes.FakeL3ConntrackHelper.create_one_l3_conntrack_helper(
- attrs))
- self.columns = (
- 'helper',
- 'id',
- 'port',
- 'protocol',
- 'router_id'
+ attrs
+ )
)
+ self.columns = ('helper', 'id', 'port', 'protocol', 'router_id')
self.data = (
self.ct_helper.helper,
self.ct_helper.id,
self.ct_helper.port,
self.ct_helper.protocol,
- self.ct_helper.router_id
+ self.ct_helper.router_id,
)
self.network.get_conntrack_helper = mock.Mock(
- return_value=self.ct_helper)
+ return_value=self.ct_helper
+ )
# Get the command object to test
- self.cmd = l3_conntrack_helper.ShowConntrackHelper(self.app,
- self.namespace)
+ self.cmd = l3_conntrack_helper.ShowConntrackHelper(
+ self.app, self.namespace
+ )
def test_show_no_options(self):
arglist = []
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_show_default_options(self):
arglist = [
@@ -307,7 +315,7 @@ class TestShowL3ConntrackHelper(TestConntrackHelper):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
self.network.get_conntrack_helper.assert_called_once_with(
self.ct_helper.id, self.router.id
diff --git a/openstackclient/tests/unit/network/v2/test_local_ip.py b/openstackclient/tests/unit/network/v2/test_local_ip.py
index be23365e..d5a57545 100644
--- a/openstackclient/tests/unit/network/v2/test_local_ip.py
+++ b/openstackclient/tests/unit/network/v2/test_local_ip.py
@@ -25,7 +25,6 @@ from openstackclient.tests.unit import utils as tests_utils
class TestLocalIP(network_fakes.TestNetworkV2):
-
def setUp(self):
super().setUp()
@@ -44,9 +43,12 @@ class TestCreateLocalIP(TestLocalIP):
port = network_fakes.create_one_port()
# The new local ip created.
new_local_ip = network_fakes.create_one_local_ip(
- attrs={'project_id': project.id,
- 'network_id': local_ip_network.id,
- 'local_port_id': port.id})
+ attrs={
+ 'project_id': project.id,
+ 'network_id': local_ip_network.id,
+ 'local_port_id': port.id,
+ }
+ )
columns = (
'created_at',
@@ -78,11 +80,12 @@ class TestCreateLocalIP(TestLocalIP):
def setUp(self):
super().setUp()
self.network.create_local_ip = mock.Mock(
- return_value=self.new_local_ip)
+ return_value=self.new_local_ip
+ )
self.network.find_network = mock.Mock(
- return_value=self.local_ip_network)
- self.network.find_port = mock.Mock(
- return_value=self.port)
+ return_value=self.local_ip_network
+ )
+ self.network.find_port = mock.Mock(return_value=self.port)
# Get the command object to test
self.cmd = local_ip.CreateLocalIP(self.app, self.namespace)
@@ -92,7 +95,7 @@ class TestCreateLocalIP(TestLocalIP):
def test_create_no_options(self):
parsed_args = self.check_parser(self.cmd, [], [])
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
self.network.create_local_ip.assert_called_once_with(**{})
self.assertEqual(set(self.columns), set(columns))
@@ -100,13 +103,20 @@ class TestCreateLocalIP(TestLocalIP):
def test_create_all_options(self):
arglist = [
- '--project-domain', self.domain.name,
- '--description', self.new_local_ip.description,
- '--name', self.new_local_ip.name,
- '--network', self.new_local_ip.network_id,
- '--local-port', self.new_local_ip.local_port_id,
- '--local-ip-address', '10.0.0.1',
- '--ip-mode', self.new_local_ip.ip_mode,
+ '--project-domain',
+ self.domain.name,
+ '--description',
+ self.new_local_ip.description,
+ '--name',
+ self.new_local_ip.name,
+ '--network',
+ self.new_local_ip.network_id,
+ '--local-port',
+ self.new_local_ip.local_port_id,
+ '--local-ip-address',
+ '10.0.0.1',
+ '--ip-mode',
+ self.new_local_ip.ip_mode,
]
verifylist = [
('project_domain', self.domain.name),
@@ -119,16 +129,18 @@ class TestCreateLocalIP(TestLocalIP):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
-
- self.network.create_local_ip.assert_called_once_with(**{
- 'name': self.new_local_ip.name,
- 'description': self.new_local_ip.description,
- 'network_id': self.new_local_ip.network_id,
- 'local_port_id': self.new_local_ip.local_port_id,
- 'local_ip_address': '10.0.0.1',
- 'ip_mode': self.new_local_ip.ip_mode,
- })
+ columns, data = self.cmd.take_action(parsed_args)
+
+ self.network.create_local_ip.assert_called_once_with(
+ **{
+ 'name': self.new_local_ip.name,
+ 'description': self.new_local_ip.description,
+ 'network_id': self.new_local_ip.network_id,
+ 'local_port_id': self.new_local_ip.local_port_id,
+ 'local_ip_address': '10.0.0.1',
+ 'ip_mode': self.new_local_ip.ip_mode,
+ }
+ )
self.assertEqual(set(self.columns), set(columns))
self.assertCountEqual(self.data, data)
@@ -141,7 +153,8 @@ class TestDeleteLocalIP(TestLocalIP):
super().setUp()
self.network.delete_local_ip = mock.Mock(return_value=None)
self.network.find_local_ip = network_fakes.get_local_ips(
- local_ips=self._local_ips)
+ local_ips=self._local_ips
+ )
# Get the command object to test
self.cmd = local_ip.DeleteLocalIP(self.app, self.namespace)
@@ -158,9 +171,11 @@ class TestDeleteLocalIP(TestLocalIP):
result = self.cmd.take_action(parsed_args)
self.network.find_local_ip.assert_called_once_with(
- self._local_ips[0].name, ignore_missing=False)
+ self._local_ips[0].name, ignore_missing=False
+ )
self.network.delete_local_ip.assert_called_once_with(
- self._local_ips[0])
+ self._local_ips[0]
+ )
self.assertIsNone(result)
def test_multi_local_ips_delete(self):
@@ -187,15 +202,12 @@ class TestDeleteLocalIP(TestLocalIP):
'unexist_local_ip',
]
verifylist = [
- ('local_ip',
- [self._local_ips[0].name, 'unexist_local_ip']),
+ ('local_ip', [self._local_ips[0].name, 'unexist_local_ip']),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
find_mock_result = [self._local_ips[0], exceptions.CommandError]
- self.network.find_local_ip = (
- mock.Mock(side_effect=find_mock_result)
- )
+ self.network.find_local_ip = mock.Mock(side_effect=find_mock_result)
try:
self.cmd.take_action(parsed_args)
@@ -204,9 +216,11 @@ class TestDeleteLocalIP(TestLocalIP):
self.assertEqual('1 of 2 local IPs failed to delete.', str(e))
self.network.find_local_ip.assert_any_call(
- self._local_ips[0].name, ignore_missing=False)
+ self._local_ips[0].name, ignore_missing=False
+ )
self.network.find_local_ip.assert_any_call(
- 'unexist_local_ip', ignore_missing=False)
+ 'unexist_local_ip', ignore_missing=False
+ )
self.network.delete_local_ip.assert_called_once_with(
self._local_ips[0]
)
@@ -214,11 +228,8 @@ class TestDeleteLocalIP(TestLocalIP):
class TestListLocalIP(TestLocalIP):
# The local ip to list up.
- local_ips = (
- network_fakes.create_local_ips(count=3))
- fake_network = network_fakes.create_one_network(
- {'id': 'fake_network_id'}
- )
+ local_ips = network_fakes.create_local_ips(count=3)
+ fake_network = network_fakes.create_one_network({'id': 'fake_network_id'})
columns = (
'ID',
@@ -232,24 +243,23 @@ class TestListLocalIP(TestLocalIP):
)
data = []
for lip in local_ips:
- data.append((
- lip.id,
- lip.name,
- lip.description,
- lip.project_id,
- lip.local_port_id,
- lip.network_id,
- lip.local_ip_address,
- lip.ip_mode,
- ))
+ data.append(
+ (
+ lip.id,
+ lip.name,
+ lip.description,
+ lip.project_id,
+ lip.local_port_id,
+ lip.network_id,
+ lip.local_ip_address,
+ lip.ip_mode,
+ )
+ )
def setUp(self):
super().setUp()
- self.network.local_ips = mock.Mock(
- return_value=self.local_ips)
- self.network.find_network = mock.Mock(
- return_value=self.fake_network
- )
+ self.network.local_ips = mock.Mock(return_value=self.local_ips)
+ self.network.find_network = mock.Mock(return_value=self.fake_network)
# Get the command object to test
self.cmd = local_ip.ListLocalIP(self.app, self.namespace)
@@ -267,7 +277,8 @@ class TestListLocalIP(TestLocalIP):
def test_local_ip_list_name(self):
arglist = [
- '--name', self.local_ips[0].name,
+ '--name',
+ self.local_ips[0].name,
]
verifylist = [
('name', self.local_ips[0].name),
@@ -276,7 +287,8 @@ class TestListLocalIP(TestLocalIP):
columns, data = self.cmd.take_action(parsed_args)
self.network.local_ips.assert_called_once_with(
- **{'name': self.local_ips[0].name})
+ **{'name': self.local_ips[0].name}
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
@@ -284,7 +296,8 @@ class TestListLocalIP(TestLocalIP):
project = identity_fakes_v3.FakeProject.create_one_project()
self.projects_mock.get.return_value = project
arglist = [
- '--project', project.id,
+ '--project',
+ project.id,
]
verifylist = [
('project', project.id),
@@ -293,7 +306,8 @@ class TestListLocalIP(TestLocalIP):
columns, data = self.cmd.take_action(parsed_args)
self.network.local_ips.assert_called_once_with(
- **{'project_id': project.id})
+ **{'project_id': project.id}
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
@@ -301,8 +315,10 @@ class TestListLocalIP(TestLocalIP):
project = identity_fakes_v3.FakeProject.create_one_project()
self.projects_mock.get.return_value = project
arglist = [
- '--project', project.id,
- '--project-domain', project.domain_id,
+ '--project',
+ project.id,
+ '--project-domain',
+ project.domain_id,
]
verifylist = [
('project', project.id),
@@ -318,7 +334,8 @@ class TestListLocalIP(TestLocalIP):
def test_local_ip_list_network(self):
arglist = [
- '--network', 'fake_network_id',
+ '--network',
+ 'fake_network_id',
]
verifylist = [
('network', 'fake_network_id'),
@@ -327,16 +344,19 @@ class TestListLocalIP(TestLocalIP):
columns, data = self.cmd.take_action(parsed_args)
- self.network.local_ips.assert_called_once_with(**{
- 'network_id': 'fake_network_id',
- })
+ self.network.local_ips.assert_called_once_with(
+ **{
+ 'network_id': 'fake_network_id',
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, list(data))
def test_local_ip_list_local_ip_address(self):
arglist = [
- '--local-ip-address', self.local_ips[0].local_ip_address,
+ '--local-ip-address',
+ self.local_ips[0].local_ip_address,
]
verifylist = [
('local_ip_address', self.local_ips[0].local_ip_address),
@@ -345,15 +365,18 @@ class TestListLocalIP(TestLocalIP):
columns, data = self.cmd.take_action(parsed_args)
- self.network.local_ips.assert_called_once_with(**{
- 'local_ip_address': self.local_ips[0].local_ip_address,
- })
+ self.network.local_ips.assert_called_once_with(
+ **{
+ 'local_ip_address': self.local_ips[0].local_ip_address,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, list(data))
def test_local_ip_list_ip_mode(self):
arglist = [
- '--ip-mode', self.local_ips[0].ip_mode,
+ '--ip-mode',
+ self.local_ips[0].ip_mode,
]
verifylist = [
('ip_mode', self.local_ips[0].ip_mode),
@@ -362,9 +385,11 @@ class TestListLocalIP(TestLocalIP):
columns, data = self.cmd.take_action(parsed_args)
- self.network.local_ips.assert_called_once_with(**{
- 'ip_mode': self.local_ips[0].ip_mode,
- })
+ self.network.local_ips.assert_called_once_with(
+ **{
+ 'ip_mode': self.local_ips[0].ip_mode,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, list(data))
@@ -376,14 +401,15 @@ class TestSetLocalIP(TestLocalIP):
def setUp(self):
super().setUp()
self.network.update_local_ip = mock.Mock(return_value=None)
- self.network.find_local_ip = mock.Mock(
- return_value=self._local_ip)
+ self.network.find_local_ip = mock.Mock(return_value=self._local_ip)
# Get the command object to test
self.cmd = local_ip.SetLocalIP(self.app, self.namespace)
def test_set_nothing(self):
- arglist = [self._local_ip.name, ]
+ arglist = [
+ self._local_ip.name,
+ ]
verifylist = [
('local_ip', self._local_ip.name),
]
@@ -396,8 +422,10 @@ class TestSetLocalIP(TestLocalIP):
def test_set_name_and_description(self):
arglist = [
- '--name', 'new_local_ip_name',
- '--description', 'new_local_ip_description',
+ '--name',
+ 'new_local_ip_name',
+ '--description',
+ 'new_local_ip_description',
self._local_ip.name,
]
verifylist = [
@@ -413,7 +441,8 @@ class TestSetLocalIP(TestLocalIP):
'description': 'new_local_ip_description',
}
self.network.update_local_ip.assert_called_with(
- self._local_ip, **attrs)
+ self._local_ip, **attrs
+ )
self.assertIsNone(result)
@@ -449,8 +478,7 @@ class TestShowLocalIP(TestLocalIP):
def setUp(self):
super().setUp()
- self.network.find_local_ip = mock.Mock(
- return_value=self._local_ip)
+ self.network.find_local_ip = mock.Mock(return_value=self._local_ip)
# Get the command object to test
self.cmd = local_ip.ShowLocalIP(self.app, self.namespace)
@@ -460,8 +488,13 @@ class TestShowLocalIP(TestLocalIP):
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_show_all_options(self):
arglist = [
@@ -475,6 +508,7 @@ class TestShowLocalIP(TestLocalIP):
columns, data = self.cmd.take_action(parsed_args)
self.network.find_local_ip.assert_called_once_with(
- self._local_ip.name, ignore_missing=False)
+ self._local_ip.name, ignore_missing=False
+ )
self.assertEqual(set(self.columns), set(columns))
self.assertCountEqual(self.data, list(data))
diff --git a/openstackclient/tests/unit/network/v2/test_local_ip_association.py b/openstackclient/tests/unit/network/v2/test_local_ip_association.py
index 0e453741..ab7341d2 100644
--- a/openstackclient/tests/unit/network/v2/test_local_ip_association.py
+++ b/openstackclient/tests/unit/network/v2/test_local_ip_association.py
@@ -24,7 +24,6 @@ from openstackclient.tests.unit.network.v2 import fakes as network_fakes
class TestLocalIPAssociation(network_fakes.TestNetworkV2):
-
def setUp(self):
super().setUp()
self.network = self.app.client_manager.network
@@ -35,7 +34,6 @@ class TestLocalIPAssociation(network_fakes.TestNetworkV2):
class TestCreateLocalIPAssociation(TestLocalIPAssociation):
-
def setUp(self):
super().setUp()
self.new_local_ip_association = (
@@ -47,15 +45,15 @@ class TestCreateLocalIPAssociation(TestLocalIPAssociation):
)
)
self.network.create_local_ip_association = mock.Mock(
- return_value=self.new_local_ip_association)
-
- self.network.find_local_ip = mock.Mock(
- return_value=self.local_ip
+ return_value=self.new_local_ip_association
)
+ self.network.find_local_ip = mock.Mock(return_value=self.local_ip)
+
# Get the command object to test
self.cmd = local_ip_association.CreateLocalIPAssociation(
- self.app, self.namespace)
+ self.app, self.namespace
+ )
self.columns = (
'local_ip_address',
@@ -83,13 +81,12 @@ class TestCreateLocalIPAssociation(TestLocalIPAssociation):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_local_ip_association.\
- assert_called_once_with(
- self.new_local_ip_association.local_ip_id,
- **{
- 'fixed_port_id':
- self.new_local_ip_association.fixed_port_id,
- })
+ self.network.create_local_ip_association.assert_called_once_with(
+ self.new_local_ip_association.local_ip_id,
+ **{
+ 'fixed_port_id': self.new_local_ip_association.fixed_port_id,
+ }
+ )
self.assertEqual(set(self.columns), set(columns))
self.assertEqual(set(self.data), set(data))
@@ -97,7 +94,8 @@ class TestCreateLocalIPAssociation(TestLocalIPAssociation):
arglist = [
self.new_local_ip_association.local_ip_id,
self.new_local_ip_association.fixed_port_id,
- '--fixed-ip', self.new_local_ip_association.fixed_ip,
+ '--fixed-ip',
+ self.new_local_ip_association.fixed_ip,
]
verifylist = [
('local_ip', self.new_local_ip_association.local_ip_id),
@@ -107,40 +105,35 @@ class TestCreateLocalIPAssociation(TestLocalIPAssociation):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_local_ip_association.\
- assert_called_once_with(
- self.new_local_ip_association.local_ip_id,
- **{
- 'fixed_port_id':
- self.new_local_ip_association.fixed_port_id,
- 'fixed_ip':
- self.new_local_ip_association.fixed_ip,
- })
+ self.network.create_local_ip_association.assert_called_once_with(
+ self.new_local_ip_association.local_ip_id,
+ **{
+ 'fixed_port_id': self.new_local_ip_association.fixed_port_id,
+ 'fixed_ip': self.new_local_ip_association.fixed_ip,
+ }
+ )
self.assertEqual(set(self.columns), set(columns))
self.assertEqual(set(self.data), set(data))
class TestDeleteLocalIPAssociation(TestLocalIPAssociation):
-
def setUp(self):
super().setUp()
self._local_ip_association = (
network_fakes.create_local_ip_associations(
- count=2, attrs={
+ count=2,
+ attrs={
'local_ip_id': self.local_ip.id,
- }
+ },
)
)
- self.network.delete_local_ip_association = mock.Mock(
- return_value=None
- )
+ self.network.delete_local_ip_association = mock.Mock(return_value=None)
- self.network.find_local_ip = mock.Mock(
- return_value=self.local_ip
- )
+ self.network.find_local_ip = mock.Mock(return_value=self.local_ip)
# Get the command object to test
self.cmd = local_ip_association.DeleteLocalIPAssociation(
- self.app, self.namespace)
+ self.app, self.namespace
+ )
def test_local_ip_association_delete(self):
arglist = [
@@ -156,12 +149,11 @@ class TestDeleteLocalIPAssociation(TestLocalIPAssociation):
result = self.cmd.take_action(parsed_args)
- self.network.delete_local_ip_association.\
- assert_called_once_with(
- self.local_ip.id,
- self._local_ip_association[0].fixed_port_id,
- ignore_missing=False
- )
+ self.network.delete_local_ip_association.assert_called_once_with(
+ self.local_ip.id,
+ self._local_ip_association[0].fixed_port_id,
+ ignore_missing=False,
+ )
self.assertIsNone(result)
@@ -185,8 +177,9 @@ class TestDeleteLocalIPAssociation(TestLocalIPAssociation):
calls = []
for a in self._local_ip_association:
- calls.append(call(a.local_ip_id, a.fixed_port_id,
- ignore_missing=False))
+ calls.append(
+ call(a.local_ip_id, a.fixed_port_id, ignore_missing=False)
+ )
self.network.delete_local_ip_association.assert_has_calls(calls)
self.assertIsNone(result)
@@ -199,16 +192,20 @@ class TestDeleteLocalIPAssociation(TestLocalIPAssociation):
]
verifylist = [
('local_ip', self.local_ip.id),
- ('fixed_port_id',
- [self._local_ip_association[0].fixed_port_id,
- 'unexist_fixed_port_id']),
+ (
+ 'fixed_port_id',
+ [
+ self._local_ip_association[0].fixed_port_id,
+ 'unexist_fixed_port_id',
+ ],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
delete_mock_result = [None, exceptions.CommandError]
- self.network.delete_local_ip_association = (
- mock.MagicMock(side_effect=delete_mock_result)
+ self.network.delete_local_ip_association = mock.MagicMock(
+ side_effect=delete_mock_result
)
try:
@@ -216,92 +213,82 @@ class TestDeleteLocalIPAssociation(TestLocalIPAssociation):
self.fail('CommandError should be raised.')
except exceptions.CommandError as e:
self.assertEqual(
- '1 of 2 Local IP Associations failed to delete.',
- str(e)
+ '1 of 2 Local IP Associations failed to delete.', str(e)
)
- self.network.delete_local_ip_association.\
- assert_any_call(
- self.local_ip.id,
- 'unexist_fixed_port_id',
- ignore_missing=False
- )
- self.network.delete_local_ip_association.\
- assert_any_call(
- self.local_ip.id,
- self._local_ip_association[0].fixed_port_id,
- ignore_missing=False
- )
+ self.network.delete_local_ip_association.assert_any_call(
+ self.local_ip.id, 'unexist_fixed_port_id', ignore_missing=False
+ )
+ self.network.delete_local_ip_association.assert_any_call(
+ self.local_ip.id,
+ self._local_ip_association[0].fixed_port_id,
+ ignore_missing=False,
+ )
class TestListLocalIPAssociation(TestLocalIPAssociation):
-
columns = (
'Local IP ID',
'Local IP Address',
'Fixed port ID',
'Fixed IP',
- 'Host'
+ 'Host',
)
def setUp(self):
super().setUp()
self.local_ip_associations = (
network_fakes.create_local_ip_associations(
- count=3, attrs={
+ count=3,
+ attrs={
'local_ip_id': self.local_ip.id,
'fixed_port_id': self.fixed_port.id,
- }
+ },
)
)
self.data = []
for lip_assoc in self.local_ip_associations:
- self.data.append((
- lip_assoc.local_ip_id,
- lip_assoc.local_ip_address,
- lip_assoc.fixed_port_id,
- lip_assoc.fixed_ip,
- lip_assoc.host,
- ))
+ self.data.append(
+ (
+ lip_assoc.local_ip_id,
+ lip_assoc.local_ip_address,
+ lip_assoc.fixed_port_id,
+ lip_assoc.fixed_ip,
+ lip_assoc.host,
+ )
+ )
self.network.local_ip_associations = mock.Mock(
return_value=self.local_ip_associations
)
- self.network.find_local_ip = mock.Mock(
- return_value=self.local_ip
- )
- self.network.find_port = mock.Mock(
- return_value=self.fixed_port
- )
+ self.network.find_local_ip = mock.Mock(return_value=self.local_ip)
+ self.network.find_port = mock.Mock(return_value=self.fixed_port)
# Get the command object to test
self.cmd = local_ip_association.ListLocalIPAssociation(
- self.app,
- self.namespace
+ self.app, self.namespace
)
def test_local_ip_association_list(self):
- arglist = [
- self.local_ip.id
- ]
- verifylist = [
- ('local_ip', self.local_ip.id)
- ]
+ arglist = [self.local_ip.id]
+ verifylist = [('local_ip', self.local_ip.id)]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
self.network.local_ip_associations.assert_called_once_with(
- self.local_ip,
- **{}
+ self.local_ip, **{}
)
self.assertEqual(set(self.columns), set(columns))
self.assertEqual(set(self.data), set(list(data)))
def test_local_ip_association_list_all_options(self):
arglist = [
- '--fixed-port', self.local_ip_associations[0].fixed_port_id,
- '--fixed-ip', self.local_ip_associations[0].fixed_ip,
- '--host', self.local_ip_associations[0].host,
- self.local_ip_associations[0].local_ip_id
+ '--fixed-port',
+ self.local_ip_associations[0].fixed_port_id,
+ '--fixed-ip',
+ self.local_ip_associations[0].fixed_ip,
+ '--host',
+ self.local_ip_associations[0].host,
+ self.local_ip_associations[0].local_ip_id,
]
verifylist = [
@@ -321,8 +308,7 @@ class TestListLocalIPAssociation(TestLocalIPAssociation):
}
self.network.local_ip_associations.assert_called_once_with(
- self.local_ip,
- **attrs
+ self.local_ip, **attrs
)
self.assertEqual(set(self.columns), set(columns))
self.assertEqual(set(self.data), set(list(data)))
diff --git a/openstackclient/tests/unit/network/v2/test_ndp_proxy.py b/openstackclient/tests/unit/network/v2/test_ndp_proxy.py
index 48c5deb2..04a9eb61 100644
--- a/openstackclient/tests/unit/network/v2/test_ndp_proxy.py
+++ b/openstackclient/tests/unit/network/v2/test_ndp_proxy.py
@@ -23,7 +23,6 @@ from openstackclient.tests.unit import utils as tests_utils
class TestNDPProxy(network_fakes.TestNetworkV2):
-
def setUp(self):
super(TestNDPProxy, self).setUp()
# Get a shortcut to the ProjectManager Mock
@@ -33,7 +32,8 @@ class TestNDPProxy(network_fakes.TestNetworkV2):
# Get a shortcut to the network client
self.network = self.app.client_manager.network
self.router = network_fakes.FakeRouter.create_one_router(
- {'id': 'fake-router-id'})
+ {'id': 'fake-router-id'}
+ )
self.network.find_router = mock.Mock(return_value=self.router)
self.port = network_fakes.create_one_port()
self.network.find_port = mock.Mock(return_value=self.port)
@@ -43,9 +43,7 @@ class TestCreateNDPProxy(TestNDPProxy):
def setUp(self):
super(TestCreateNDPProxy, self).setUp()
attrs = {'router_id': self.router.id, 'port_id': self.port.id}
- self.ndp_proxy = (
- network_fakes.create_one_ndp_proxy(
- attrs))
+ self.ndp_proxy = network_fakes.create_one_ndp_proxy(attrs)
self.columns = (
'created_at',
'description',
@@ -56,7 +54,8 @@ class TestCreateNDPProxy(TestNDPProxy):
'project_id',
'revision_number',
'router_id',
- 'updated_at')
+ 'updated_at',
+ )
self.data = (
self.ndp_proxy.created_at,
@@ -68,10 +67,9 @@ class TestCreateNDPProxy(TestNDPProxy):
self.ndp_proxy.project_id,
self.ndp_proxy.revision_number,
self.ndp_proxy.router_id,
- self.ndp_proxy.updated_at
+ self.ndp_proxy.updated_at,
)
- self.network.create_ndp_proxy = mock.Mock(
- return_value=self.ndp_proxy)
+ self.network.create_ndp_proxy = mock.Mock(return_value=self.ndp_proxy)
# Get the command object to test
self.cmd = ndp_proxy.CreateNDPProxy(self.app, self.namespace)
@@ -81,16 +79,25 @@ class TestCreateNDPProxy(TestNDPProxy):
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_create_all_options(self):
arglist = [
self.ndp_proxy.router_id,
- '--name', self.ndp_proxy.name,
- '--port', self.ndp_proxy.port_id,
- '--ip-address', self.ndp_proxy.ip_address,
- '--description', self.ndp_proxy.description,
+ '--name',
+ self.ndp_proxy.name,
+ '--port',
+ self.ndp_proxy.port_id,
+ '--ip-address',
+ self.ndp_proxy.ip_address,
+ '--description',
+ self.ndp_proxy.description,
]
verifylist = [
('name', self.ndp_proxy.name),
@@ -103,38 +110,33 @@ class TestCreateNDPProxy(TestNDPProxy):
columns, data = self.cmd.take_action(parsed_args)
self.network.create_ndp_proxy.assert_called_once_with(
- **{'name': self.ndp_proxy.name,
- 'router_id': self.ndp_proxy.router_id,
- 'ip_address': self.ndp_proxy.ip_address,
- 'port_id': self.ndp_proxy.port_id,
- 'description': self.ndp_proxy.description})
+ **{
+ 'name': self.ndp_proxy.name,
+ 'router_id': self.ndp_proxy.router_id,
+ 'ip_address': self.ndp_proxy.ip_address,
+ 'port_id': self.ndp_proxy.port_id,
+ 'description': self.ndp_proxy.description,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
class TestDeleteNDPProxy(TestNDPProxy):
-
def setUp(self):
super(TestDeleteNDPProxy, self).setUp()
attrs = {'router_id': self.router.id, 'port_id': self.port.id}
- self.ndp_proxies = (
- network_fakes.create_ndp_proxies(attrs))
+ self.ndp_proxies = network_fakes.create_ndp_proxies(attrs)
self.ndp_proxy = self.ndp_proxies[0]
- self.network.delete_ndp_proxy = mock.Mock(
- return_value=None)
- self.network.find_ndp_proxy = mock.Mock(
- return_value=self.ndp_proxy)
+ self.network.delete_ndp_proxy = mock.Mock(return_value=None)
+ self.network.find_ndp_proxy = mock.Mock(return_value=self.ndp_proxy)
# Get the command object to test
self.cmd = ndp_proxy.DeleteNDPProxy(self.app, self.namespace)
def test_delete(self):
- arglist = [
- self.ndp_proxy.id
- ]
- verifylist = [
- ('ndp_proxy', [self.ndp_proxy.id])
- ]
+ arglist = [self.ndp_proxy.id]
+ verifylist = [('ndp_proxy', [self.ndp_proxy.id])]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.network.delete_ndp_proxy.assert_called_once_with(self.ndp_proxy)
@@ -144,15 +146,12 @@ class TestDeleteNDPProxy(TestNDPProxy):
arglist = [
self.ndp_proxy.id,
]
- verifylist = [
- ('ndp_proxy', [self.ndp_proxy.id])
- ]
- self.network.delete_ndp_proxy.side_effect = Exception(
- 'Error message')
+ verifylist = [('ndp_proxy', [self.ndp_proxy.id])]
+ self.network.delete_ndp_proxy.side_effect = Exception('Error message')
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
self.assertRaises(
- exceptions.CommandError,
- self.cmd.take_action, parsed_args)
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
def test_multi_ndp_proxies_delete(self):
arglist = []
@@ -170,17 +169,16 @@ class TestDeleteNDPProxy(TestNDPProxy):
result = self.cmd.take_action(parsed_args)
self.network.delete_ndp_proxy.assert_has_calls(
- [call(self.ndp_proxy), call(self.ndp_proxy)])
+ [call(self.ndp_proxy), call(self.ndp_proxy)]
+ )
self.assertIsNone(result)
class TestListNDPProxy(TestNDPProxy):
-
def setUp(self):
super(TestListNDPProxy, self).setUp()
attrs = {'router_id': self.router.id, 'port_id': self.port.id}
- ndp_proxies = (
- network_fakes.create_ndp_proxies(attrs, count=3))
+ ndp_proxies = network_fakes.create_ndp_proxies(attrs, count=3)
self.columns = (
'ID',
'Name',
@@ -190,16 +188,17 @@ class TestListNDPProxy(TestNDPProxy):
)
self.data = []
for np in ndp_proxies:
- self.data.append((
- np.id,
- np.name,
- np.router_id,
- np.ip_address,
- np.project_id,
- ))
-
- self.network.ndp_proxies = mock.Mock(
- return_value=ndp_proxies)
+ self.data.append(
+ (
+ np.id,
+ np.name,
+ np.router_id,
+ np.ip_address,
+ np.project_id,
+ )
+ )
+
+ self.network.ndp_proxies = mock.Mock(return_value=ndp_proxies)
# Get the command object to test
self.cmd = ndp_proxy.ListNDPProxy(self.app, self.namespace)
@@ -220,73 +219,73 @@ class TestListNDPProxy(TestNDPProxy):
def test_ndp_proxy_list_router(self):
arglist = [
- '--router', 'fake-router-name',
+ '--router',
+ 'fake-router-name',
]
- verifylist = [
- ('router', 'fake-router-name')
- ]
+ verifylist = [('router', 'fake-router-name')]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.ndp_proxies.assert_called_once_with(**{
- 'router_id': 'fake-router-id'})
+ self.network.ndp_proxies.assert_called_once_with(
+ **{'router_id': 'fake-router-id'}
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
def test_ndp_proxy_list_port(self):
arglist = [
- '--port', self.port.id,
+ '--port',
+ self.port.id,
]
- verifylist = [
- ('port', self.port.id)
- ]
+ verifylist = [('port', self.port.id)]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.ndp_proxies.assert_called_once_with(**{
- 'port_id': self.port.id})
+ self.network.ndp_proxies.assert_called_once_with(
+ **{'port_id': self.port.id}
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
def test_ndp_proxy_list_name(self):
arglist = [
- '--name', 'fake-ndp-proxy-name',
+ '--name',
+ 'fake-ndp-proxy-name',
]
- verifylist = [
- ('name', 'fake-ndp-proxy-name')
- ]
+ verifylist = [('name', 'fake-ndp-proxy-name')]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.ndp_proxies.assert_called_once_with(**{
- 'name': 'fake-ndp-proxy-name'})
+ self.network.ndp_proxies.assert_called_once_with(
+ **{'name': 'fake-ndp-proxy-name'}
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
def test_ndp_proxy_list_ip_address(self):
arglist = [
- '--ip-address', '2001::1:2',
+ '--ip-address',
+ '2001::1:2',
]
- verifylist = [
- ('ip_address', '2001::1:2')
- ]
+ verifylist = [('ip_address', '2001::1:2')]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.ndp_proxies.assert_called_once_with(**{
- 'ip_address': '2001::1:2'})
+ self.network.ndp_proxies.assert_called_once_with(
+ **{'ip_address': '2001::1:2'}
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
@@ -294,7 +293,8 @@ class TestListNDPProxy(TestNDPProxy):
project = identity_fakes_v3.FakeProject.create_one_project()
self.projects_mock.get.return_value = project
arglist = [
- '--project', project.id,
+ '--project',
+ project.id,
]
verifylist = [
('project', project.id),
@@ -303,7 +303,8 @@ class TestListNDPProxy(TestNDPProxy):
columns, data = self.cmd.take_action(parsed_args)
self.network.ndp_proxies.assert_called_once_with(
- **{'project_id': project.id})
+ **{'project_id': project.id}
+ )
self.assertEqual(self.columns, columns)
self.assertItemsEqual(self.data, list(data))
@@ -311,8 +312,10 @@ class TestListNDPProxy(TestNDPProxy):
project = identity_fakes_v3.FakeProject.create_one_project()
self.projects_mock.get.return_value = project
arglist = [
- '--project', project.id,
- '--project-domain', project.domain_id,
+ '--project',
+ project.id,
+ '--project-domain',
+ project.domain_id,
]
verifylist = [
('project', project.id),
@@ -328,15 +331,12 @@ class TestListNDPProxy(TestNDPProxy):
class TestSetNDPProxy(TestNDPProxy):
-
def setUp(self):
super(TestSetNDPProxy, self).setUp()
attrs = {'router_id': self.router.id, 'port_id': self.port.id}
- self.ndp_proxy = (
- network_fakes.create_one_ndp_proxy(attrs))
+ self.ndp_proxy = network_fakes.create_one_ndp_proxy(attrs)
self.network.update_ndp_proxy = mock.Mock(return_value=None)
- self.network.find_ndp_proxy = mock.Mock(
- return_value=self.ndp_proxy)
+ self.network.find_ndp_proxy = mock.Mock(return_value=self.ndp_proxy)
# Get the command object to test
self.cmd = ndp_proxy.SetNDPProxy(self.app, self.namespace)
@@ -350,16 +350,16 @@ class TestSetNDPProxy(TestNDPProxy):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- result = (self.cmd.take_action(parsed_args))
+ result = self.cmd.take_action(parsed_args)
- self.network.update_ndp_proxy.assert_called_once_with(
- self.ndp_proxy)
+ self.network.update_ndp_proxy.assert_called_once_with(self.ndp_proxy)
self.assertIsNone(result)
def test_set_name(self):
arglist = [
self.ndp_proxy.id,
- '--name', 'fake-name',
+ '--name',
+ 'fake-name',
]
verifylist = [
('ndp_proxy', self.ndp_proxy.id),
@@ -367,16 +367,18 @@ class TestSetNDPProxy(TestNDPProxy):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- result = (self.cmd.take_action(parsed_args))
+ result = self.cmd.take_action(parsed_args)
self.network.update_ndp_proxy.assert_called_once_with(
- self.ndp_proxy, name='fake-name')
+ self.ndp_proxy, name='fake-name'
+ )
self.assertIsNone(result)
def test_set_description(self):
arglist = [
self.ndp_proxy.id,
- '--description', 'balala',
+ '--description',
+ 'balala',
]
verifylist = [
('ndp_proxy', self.ndp_proxy.id),
@@ -384,20 +386,19 @@ class TestSetNDPProxy(TestNDPProxy):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- result = (self.cmd.take_action(parsed_args))
+ result = self.cmd.take_action(parsed_args)
self.network.update_ndp_proxy.assert_called_once_with(
- self.ndp_proxy, description='balala')
+ self.ndp_proxy, description='balala'
+ )
self.assertIsNone(result)
class TestShowNDPProxy(TestNDPProxy):
-
def setUp(self):
super(TestShowNDPProxy, self).setUp()
attrs = {'router_id': self.router.id, 'port_id': self.port.id}
- self.ndp_proxy = (
- network_fakes.create_one_ndp_proxy(attrs))
+ self.ndp_proxy = network_fakes.create_one_ndp_proxy(attrs)
self.columns = (
'created_at',
@@ -409,7 +410,8 @@ class TestShowNDPProxy(TestNDPProxy):
'project_id',
'revision_number',
'router_id',
- 'updated_at')
+ 'updated_at',
+ )
self.data = (
self.ndp_proxy.created_at,
@@ -421,7 +423,7 @@ class TestShowNDPProxy(TestNDPProxy):
self.ndp_proxy.project_id,
self.ndp_proxy.revision_number,
self.ndp_proxy.router_id,
- self.ndp_proxy.updated_at
+ self.ndp_proxy.updated_at,
)
self.network.get_ndp_proxy = mock.Mock(return_value=self.ndp_proxy)
self.network.find_ndp_proxy = mock.Mock(return_value=self.ndp_proxy)
@@ -434,8 +436,13 @@ class TestShowNDPProxy(TestNDPProxy):
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_show_default_options(self):
arglist = [
@@ -446,9 +453,10 @@ class TestShowNDPProxy(TestNDPProxy):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
self.network.find_ndp_proxy.assert_called_once_with(
- self.ndp_proxy.id, ignore_missing=False)
+ self.ndp_proxy.id, ignore_missing=False
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
diff --git a/openstackclient/tests/unit/network/v2/test_network.py b/openstackclient/tests/unit/network/v2/test_network.py
index 6adb9e16..76b33a55 100644
--- a/openstackclient/tests/unit/network/v2/test_network.py
+++ b/openstackclient/tests/unit/network/v2/test_network.py
@@ -29,7 +29,6 @@ from openstackclient.tests.unit import utils as tests_utils
# Tests for Neutron network
#
class TestNetwork(network_fakes.TestNetworkV2):
-
def setUp(self):
super(TestNetwork, self).setUp()
@@ -42,7 +41,6 @@ class TestNetwork(network_fakes.TestNetworkV2):
class TestCreateNetworkIdentityV3(TestNetwork):
-
project = identity_fakes_v3.FakeProject.create_one_project()
domain = identity_fakes_v3.FakeDomain.create_one_domain()
# The new network created.
@@ -52,8 +50,9 @@ class TestCreateNetworkIdentityV3(TestNetwork):
'availability_zone_hints': ["nova"],
}
)
- qos_policy = (network_fakes.FakeNetworkQosPolicy.
- create_one_qos_policy(attrs={'id': _network.qos_policy_id}))
+ qos_policy = network_fakes.FakeNetworkQosPolicy.create_one_qos_policy(
+ attrs={'id': _network.qos_policy_id}
+ )
columns = (
'admin_state_up',
@@ -132,8 +131,13 @@ class TestCreateNetworkIdentityV3(TestNetwork):
arglist = []
verifylist = []
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_create_default_options(self):
arglist = [
@@ -150,10 +154,12 @@ class TestCreateNetworkIdentityV3(TestNetwork):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_network.assert_called_once_with(**{
- 'admin_state_up': True,
- 'name': self._network.name,
- })
+ self.network.create_network.assert_called_once_with(
+ **{
+ 'admin_state_up': True,
+ 'name': self._network.name,
+ }
+ )
self.assertFalse(self.network.set_tags.called)
self.assertEqual(set(self.columns), set(columns))
self.assertCountEqual(self.data, data)
@@ -162,19 +168,30 @@ class TestCreateNetworkIdentityV3(TestNetwork):
arglist = [
"--disable",
"--share",
- "--description", self._network.description,
- "--mtu", str(self._network.mtu),
- "--project", self.project.name,
- "--project-domain", self.domain.name,
- "--availability-zone-hint", "nova",
- "--external", "--default",
- "--provider-network-type", "vlan",
- "--provider-physical-network", "physnet1",
- "--provider-segment", "400",
- "--qos-policy", self.qos_policy.id,
+ "--description",
+ self._network.description,
+ "--mtu",
+ str(self._network.mtu),
+ "--project",
+ self.project.name,
+ "--project-domain",
+ self.domain.name,
+ "--availability-zone-hint",
+ "nova",
+ "--external",
+ "--default",
+ "--provider-network-type",
+ "vlan",
+ "--provider-physical-network",
+ "physnet1",
+ "--provider-segment",
+ "400",
+ "--qos-policy",
+ self.qos_policy.id,
"--transparent-vlan",
"--enable-port-security",
- "--dns-domain", "example.org.",
+ "--dns-domain",
+ "example.org.",
self._network.name,
]
verifylist = [
@@ -198,26 +215,28 @@ class TestCreateNetworkIdentityV3(TestNetwork):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_network.assert_called_once_with(**{
- 'admin_state_up': False,
- 'availability_zone_hints': ["nova"],
- 'name': self._network.name,
- 'shared': True,
- 'description': self._network.description,
- 'mtu': str(self._network.mtu),
- 'project_id': self.project.id,
- 'is_default': True,
- 'router:external': True,
- 'provider:network_type': 'vlan',
- 'provider:physical_network': 'physnet1',
- 'provider:segmentation_id': '400',
- 'qos_policy_id': self.qos_policy.id,
- 'vlan_transparent': True,
- 'port_security_enabled': True,
- 'dns_domain': 'example.org.',
- })
+ self.network.create_network.assert_called_once_with(
+ **{
+ 'admin_state_up': False,
+ 'availability_zone_hints': ["nova"],
+ 'name': self._network.name,
+ 'shared': True,
+ 'description': self._network.description,
+ 'mtu': str(self._network.mtu),
+ 'project_id': self.project.id,
+ 'is_default': True,
+ 'router:external': True,
+ 'provider:network_type': 'vlan',
+ 'provider:physical_network': 'physnet1',
+ 'provider:segmentation_id': '400',
+ 'qos_policy_id': self.qos_policy.id,
+ 'vlan_transparent': True,
+ 'port_security_enabled': True,
+ 'dns_domain': 'example.org.',
+ }
+ )
self.assertEqual(set(self.columns), set(columns))
self.assertCountEqual(self.data, data)
@@ -239,12 +258,14 @@ class TestCreateNetworkIdentityV3(TestNetwork):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_network.assert_called_once_with(**{
- 'admin_state_up': True,
- 'name': self._network.name,
- 'shared': False,
- 'port_security_enabled': False,
- })
+ self.network.create_network.assert_called_once_with(
+ **{
+ 'admin_state_up': True,
+ 'name': self._network.name,
+ 'shared': False,
+ 'port_security_enabled': False,
+ }
+ )
self.assertEqual(set(self.columns), set(columns))
self.assertCountEqual(self.data, data)
@@ -267,14 +288,15 @@ class TestCreateNetworkIdentityV3(TestNetwork):
verifylist.append(('no_tag', True))
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
self.network.create_network.assert_called_once_with(
- name=self._network.name, admin_state_up=True)
+ name=self._network.name, admin_state_up=True
+ )
if add_tags:
self.network.set_tags.assert_called_once_with(
- self._network,
- tests_utils.CompareBySet(['red', 'blue']))
+ self._network, tests_utils.CompareBySet(['red', 'blue'])
+ )
else:
self.assertFalse(self.network.set_tags.called)
self.assertEqual(set(self.columns), set(columns))
@@ -288,7 +310,6 @@ class TestCreateNetworkIdentityV3(TestNetwork):
class TestCreateNetworkIdentityV2(TestNetwork):
-
project = identity_fakes_v2.FakeProject.create_one_project()
# The new network created.
_network = network_fakes.create_one_network(
@@ -379,7 +400,8 @@ class TestCreateNetworkIdentityV2(TestNetwork):
def test_create_with_project_identityv2(self):
arglist = [
- "--project", self.project.name,
+ "--project",
+ self.project.name,
self._network.name,
]
verifylist = [
@@ -393,19 +415,23 @@ class TestCreateNetworkIdentityV2(TestNetwork):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_network.assert_called_once_with(**{
- 'admin_state_up': True,
- 'name': self._network.name,
- 'project_id': self.project.id,
- })
+ self.network.create_network.assert_called_once_with(
+ **{
+ 'admin_state_up': True,
+ 'name': self._network.name,
+ 'project_id': self.project.id,
+ }
+ )
self.assertFalse(self.network.set_tags.called)
self.assertEqual(set(self.columns), set(columns))
self.assertCountEqual(self.data, data)
def test_create_with_domain_identityv2(self):
arglist = [
- "--project", self.project.name,
- "--project-domain", "domain-name",
+ "--project",
+ self.project.name,
+ "--project-domain",
+ "domain-name",
self._network.name,
]
verifylist = [
@@ -427,7 +453,6 @@ class TestCreateNetworkIdentityV2(TestNetwork):
class TestDeleteNetwork(TestNetwork):
-
def setUp(self):
super(TestDeleteNetwork, self).setUp()
@@ -437,7 +462,8 @@ class TestDeleteNetwork(TestNetwork):
self.network.delete_network = mock.Mock(return_value=None)
self.network.find_network = network_fakes.get_networks(
- networks=self._networks)
+ networks=self._networks
+ )
# Get the command object to test
self.cmd = network.DeleteNetwork(self.app, self.namespace)
@@ -499,8 +525,9 @@ class TestDeleteNetwork(TestNetwork):
]
self.network.delete_network = mock.Mock(side_effect=ret_delete)
- self.assertRaises(exceptions.CommandError, self.cmd.take_action,
- parsed_args)
+ self.assertRaises(
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
# The second call of find_network() should fail. So delete_network()
# was only called twice.
@@ -512,7 +539,6 @@ class TestDeleteNetwork(TestNetwork):
class TestListNetwork(TestNetwork):
-
# The networks going to be listed up.
_network = network_fakes.create_networks(count=3)
@@ -537,27 +563,31 @@ class TestListNetwork(TestNetwork):
data = []
for net in _network:
- data.append((
- net.id,
- net.name,
- format_columns.ListColumn(net.subnet_ids),
- ))
+ data.append(
+ (
+ net.id,
+ net.name,
+ format_columns.ListColumn(net.subnet_ids),
+ )
+ )
data_long = []
for net in _network:
- data_long.append((
- net.id,
- net.name,
- net.status,
- net.project_id,
- network.AdminStateColumn(net.is_admin_state_up),
- net.is_shared,
- format_columns.ListColumn(net.subnet_ids),
- net.provider_network_type,
- network.RouterExternalColumn(net.is_router_external),
- format_columns.ListColumn(net.availability_zones),
- format_columns.ListColumn(net.tags),
- ))
+ data_long.append(
+ (
+ net.id,
+ net.name,
+ net.status,
+ net.project_id,
+ network.AdminStateColumn(net.is_admin_state_up),
+ net.is_shared,
+ format_columns.ListColumn(net.subnet_ids),
+ net.provider_network_type,
+ network.RouterExternalColumn(net.is_router_external),
+ format_columns.ListColumn(net.availability_zones),
+ format_columns.ListColumn(net.tags),
+ )
+ )
def setUp(self):
super(TestListNetwork, self).setUp()
@@ -567,12 +597,12 @@ class TestListNetwork(TestNetwork):
self.network.networks = mock.Mock(return_value=self._network)
- self._agent = \
- network_fakes.create_one_network_agent()
+ self._agent = network_fakes.create_one_network_agent()
self.network.get_agent = mock.Mock(return_value=self._agent)
self.network.dhcp_agent_hosting_networks = mock.Mock(
- return_value=self._network)
+ return_value=self._network
+ )
# TestListTagMixin
self._tag_list_resource_mock = self.network.networks
@@ -654,7 +684,8 @@ class TestListNetwork(TestNetwork):
def test_list_name(self):
test_name = "fakename"
arglist = [
- '--name', test_name,
+ '--name',
+ test_name,
]
verifylist = [
('external', False),
@@ -664,9 +695,7 @@ class TestListNetwork(TestNetwork):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.networks.assert_called_once_with(
- **{'name': test_name}
- )
+ self.network.networks.assert_called_once_with(**{'name': test_name})
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
@@ -692,11 +721,7 @@ class TestListNetwork(TestNetwork):
arglist = [
'--disable',
]
- verifylist = [
- ('long', False),
- ('external', False),
- ('disable', True)
- ]
+ verifylist = [('long', False), ('external', False), ('disable', True)]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
@@ -710,7 +735,8 @@ class TestListNetwork(TestNetwork):
project = identity_fakes_v3.FakeProject.create_one_project()
self.projects_mock.get.return_value = project
arglist = [
- '--project', project.id,
+ '--project',
+ project.id,
]
verifylist = [
('project', project.id),
@@ -729,8 +755,10 @@ class TestListNetwork(TestNetwork):
project = identity_fakes_v3.FakeProject.create_one_project()
self.projects_mock.get.return_value = project
arglist = [
- '--project', project.id,
- '--project-domain', project.domain_id,
+ '--project',
+ project.id,
+ '--project-domain',
+ project.domain_id,
]
verifylist = [
('project', project.id),
@@ -782,7 +810,8 @@ class TestListNetwork(TestNetwork):
choices = ['ACTIVE', 'BUILD', 'DOWN', 'ERROR']
test_status = random.choice(choices)
arglist = [
- '--status', test_status,
+ '--status',
+ test_status,
]
verifylist = [
('long', False),
@@ -800,7 +829,8 @@ class TestListNetwork(TestNetwork):
def test_network_list_provider_network_type(self):
network_type = self._network[0].provider_network_type
arglist = [
- '--provider-network-type', network_type,
+ '--provider-network-type',
+ network_type,
]
verifylist = [
('provider_network_type', network_type),
@@ -809,8 +839,10 @@ class TestListNetwork(TestNetwork):
columns, data = self.cmd.take_action(parsed_args)
self.network.networks.assert_called_once_with(
- **{'provider:network_type': network_type,
- 'provider_network_type': network_type}
+ **{
+ 'provider:network_type': network_type,
+ 'provider_network_type': network_type,
+ }
)
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
@@ -818,7 +850,8 @@ class TestListNetwork(TestNetwork):
def test_network_list_provider_physical_network(self):
physical_network = self._network[0].provider_physical_network
arglist = [
- '--provider-physical-network', physical_network,
+ '--provider-physical-network',
+ physical_network,
]
verifylist = [
('physical_network', physical_network),
@@ -827,8 +860,10 @@ class TestListNetwork(TestNetwork):
columns, data = self.cmd.take_action(parsed_args)
self.network.networks.assert_called_once_with(
- **{'provider:physical_network': physical_network,
- 'provider_physical_network': physical_network}
+ **{
+ 'provider:physical_network': physical_network,
+ 'provider_physical_network': physical_network,
+ }
)
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
@@ -836,7 +871,8 @@ class TestListNetwork(TestNetwork):
def test_network_list_provider_segment(self):
segmentation_id = self._network[0].provider_segmentation_id
arglist = [
- '--provider-segment', segmentation_id,
+ '--provider-segment',
+ segmentation_id,
]
verifylist = [
('segmentation_id', segmentation_id),
@@ -845,16 +881,16 @@ class TestListNetwork(TestNetwork):
columns, data = self.cmd.take_action(parsed_args)
self.network.networks.assert_called_once_with(
- **{'provider:segmentation_id': segmentation_id,
- 'provider_segmentation_id': segmentation_id}
+ **{
+ 'provider:segmentation_id': segmentation_id,
+ 'provider_segmentation_id': segmentation_id,
+ }
)
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
def test_network_list_dhcp_agent(self):
- arglist = [
- '--agent', self._agent.id
- ]
+ arglist = ['--agent', self._agent.id]
verifylist = [
('agent_id', self._agent.id),
]
@@ -864,17 +900,22 @@ class TestListNetwork(TestNetwork):
columns, data = self.cmd.take_action(parsed_args)
self.network.dhcp_agent_hosting_networks.assert_called_once_with(
- self._agent)
+ self._agent
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(list(data), list(self.data))
def test_list_with_tag_options(self):
arglist = [
- '--tags', 'red,blue',
- '--any-tags', 'red,green',
- '--not-tags', 'orange,yellow',
- '--not-any-tags', 'black,white',
+ '--tags',
+ 'red,blue',
+ '--any-tags',
+ 'red,green',
+ '--not-tags',
+ 'orange,yellow',
+ '--not-any-tags',
+ 'black,white',
]
verifylist = [
('tags', ['red', 'blue']),
@@ -886,22 +927,23 @@ class TestListNetwork(TestNetwork):
columns, data = self.cmd.take_action(parsed_args)
self.network.networks.assert_called_once_with(
- **{'tags': 'red,blue',
- 'any_tags': 'red,green',
- 'not_tags': 'orange,yellow',
- 'not_any_tags': 'black,white'}
+ **{
+ 'tags': 'red,blue',
+ 'any_tags': 'red,green',
+ 'not_tags': 'orange,yellow',
+ 'not_any_tags': 'black,white',
+ }
)
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
class TestSetNetwork(TestNetwork):
-
# The network to set.
- _network = network_fakes.create_one_network(
- {'tags': ['green', 'red']})
- qos_policy = (network_fakes.FakeNetworkQosPolicy.
- create_one_qos_policy(attrs={'id': _network.qos_policy_id}))
+ _network = network_fakes.create_one_network({'tags': ['green', 'red']})
+ qos_policy = network_fakes.FakeNetworkQosPolicy.create_one_qos_policy(
+ attrs={'id': _network.qos_policy_id}
+ )
def setUp(self):
super(TestSetNetwork, self).setUp()
@@ -919,17 +961,24 @@ class TestSetNetwork(TestNetwork):
arglist = [
self._network.name,
'--enable',
- '--name', 'noob',
+ '--name',
+ 'noob',
'--share',
- '--description', self._network.description,
- '--dns-domain', 'example.org.',
+ '--description',
+ self._network.description,
+ '--dns-domain',
+ 'example.org.',
'--external',
'--default',
- '--provider-network-type', 'vlan',
- '--provider-physical-network', 'physnet1',
- '--provider-segment', '400',
+ '--provider-network-type',
+ 'vlan',
+ '--provider-physical-network',
+ 'physnet1',
+ '--provider-segment',
+ '400',
'--enable-port-security',
- '--qos-policy', self.qos_policy.name,
+ '--qos-policy',
+ self.qos_policy.name,
]
verifylist = [
('network', self._network.name),
@@ -965,7 +1014,8 @@ class TestSetNetwork(TestNetwork):
'dns_domain': 'example.org.',
}
self.network.update_network.assert_called_once_with(
- self._network, **attrs)
+ self._network, **attrs
+ )
self.assertIsNone(result)
def test_set_that(self):
@@ -997,12 +1047,17 @@ class TestSetNetwork(TestNetwork):
'qos_policy_id': None,
}
self.network.update_network.assert_called_once_with(
- self._network, **attrs)
+ self._network, **attrs
+ )
self.assertIsNone(result)
def test_set_nothing(self):
- arglist = [self._network.name, ]
- verifylist = [('network', self._network.name), ]
+ arglist = [
+ self._network.name,
+ ]
+ verifylist = [
+ ('network', self._network.name),
+ ]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
@@ -1021,16 +1076,15 @@ class TestSetNetwork(TestNetwork):
verifylist = [('no_tag', True)]
expected_args = []
arglist.append(self._network.name)
- verifylist.append(
- ('network', self._network.name))
+ verifylist.append(('network', self._network.name))
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.assertFalse(self.network.update_network.called)
self.network.set_tags.assert_called_once_with(
- self._network,
- tests_utils.CompareBySet(expected_args))
+ self._network, tests_utils.CompareBySet(expected_args)
+ )
self.assertIsNone(result)
def test_set_with_tags(self):
@@ -1041,7 +1095,6 @@ class TestSetNetwork(TestNetwork):
class TestShowNetwork(TestNetwork):
-
# The network to show.
_network = network_fakes.create_one_network()
columns = (
@@ -1116,8 +1169,13 @@ class TestShowNetwork(TestNetwork):
arglist = []
verifylist = []
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_show_all_options(self):
arglist = [
@@ -1131,19 +1189,19 @@ class TestShowNetwork(TestNetwork):
columns, data = self.cmd.take_action(parsed_args)
self.network.find_network.assert_called_once_with(
- self._network.name, ignore_missing=False)
+ self._network.name, ignore_missing=False
+ )
self.assertEqual(set(self.columns), set(columns))
self.assertCountEqual(self.data, data)
class TestUnsetNetwork(TestNetwork):
-
# The network to set.
- _network = network_fakes.create_one_network(
- {'tags': ['green', 'red']})
- qos_policy = (network_fakes.FakeNetworkQosPolicy.
- create_one_qos_policy(attrs={'id': _network.qos_policy_id}))
+ _network = network_fakes.create_one_network({'tags': ['green', 'red']})
+ qos_policy = network_fakes.FakeNetworkQosPolicy.create_one_qos_policy(
+ attrs={'id': _network.qos_policy_id}
+ )
def setUp(self):
super(TestUnsetNetwork, self).setUp()
@@ -1158,8 +1216,12 @@ class TestUnsetNetwork(TestNetwork):
self.cmd = network.UnsetNetwork(self.app, self.namespace)
def test_unset_nothing(self):
- arglist = [self._network.name, ]
- verifylist = [('network', self._network.name), ]
+ arglist = [
+ self._network.name,
+ ]
+ verifylist = [
+ ('network', self._network.name),
+ ]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
@@ -1178,16 +1240,15 @@ class TestUnsetNetwork(TestNetwork):
verifylist = [('all_tag', True)]
expected_args = []
arglist.append(self._network.name)
- verifylist.append(
- ('network', self._network.name))
+ verifylist.append(('network', self._network.name))
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.assertFalse(self.network.update_network.called)
self.network.set_tags.assert_called_once_with(
- self._network,
- tests_utils.CompareBySet(expected_args))
+ self._network, tests_utils.CompareBySet(expected_args)
+ )
self.assertIsNone(result)
def test_unset_with_tags(self):
diff --git a/openstackclient/tests/unit/network/v2/test_network_agent.py b/openstackclient/tests/unit/network/v2/test_network_agent.py
index 15c4c5de..e3f1269c 100644
--- a/openstackclient/tests/unit/network/v2/test_network_agent.py
+++ b/openstackclient/tests/unit/network/v2/test_network_agent.py
@@ -23,7 +23,6 @@ from openstackclient.tests.unit import utils as tests_utils
class TestNetworkAgent(network_fakes.TestNetworkV2):
-
def setUp(self):
super(TestNetworkAgent, self).setUp()
@@ -32,7 +31,6 @@ class TestNetworkAgent(network_fakes.TestNetworkV2):
class TestAddNetworkToAgent(TestNetworkAgent):
-
net = network_fakes.create_one_network()
agent = network_fakes.create_one_network_agent()
@@ -43,23 +41,23 @@ class TestAddNetworkToAgent(TestNetworkAgent):
self.network.find_network = mock.Mock(return_value=self.net)
self.network.name = self.network.find_network.name
self.network.add_dhcp_agent_to_network = mock.Mock()
- self.cmd = network_agent.AddNetworkToAgent(
- self.app, self.namespace)
+ self.cmd = network_agent.AddNetworkToAgent(self.app, self.namespace)
def test_show_no_options(self):
arglist = []
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_add_network_to_dhcp_agent(self):
- arglist = [
- '--dhcp',
- self.agent.id,
- self.net.id
- ]
+ arglist = ['--dhcp', self.agent.id, self.net.id]
verifylist = [
('dhcp', True),
('agent_id', self.agent.id),
@@ -70,11 +68,11 @@ class TestAddNetworkToAgent(TestNetworkAgent):
self.cmd.take_action(parsed_args)
self.network.add_dhcp_agent_to_network.assert_called_once_with(
- self.agent, self.net)
+ self.agent, self.net
+ )
class TestAddRouterAgent(TestNetworkAgent):
-
_router = network_fakes.FakeRouter.create_one_router()
_agent = network_fakes.create_one_network_agent()
@@ -90,8 +88,13 @@ class TestAddRouterAgent(TestNetworkAgent):
verifylist = []
# Missing agent ID will cause command to bail
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_add_router_required_options(self):
arglist = [
@@ -109,12 +112,12 @@ class TestAddRouterAgent(TestNetworkAgent):
result = self.cmd.take_action(parsed_args)
self.network.add_router_to_agent.assert_called_with(
- self._agent, self._router)
+ self._agent, self._router
+ )
self.assertIsNone(result)
class TestDeleteNetworkAgent(TestNetworkAgent):
-
network_agents = network_fakes.create_network_agents(count=2)
def setUp(self):
@@ -136,7 +139,8 @@ class TestDeleteNetworkAgent(TestNetworkAgent):
result = self.cmd.take_action(parsed_args)
self.network.delete_agent.assert_called_once_with(
- self.network_agents[0].id, ignore_missing=False)
+ self.network_agents[0].id, ignore_missing=False
+ )
self.assertIsNone(result)
def test_multi_network_agents_delete(self):
@@ -163,15 +167,15 @@ class TestDeleteNetworkAgent(TestNetworkAgent):
'unexist_network_agent',
]
verifylist = [
- ('network_agent',
- [self.network_agents[0].id, 'unexist_network_agent']),
+ (
+ 'network_agent',
+ [self.network_agents[0].id, 'unexist_network_agent'],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
delete_mock_result = [True, exceptions.CommandError]
- self.network.delete_agent = (
- mock.Mock(side_effect=delete_mock_result)
- )
+ self.network.delete_agent = mock.Mock(side_effect=delete_mock_result)
try:
self.cmd.take_action(parsed_args)
@@ -180,13 +184,14 @@ class TestDeleteNetworkAgent(TestNetworkAgent):
self.assertEqual('1 of 2 network agents failed to delete.', str(e))
self.network.delete_agent.assert_any_call(
- self.network_agents[0].id, ignore_missing=False)
+ self.network_agents[0].id, ignore_missing=False
+ )
self.network.delete_agent.assert_any_call(
- 'unexist_network_agent', ignore_missing=False)
+ 'unexist_network_agent', ignore_missing=False
+ )
class TestListNetworkAgent(TestNetworkAgent):
-
network_agents = network_fakes.create_network_agents(count=3)
columns = (
@@ -196,24 +201,25 @@ class TestListNetworkAgent(TestNetworkAgent):
'Availability Zone',
'Alive',
'State',
- 'Binary'
+ 'Binary',
)
data = []
for agent in network_agents:
- data.append((
- agent.id,
- agent.agent_type,
- agent.host,
- agent.availability_zone,
- network_agent.AliveColumn(agent.is_alive),
- network_agent.AdminStateColumn(agent.is_admin_state_up),
- agent.binary,
- ))
+ data.append(
+ (
+ agent.id,
+ agent.agent_type,
+ agent.host,
+ agent.availability_zone,
+ network_agent.AliveColumn(agent.is_alive),
+ network_agent.AdminStateColumn(agent.is_admin_state_up),
+ agent.binary,
+ )
+ )
def setUp(self):
super(TestListNetworkAgent, self).setUp()
- self.network.agents = mock.Mock(
- return_value=self.network_agents)
+ self.network.agents = mock.Mock(return_value=self.network_agents)
_testagent = network_fakes.create_one_network_agent()
self.network.get_agent = mock.Mock(return_value=_testagent)
@@ -221,15 +227,16 @@ class TestListNetworkAgent(TestNetworkAgent):
self._testnetwork = network_fakes.create_one_network()
self.network.find_network = mock.Mock(return_value=self._testnetwork)
self.network.network_hosting_dhcp_agents = mock.Mock(
- return_value=self.network_agents)
+ return_value=self.network_agents
+ )
self.network.get_agent = mock.Mock(return_value=_testagent)
- self._testrouter = \
- network_fakes.FakeRouter.create_one_router()
+ self._testrouter = network_fakes.FakeRouter.create_one_router()
self.network.find_router = mock.Mock(return_value=self._testrouter)
self.network.routers_hosting_l3_agents = mock.Mock(
- return_value=self.network_agents)
+ return_value=self.network_agents
+ )
# Get the command object to test
self.cmd = network_agent.ListNetworkAgent(self.app, self.namespace)
@@ -247,7 +254,8 @@ class TestListNetworkAgent(TestNetworkAgent):
def test_network_agents_list_agent_type(self):
arglist = [
- '--agent-type', 'dhcp',
+ '--agent-type',
+ 'dhcp',
]
verifylist = [
('agent_type', 'dhcp'),
@@ -256,15 +264,18 @@ class TestListNetworkAgent(TestNetworkAgent):
columns, data = self.cmd.take_action(parsed_args)
- self.network.agents.assert_called_once_with(**{
- 'agent_type': 'DHCP agent',
- })
+ self.network.agents.assert_called_once_with(
+ **{
+ 'agent_type': 'DHCP agent',
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
def test_network_agents_list_host(self):
arglist = [
- '--host', self.network_agents[0].host,
+ '--host',
+ self.network_agents[0].host,
]
verifylist = [
('host', self.network_agents[0].host),
@@ -273,15 +284,18 @@ class TestListNetworkAgent(TestNetworkAgent):
columns, data = self.cmd.take_action(parsed_args)
- self.network.agents.assert_called_once_with(**{
- 'host': self.network_agents[0].host,
- })
+ self.network.agents.assert_called_once_with(
+ **{
+ 'host': self.network_agents[0].host,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
def test_network_agents_list_networks(self):
arglist = [
- '--network', self._testnetwork.id,
+ '--network',
+ self._testnetwork.id,
]
verifylist = [
('network', self._testnetwork.id),
@@ -291,47 +305,46 @@ class TestListNetworkAgent(TestNetworkAgent):
columns, data = self.cmd.take_action(parsed_args)
self.network.network_hosting_dhcp_agents.assert_called_once_with(
- self._testnetwork)
+ self._testnetwork
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
def test_network_agents_list_routers(self):
arglist = [
- '--router', self._testrouter.id,
- ]
- verifylist = [
- ('router', self._testrouter.id),
- ('long', False)
+ '--router',
+ self._testrouter.id,
]
+ verifylist = [('router', self._testrouter.id), ('long', False)]
- attrs = {self._testrouter, }
+ attrs = {
+ self._testrouter,
+ }
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.routers_hosting_l3_agents.assert_called_once_with(
- *attrs)
+ self.network.routers_hosting_l3_agents.assert_called_once_with(*attrs)
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
def test_network_agents_list_routers_with_long_option(self):
arglist = [
- '--router', self._testrouter.id,
+ '--router',
+ self._testrouter.id,
'--long',
]
- verifylist = [
- ('router', self._testrouter.id),
- ('long', True)
- ]
+ verifylist = [('router', self._testrouter.id), ('long', True)]
- attrs = {self._testrouter, }
+ attrs = {
+ self._testrouter,
+ }
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.routers_hosting_l3_agents.assert_called_once_with(
- *attrs)
+ self.network.routers_hosting_l3_agents.assert_called_once_with(*attrs)
# Add a column 'HA State' and corresponding data.
router_agent_columns = self.columns + ('HA State',)
@@ -342,7 +355,6 @@ class TestListNetworkAgent(TestNetworkAgent):
class TestRemoveNetworkFromAgent(TestNetworkAgent):
-
net = network_fakes.create_one_network()
agent = network_fakes.create_one_network_agent()
@@ -354,15 +366,21 @@ class TestRemoveNetworkFromAgent(TestNetworkAgent):
self.network.name = self.network.find_network.name
self.network.remove_dhcp_agent_from_network = mock.Mock()
self.cmd = network_agent.RemoveNetworkFromAgent(
- self.app, self.namespace)
+ self.app, self.namespace
+ )
def test_show_no_options(self):
arglist = []
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_network_agents_list_routers_no_arg(self):
arglist = [
@@ -371,15 +389,16 @@ class TestRemoveNetworkFromAgent(TestNetworkAgent):
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_network_from_dhcp_agent(self):
- arglist = [
- '--dhcp',
- self.agent.id,
- self.net.id
- ]
+ arglist = ['--dhcp', self.agent.id, self.net.id]
verifylist = [
('dhcp', True),
('agent_id', self.agent.id),
@@ -390,7 +409,8 @@ class TestRemoveNetworkFromAgent(TestNetworkAgent):
self.cmd.take_action(parsed_args)
self.network.remove_dhcp_agent_from_network.assert_called_once_with(
- self.agent, self.net)
+ self.agent, self.net
+ )
class TestRemoveRouterAgent(TestNetworkAgent):
@@ -400,8 +420,9 @@ class TestRemoveRouterAgent(TestNetworkAgent):
def setUp(self):
super(TestRemoveRouterAgent, self).setUp()
self.network.remove_router_from_agent = mock.Mock()
- self.cmd = network_agent.RemoveRouterFromAgent(self.app,
- self.namespace)
+ self.cmd = network_agent.RemoveRouterFromAgent(
+ self.app, self.namespace
+ )
self.network.get_agent = mock.Mock(return_value=self._agent)
self.network.find_router = mock.Mock(return_value=self._router)
@@ -410,8 +431,13 @@ class TestRemoveRouterAgent(TestNetworkAgent):
verifylist = []
# Missing agent ID will cause command to bail
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_remove_router_required_options(self):
arglist = [
@@ -429,12 +455,12 @@ class TestRemoveRouterAgent(TestNetworkAgent):
result = self.cmd.take_action(parsed_args)
self.network.remove_router_from_agent.assert_called_with(
- self._agent, self._router)
+ self._agent, self._router
+ )
self.assertIsNone(result)
class TestSetNetworkAgent(TestNetworkAgent):
-
_network_agent = network_fakes.create_one_network_agent()
def setUp(self):
@@ -458,12 +484,14 @@ class TestSetNetworkAgent(TestNetworkAgent):
attrs = {}
self.network.update_agent.assert_called_once_with(
- self._network_agent, **attrs)
+ self._network_agent, **attrs
+ )
self.assertIsNone(result)
def test_set_all(self):
arglist = [
- '--description', 'new_description',
+ '--description',
+ 'new_description',
'--enable',
self._network_agent.id,
]
@@ -483,7 +511,8 @@ class TestSetNetworkAgent(TestNetworkAgent):
'is_admin_state_up': True,
}
self.network.update_agent.assert_called_once_with(
- self._network_agent, **attrs)
+ self._network_agent, **attrs
+ )
self.assertIsNone(result)
def test_set_with_disable(self):
@@ -505,12 +534,12 @@ class TestSetNetworkAgent(TestNetworkAgent):
'is_admin_state_up': False,
}
self.network.update_agent.assert_called_once_with(
- self._network_agent, **attrs)
+ self._network_agent, **attrs
+ )
self.assertIsNone(result)
class TestShowNetworkAgent(TestNetworkAgent):
-
_network_agent = network_fakes.create_one_network_agent()
columns = (
@@ -550,8 +579,7 @@ class TestShowNetworkAgent(TestNetworkAgent):
def setUp(self):
super(TestShowNetworkAgent, self).setUp()
- self.network.get_agent = mock.Mock(
- return_value=self._network_agent)
+ self.network.get_agent = mock.Mock(return_value=self._network_agent)
# Get the command object to test
self.cmd = network_agent.ShowNetworkAgent(self.app, self.namespace)
@@ -561,8 +589,13 @@ class TestShowNetworkAgent(TestNetworkAgent):
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_show_all_options(self):
arglist = [
@@ -575,7 +608,6 @@ class TestShowNetworkAgent(TestNetworkAgent):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.get_agent.assert_called_once_with(
- self._network_agent.id)
+ self.network.get_agent.assert_called_once_with(self._network_agent.id)
self.assertEqual(set(self.columns), set(columns))
self.assertEqual(len(list(self.data)), len(list(data)))
diff --git a/openstackclient/tests/unit/network/v2/test_network_auto_allocated_topology.py b/openstackclient/tests/unit/network/v2/test_network_auto_allocated_topology.py
index a5dbcde1..fb0c4f89 100644
--- a/openstackclient/tests/unit/network/v2/test_network_auto_allocated_topology.py
+++ b/openstackclient/tests/unit/network/v2/test_network_auto_allocated_topology.py
@@ -32,8 +32,7 @@ class TestCreateAutoAllocatedTopology(TestAutoAllocatedTopology):
network_object = network_fakes.create_one_network()
topology = network_fakes.create_one_topology(
- attrs={'id': network_object.id,
- 'project_id': project.id}
+ attrs={'id': network_object.id, 'project_id': project.id}
)
columns = (
@@ -50,10 +49,11 @@ class TestCreateAutoAllocatedTopology(TestAutoAllocatedTopology):
super(TestCreateAutoAllocatedTopology, self).setUp()
self.cmd = network_auto_allocated_topology.CreateAutoAllocatedTopology(
- self.app,
- self.namespace)
+ self.app, self.namespace
+ )
self.network.get_auto_allocated_topology = mock.Mock(
- return_value=self.topology)
+ return_value=self.topology
+ )
def test_create_no_options(self):
arglist = []
@@ -69,7 +69,8 @@ class TestCreateAutoAllocatedTopology(TestAutoAllocatedTopology):
def test_create_project_option(self):
arglist = [
- '--project', self.project.id,
+ '--project',
+ self.project.id,
]
verifylist = [
@@ -88,8 +89,10 @@ class TestCreateAutoAllocatedTopology(TestAutoAllocatedTopology):
def test_create_project_domain_option(self):
arglist = [
- '--project', self.project.id,
- '--project-domain', self.project.domain_id,
+ '--project',
+ self.project.id,
+ '--project-domain',
+ self.project.domain_id,
]
verifylist = [
@@ -130,8 +133,7 @@ class TestValidateAutoAllocatedTopology(TestAutoAllocatedTopology):
network_object = network_fakes.create_one_network()
topology = network_fakes.create_one_topology(
- attrs={'id': network_object.id,
- 'project_id': project.id}
+ attrs={'id': network_object.id, 'project_id': project.id}
)
columns = (
@@ -148,10 +150,11 @@ class TestValidateAutoAllocatedTopology(TestAutoAllocatedTopology):
super(TestValidateAutoAllocatedTopology, self).setUp()
self.cmd = network_auto_allocated_topology.CreateAutoAllocatedTopology(
- self.app,
- self.namespace)
+ self.app, self.namespace
+ )
self.network.validate_auto_allocated_topology = mock.Mock(
- return_value=self.topology)
+ return_value=self.topology
+ )
def test_show_dry_run_no_project(self):
arglist = [
@@ -164,13 +167,13 @@ class TestValidateAutoAllocatedTopology(TestAutoAllocatedTopology):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.validate_auto_allocated_topology.assert_called_with(
- None)
+ self.network.validate_auto_allocated_topology.assert_called_with(None)
def test_show_dry_run_project_option(self):
arglist = [
'--check-resources',
- '--project', self.project.id,
+ '--project',
+ self.project.id,
]
verifylist = [
('check_resources', True),
@@ -181,13 +184,16 @@ class TestValidateAutoAllocatedTopology(TestAutoAllocatedTopology):
columns, data = self.cmd.take_action(parsed_args)
self.network.validate_auto_allocated_topology.assert_called_with(
- self.project.id)
+ self.project.id
+ )
def test_show_dry_run_project_domain_option(self):
arglist = [
'--check-resources',
- '--project', self.project.id,
- '--project-domain', self.project.domain_id,
+ '--project',
+ self.project.id,
+ '--project-domain',
+ self.project.domain_id,
]
verifylist = [
('check_resources', True),
@@ -199,7 +205,8 @@ class TestValidateAutoAllocatedTopology(TestAutoAllocatedTopology):
columns, data = self.cmd.take_action(parsed_args)
self.network.validate_auto_allocated_topology.assert_called_with(
- self.project.id)
+ self.project.id
+ )
class TestDeleteAutoAllocatedTopology(TestAutoAllocatedTopology):
@@ -207,18 +214,18 @@ class TestDeleteAutoAllocatedTopology(TestAutoAllocatedTopology):
network_object = network_fakes.create_one_network()
topology = network_fakes.create_one_topology(
- attrs={'id': network_object.id,
- 'project_id': project.id}
+ attrs={'id': network_object.id, 'project_id': project.id}
)
def setUp(self):
super(TestDeleteAutoAllocatedTopology, self).setUp()
self.cmd = network_auto_allocated_topology.DeleteAutoAllocatedTopology(
- self.app,
- self.namespace)
+ self.app, self.namespace
+ )
self.network.delete_auto_allocated_topology = mock.Mock(
- return_value=None)
+ return_value=None
+ )
def test_delete_no_project(self):
arglist = []
@@ -228,13 +235,15 @@ class TestDeleteAutoAllocatedTopology(TestAutoAllocatedTopology):
result = self.cmd.take_action(parsed_args)
self.network.delete_auto_allocated_topology.assert_called_once_with(
- None)
+ None
+ )
self.assertIsNone(result)
def test_delete_project_arg(self):
arglist = [
- '--project', self.project.id,
+ '--project',
+ self.project.id,
]
verifylist = [
('project', self.project.id),
@@ -244,14 +253,17 @@ class TestDeleteAutoAllocatedTopology(TestAutoAllocatedTopology):
result = self.cmd.take_action(parsed_args)
self.network.delete_auto_allocated_topology.assert_called_once_with(
- self.project.id)
+ self.project.id
+ )
self.assertIsNone(result)
def test_delete_project_domain_arg(self):
arglist = [
- '--project', self.project.id,
- '--project-domain', self.project.domain_id,
+ '--project',
+ self.project.id,
+ '--project-domain',
+ self.project.domain_id,
]
verifylist = [
('project', self.project.id),
@@ -262,6 +274,7 @@ class TestDeleteAutoAllocatedTopology(TestAutoAllocatedTopology):
result = self.cmd.take_action(parsed_args)
self.network.delete_auto_allocated_topology.assert_called_once_with(
- self.project.id)
+ self.project.id
+ )
self.assertIsNone(result)
diff --git a/openstackclient/tests/unit/network/v2/test_network_compute.py b/openstackclient/tests/unit/network/v2/test_network_compute.py
index 89330fff..ffa82f5d 100644
--- a/openstackclient/tests/unit/network/v2/test_network_compute.py
+++ b/openstackclient/tests/unit/network/v2/test_network_compute.py
@@ -24,7 +24,6 @@ from openstackclient.tests.unit import utils as tests_utils
# Tests for Nova network
#
class TestNetworkCompute(compute_fakes.TestComputev2):
-
def setUp(self):
super(TestNetworkCompute, self).setUp()
@@ -32,11 +31,8 @@ class TestNetworkCompute(compute_fakes.TestComputev2):
self.compute = self.app.client_manager.compute
-@mock.patch(
- 'openstackclient.api.compute_v2.APIv2.network_create'
-)
+@mock.patch('openstackclient.api.compute_v2.APIv2.network_create')
class TestCreateNetworkCompute(TestNetworkCompute):
-
# The network to create.
_network = compute_fakes.FakeNetwork.create_one_network()
@@ -153,7 +149,8 @@ class TestCreateNetworkCompute(TestNetworkCompute):
def test_network_create_default_options(self, net_mock):
net_mock.return_value = self._network
arglist = [
- "--subnet", self._network['cidr'],
+ "--subnet",
+ self._network['cidr'],
self._network['label'],
]
verifylist = [
@@ -164,19 +161,18 @@ class TestCreateNetworkCompute(TestNetworkCompute):
columns, data = self.cmd.take_action(parsed_args)
- net_mock.assert_called_once_with(**{
- 'subnet': self._network['cidr'],
- 'name': self._network['label'],
- })
+ net_mock.assert_called_once_with(
+ **{
+ 'subnet': self._network['cidr'],
+ 'name': self._network['label'],
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
-@mock.patch(
- 'openstackclient.api.compute_v2.APIv2.network_delete'
-)
+@mock.patch('openstackclient.api.compute_v2.APIv2.network_delete')
class TestDeleteNetworkCompute(TestNetworkCompute):
-
def setUp(self):
super(TestDeleteNetworkCompute, self).setUp()
@@ -186,8 +182,9 @@ class TestDeleteNetworkCompute(TestNetworkCompute):
self._networks = compute_fakes.FakeNetwork.create_networks(count=3)
# Return value of utils.find_resource()
- self.compute.api.network_find = \
- compute_fakes.FakeNetwork.get_networks(networks=self._networks)
+ self.compute.api.network_find = compute_fakes.FakeNetwork.get_networks(
+ networks=self._networks
+ )
# Get the command object to test
self.cmd = network.DeleteNetwork(self.app, None)
@@ -229,10 +226,10 @@ class TestDeleteNetworkCompute(TestNetworkCompute):
def test_network_delete_multi_with_exception(self, net_mock):
net_mock.return_value = mock.Mock(return_value=None)
- net_mock.side_effect = ([
+ net_mock.side_effect = [
mock.Mock(return_value=None),
exceptions.CommandError,
- ])
+ ]
arglist = [
self._networks[0]['id'],
'xxxx-yyyy-zzzz',
@@ -254,11 +251,8 @@ class TestDeleteNetworkCompute(TestNetworkCompute):
net_mock.assert_any_call('xxxx-yyyy-zzzz')
-@mock.patch(
- 'openstackclient.api.compute_v2.APIv2.network_list'
-)
+@mock.patch('openstackclient.api.compute_v2.APIv2.network_list')
class TestListNetworkCompute(TestNetworkCompute):
-
# The networks going to be listed up.
_networks = compute_fakes.FakeNetwork.create_networks(count=3)
@@ -270,11 +264,13 @@ class TestListNetworkCompute(TestNetworkCompute):
data = []
for net in _networks:
- data.append((
- net['id'],
- net['label'],
- net['cidr'],
- ))
+ data.append(
+ (
+ net['id'],
+ net['label'],
+ net['cidr'],
+ )
+ )
def setUp(self):
super(TestListNetworkCompute, self).setUp()
@@ -300,11 +296,8 @@ class TestListNetworkCompute(TestNetworkCompute):
self.assertEqual(self.data, list(data))
-@mock.patch(
- 'openstackclient.api.compute_v2.APIv2.network_find'
-)
+@mock.patch('openstackclient.api.compute_v2.APIv2.network_find')
class TestShowNetworkCompute(TestNetworkCompute):
-
# The network to show.
_network = compute_fakes.FakeNetwork.create_one_network()
diff --git a/openstackclient/tests/unit/network/v2/test_network_flavor.py b/openstackclient/tests/unit/network/v2/test_network_flavor.py
index 3149def6..35df3b77 100644
--- a/openstackclient/tests/unit/network/v2/test_network_flavor.py
+++ b/openstackclient/tests/unit/network/v2/test_network_flavor.py
@@ -25,7 +25,6 @@ from openstackclient.tests.unit import utils as tests_utils
class TestNetworkFlavor(network_fakes.TestNetworkV2):
-
def setUp(self):
super(TestNetworkFlavor, self).setUp()
@@ -38,7 +37,6 @@ class TestNetworkFlavor(network_fakes.TestNetworkV2):
class TestAddNetworkFlavorToProfile(TestNetworkFlavor):
-
network_flavor = network_fakes.create_one_network_flavor()
service_profile = network_fakes.create_one_service_profile()
@@ -46,25 +44,29 @@ class TestAddNetworkFlavorToProfile(TestNetworkFlavor):
super(TestAddNetworkFlavorToProfile, self).setUp()
self.network.find_flavor = mock.Mock(return_value=self.network_flavor)
self.network.find_service_profile = mock.Mock(
- return_value=self.service_profile)
+ return_value=self.service_profile
+ )
self.network.associate_flavor_with_service_profile = mock.Mock()
self.cmd = network_flavor.AddNetworkFlavorToProfile(
- self.app, self.namespace)
+ self.app, self.namespace
+ )
def test_show_no_options(self):
arglist = []
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_add_flavor_to_service_profile(self):
- arglist = [
- self.network_flavor.id,
- self.service_profile.id
- ]
+ arglist = [self.network_flavor.id, self.service_profile.id]
verifylist = [
('flavor', self.network_flavor.id),
('service_profile', self.service_profile.id),
@@ -73,12 +75,12 @@ class TestAddNetworkFlavorToProfile(TestNetworkFlavor):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
self.cmd.take_action(parsed_args)
- self.network.associate_flavor_with_service_profile.\
- assert_called_once_with(self.network_flavor, self.service_profile)
+ self.network.associate_flavor_with_service_profile.assert_called_once_with( # noqa: E501
+ self.network_flavor, self.service_profile
+ )
class TestCreateNetworkFlavor(TestNetworkFlavor):
-
project = identity_fakes_v3.FakeProject.create_one_project()
domain = identity_fakes_v3.FakeDomain.create_one_domain()
# The new network flavor created.
@@ -103,7 +105,8 @@ class TestCreateNetworkFlavor(TestNetworkFlavor):
def setUp(self):
super(TestCreateNetworkFlavor, self).setUp()
self.network.create_flavor = mock.Mock(
- return_value=self.new_network_flavor)
+ return_value=self.new_network_flavor
+ )
# Get the command object to test
self.cmd = network_flavor.CreateNetworkFlavor(self.app, self.namespace)
@@ -116,12 +119,18 @@ class TestCreateNetworkFlavor(TestNetworkFlavor):
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_create_default_options(self):
arglist = [
- '--service-type', self.new_network_flavor.service_type,
+ '--service-type',
+ self.new_network_flavor.service_type,
self.new_network_flavor.name,
]
verifylist = [
@@ -130,22 +139,28 @@ class TestCreateNetworkFlavor(TestNetworkFlavor):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_flavor.assert_called_once_with(**{
- 'service_type': self.new_network_flavor.service_type,
- 'name': self.new_network_flavor.name,
- })
+ self.network.create_flavor.assert_called_once_with(
+ **{
+ 'service_type': self.new_network_flavor.service_type,
+ 'name': self.new_network_flavor.name,
+ }
+ )
self.assertEqual(set(self.columns), set(columns))
self.assertEqual(set(self.data), set(data))
def test_create_all_options(self):
arglist = [
- '--description', self.new_network_flavor.description,
+ '--description',
+ self.new_network_flavor.description,
'--enable',
- '--project', self.project.id,
- '--project-domain', self.domain.name,
- '--service-type', self.new_network_flavor.service_type,
+ '--project',
+ self.project.id,
+ '--project-domain',
+ self.domain.name,
+ '--service-type',
+ self.new_network_flavor.service_type,
self.new_network_flavor.name,
]
verifylist = [
@@ -158,22 +173,25 @@ class TestCreateNetworkFlavor(TestNetworkFlavor):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_flavor.assert_called_once_with(**{
- 'description': self.new_network_flavor.description,
- 'enabled': True,
- 'project_id': self.project.id,
- 'service_type': self.new_network_flavor.service_type,
- 'name': self.new_network_flavor.name,
- })
+ self.network.create_flavor.assert_called_once_with(
+ **{
+ 'description': self.new_network_flavor.description,
+ 'enabled': True,
+ 'project_id': self.project.id,
+ 'service_type': self.new_network_flavor.service_type,
+ 'name': self.new_network_flavor.name,
+ }
+ )
self.assertEqual(set(self.columns), set(columns))
self.assertEqual(set(self.data), set(data))
def test_create_disable(self):
arglist = [
'--disable',
- '--service-type', self.new_network_flavor.service_type,
+ '--service-type',
+ self.new_network_flavor.service_type,
self.new_network_flavor.name,
]
verifylist = [
@@ -185,17 +203,18 @@ class TestCreateNetworkFlavor(TestNetworkFlavor):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_flavor.assert_called_once_with(**{
- 'enabled': False,
- 'service_type': self.new_network_flavor.service_type,
- 'name': self.new_network_flavor.name,
- })
+ self.network.create_flavor.assert_called_once_with(
+ **{
+ 'enabled': False,
+ 'service_type': self.new_network_flavor.service_type,
+ 'name': self.new_network_flavor.name,
+ }
+ )
self.assertEqual(set(self.columns), set(columns))
self.assertEqual(set(self.data), set(data))
class TestDeleteNetworkFlavor(TestNetworkFlavor):
-
# The network flavor to delete.
_network_flavors = network_fakes.create_flavor(count=2)
@@ -203,7 +222,8 @@ class TestDeleteNetworkFlavor(TestNetworkFlavor):
super(TestDeleteNetworkFlavor, self).setUp()
self.network.delete_flavor = mock.Mock(return_value=None)
self.network.find_flavor = network_fakes.get_flavor(
- network_flavors=self._network_flavors)
+ network_flavors=self._network_flavors
+ )
# Get the command object to test
self.cmd = network_flavor.DeleteNetworkFlavor(self.app, self.namespace)
@@ -220,9 +240,11 @@ class TestDeleteNetworkFlavor(TestNetworkFlavor):
result = self.cmd.take_action(parsed_args)
self.network.find_flavor.assert_called_once_with(
- self._network_flavors[0].name, ignore_missing=False)
+ self._network_flavors[0].name, ignore_missing=False
+ )
self.network.delete_flavor.assert_called_once_with(
- self._network_flavors[0])
+ self._network_flavors[0]
+ )
self.assertIsNone(result)
def test_multi_network_flavors_delete(self):
@@ -250,15 +272,15 @@ class TestDeleteNetworkFlavor(TestNetworkFlavor):
'unexist_network_flavor',
]
verifylist = [
- ('flavor',
- [self._network_flavors[0].name, 'unexist_network_flavor']),
+ (
+ 'flavor',
+ [self._network_flavors[0].name, 'unexist_network_flavor'],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
find_mock_result = [self._network_flavors[0], exceptions.CommandError]
- self.network.find_flavor = (
- mock.Mock(side_effect=find_mock_result)
- )
+ self.network.find_flavor = mock.Mock(side_effect=find_mock_result)
try:
self.cmd.take_action(parsed_args)
@@ -267,16 +289,17 @@ class TestDeleteNetworkFlavor(TestNetworkFlavor):
self.assertEqual('1 of 2 flavors failed to delete.', str(e))
self.network.find_flavor.assert_any_call(
- self._network_flavors[0].name, ignore_missing=False)
+ self._network_flavors[0].name, ignore_missing=False
+ )
self.network.find_flavor.assert_any_call(
- 'unexist_network_flavor', ignore_missing=False)
+ 'unexist_network_flavor', ignore_missing=False
+ )
self.network.delete_flavor.assert_called_once_with(
self._network_flavors[0]
)
class TestListNetworkFlavor(TestNetworkFlavor):
-
# The network flavors to list up.
_network_flavors = network_fakes.create_flavor(count=2)
columns = (
@@ -288,18 +311,19 @@ class TestListNetworkFlavor(TestNetworkFlavor):
)
data = []
for flavor in _network_flavors:
- data.append((
- flavor.id,
- flavor.name,
- flavor.is_enabled,
- flavor.service_type,
- flavor.description,
- ))
+ data.append(
+ (
+ flavor.id,
+ flavor.name,
+ flavor.is_enabled,
+ flavor.service_type,
+ flavor.description,
+ )
+ )
def setUp(self):
super(TestListNetworkFlavor, self).setUp()
- self.network.flavors = mock.Mock(
- return_value=self._network_flavors)
+ self.network.flavors = mock.Mock(return_value=self._network_flavors)
# Get the command object to test
self.cmd = network_flavor.ListNetworkFlavor(self.app, self.namespace)
@@ -317,7 +341,6 @@ class TestListNetworkFlavor(TestNetworkFlavor):
class TestRemoveNetworkFlavorFromProfile(TestNetworkFlavor):
-
network_flavor = network_fakes.create_one_network_flavor()
service_profile = network_fakes.create_one_service_profile()
@@ -325,25 +348,29 @@ class TestRemoveNetworkFlavorFromProfile(TestNetworkFlavor):
super(TestRemoveNetworkFlavorFromProfile, self).setUp()
self.network.find_flavor = mock.Mock(return_value=self.network_flavor)
self.network.find_service_profile = mock.Mock(
- return_value=self.service_profile)
+ return_value=self.service_profile
+ )
self.network.disassociate_flavor_from_service_profile = mock.Mock()
self.cmd = network_flavor.RemoveNetworkFlavorFromProfile(
- self.app, self.namespace)
+ self.app, self.namespace
+ )
def test_show_no_options(self):
arglist = []
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_remove_flavor_from_service_profile(self):
- arglist = [
- self.network_flavor.id,
- self.service_profile.id
- ]
+ arglist = [self.network_flavor.id, self.service_profile.id]
verifylist = [
('flavor', self.network_flavor.id),
('service_profile', self.service_profile.id),
@@ -352,12 +379,12 @@ class TestRemoveNetworkFlavorFromProfile(TestNetworkFlavor):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
self.cmd.take_action(parsed_args)
- self.network.disassociate_flavor_from_service_profile.\
- assert_called_once_with(self.network_flavor, self.service_profile)
+ self.network.disassociate_flavor_from_service_profile.assert_called_once_with( # noqa: E501
+ self.network_flavor, self.service_profile
+ )
class TestShowNetworkFlavor(TestNetworkFlavor):
-
# The network flavor to show.
new_network_flavor = network_fakes.create_one_network_flavor()
columns = (
@@ -380,7 +407,8 @@ class TestShowNetworkFlavor(TestNetworkFlavor):
def setUp(self):
super(TestShowNetworkFlavor, self).setUp()
self.network.find_flavor = mock.Mock(
- return_value=self.new_network_flavor)
+ return_value=self.new_network_flavor
+ )
# Get the command object to test
self.cmd = network_flavor.ShowNetworkFlavor(self.app, self.namespace)
@@ -390,8 +418,13 @@ class TestShowNetworkFlavor(TestNetworkFlavor):
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_show_all_options(self):
arglist = [
@@ -405,28 +438,30 @@ class TestShowNetworkFlavor(TestNetworkFlavor):
columns, data = self.cmd.take_action(parsed_args)
self.network.find_flavor.assert_called_once_with(
- self.new_network_flavor.name, ignore_missing=False)
+ self.new_network_flavor.name, ignore_missing=False
+ )
self.assertEqual(set(self.columns), set(columns))
self.assertEqual(set(self.data), set(data))
class TestSetNetworkFlavor(TestNetworkFlavor):
-
# The network flavor to set.
- new_network_flavor = (
- network_fakes.create_one_network_flavor())
+ new_network_flavor = network_fakes.create_one_network_flavor()
def setUp(self):
super(TestSetNetworkFlavor, self).setUp()
self.network.update_flavor = mock.Mock(return_value=None)
self.network.find_flavor = mock.Mock(
- return_value=self.new_network_flavor)
+ return_value=self.new_network_flavor
+ )
# Get the command object to test
self.cmd = network_flavor.SetNetworkFlavor(self.app, self.namespace)
def test_set_nothing(self):
- arglist = [self.new_network_flavor.name, ]
+ arglist = [
+ self.new_network_flavor.name,
+ ]
verifylist = [
('flavor', self.new_network_flavor.name),
]
@@ -436,12 +471,14 @@ class TestSetNetworkFlavor(TestNetworkFlavor):
attrs = {}
self.network.update_flavor.assert_called_with(
- self.new_network_flavor, **attrs)
+ self.new_network_flavor, **attrs
+ )
self.assertIsNone(result)
def test_set_name_and_enable(self):
arglist = [
- '--name', 'new_network_flavor',
+ '--name',
+ 'new_network_flavor',
'--enable',
self.new_network_flavor.name,
]
@@ -458,7 +495,8 @@ class TestSetNetworkFlavor(TestNetworkFlavor):
'enabled': True,
}
self.network.update_flavor.assert_called_with(
- self.new_network_flavor, **attrs)
+ self.new_network_flavor, **attrs
+ )
self.assertIsNone(result)
def test_set_disable(self):
@@ -477,5 +515,6 @@ class TestSetNetworkFlavor(TestNetworkFlavor):
'enabled': False,
}
self.network.update_flavor.assert_called_with(
- self.new_network_flavor, **attrs)
+ self.new_network_flavor, **attrs
+ )
self.assertIsNone(result)
diff --git a/openstackclient/tests/unit/network/v2/test_network_flavor_profile.py b/openstackclient/tests/unit/network/v2/test_network_flavor_profile.py
index 5c2b9e2d..8a2084d0 100644
--- a/openstackclient/tests/unit/network/v2/test_network_flavor_profile.py
+++ b/openstackclient/tests/unit/network/v2/test_network_flavor_profile.py
@@ -20,7 +20,6 @@ from openstackclient.tests.unit.network.v2 import fakes as network_fakes
class TestFlavorProfile(network_fakes.TestNetworkV2):
-
def setUp(self):
super(TestFlavorProfile, self).setUp()
# Get the network client
@@ -57,20 +56,27 @@ class TestCreateFlavorProfile(TestFlavorProfile):
def setUp(self):
super(TestCreateFlavorProfile, self).setUp()
self.network.create_service_profile = mock.Mock(
- return_value=self.new_flavor_profile)
+ return_value=self.new_flavor_profile
+ )
self.projects_mock.get.return_value = self.project
# Get the command object to test
- self.cmd = (network_flavor_profile.CreateNetworkFlavorProfile(
- self.app, self.namespace))
+ self.cmd = network_flavor_profile.CreateNetworkFlavorProfile(
+ self.app, self.namespace
+ )
def test_create_all_options(self):
arglist = [
- "--description", self.new_flavor_profile.description,
- "--project", self.new_flavor_profile.project_id,
- '--project-domain', self.domain.name,
+ "--description",
+ self.new_flavor_profile.description,
+ "--project",
+ self.new_flavor_profile.project_id,
+ '--project-domain',
+ self.domain.name,
"--enable",
- "--driver", self.new_flavor_profile.driver,
- "--metainfo", self.new_flavor_profile.meta_info,
+ "--driver",
+ self.new_flavor_profile.driver,
+ "--metainfo",
+ self.new_flavor_profile.meta_info,
]
verifylist = [
@@ -79,29 +85,35 @@ class TestCreateFlavorProfile(TestFlavorProfile):
('project_domain', self.domain.name),
('enable', True),
('driver', self.new_flavor_profile.driver),
- ('metainfo', self.new_flavor_profile.meta_info)
+ ('metainfo', self.new_flavor_profile.meta_info),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
self.network.create_service_profile.assert_called_once_with(
- **{'description': self.new_flavor_profile.description,
- 'project_id': self.project.id,
- 'enabled': self.new_flavor_profile.is_enabled,
- 'driver': self.new_flavor_profile.driver,
- 'metainfo': self.new_flavor_profile.meta_info}
+ **{
+ 'description': self.new_flavor_profile.description,
+ 'project_id': self.project.id,
+ 'enabled': self.new_flavor_profile.is_enabled,
+ 'driver': self.new_flavor_profile.driver,
+ 'metainfo': self.new_flavor_profile.meta_info,
+ }
)
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
def test_create_with_metainfo(self):
arglist = [
- "--description", self.new_flavor_profile.description,
- "--project", self.new_flavor_profile.project_id,
- '--project-domain', self.domain.name,
+ "--description",
+ self.new_flavor_profile.description,
+ "--project",
+ self.new_flavor_profile.project_id,
+ '--project-domain',
+ self.domain.name,
"--enable",
- "--metainfo", self.new_flavor_profile.meta_info,
+ "--metainfo",
+ self.new_flavor_profile.meta_info,
]
verifylist = [
@@ -109,28 +121,34 @@ class TestCreateFlavorProfile(TestFlavorProfile):
('project', self.new_flavor_profile.project_id),
('project_domain', self.domain.name),
('enable', True),
- ('metainfo', self.new_flavor_profile.meta_info)
+ ('metainfo', self.new_flavor_profile.meta_info),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
self.network.create_service_profile.assert_called_once_with(
- **{'description': self.new_flavor_profile.description,
- 'project_id': self.project.id,
- 'enabled': self.new_flavor_profile.is_enabled,
- 'metainfo': self.new_flavor_profile.meta_info}
+ **{
+ 'description': self.new_flavor_profile.description,
+ 'project_id': self.project.id,
+ 'enabled': self.new_flavor_profile.is_enabled,
+ 'metainfo': self.new_flavor_profile.meta_info,
+ }
)
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
def test_create_with_driver(self):
arglist = [
- "--description", self.new_flavor_profile.description,
- "--project", self.new_flavor_profile.project_id,
- '--project-domain', self.domain.name,
+ "--description",
+ self.new_flavor_profile.description,
+ "--project",
+ self.new_flavor_profile.project_id,
+ '--project-domain',
+ self.domain.name,
"--enable",
- "--driver", self.new_flavor_profile.driver,
+ "--driver",
+ self.new_flavor_profile.driver,
]
verifylist = [
@@ -142,23 +160,27 @@ class TestCreateFlavorProfile(TestFlavorProfile):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
self.network.create_service_profile.assert_called_once_with(
- **{'description': self.new_flavor_profile.description,
- 'project_id': self.project.id,
- 'enabled': self.new_flavor_profile.is_enabled,
- 'driver': self.new_flavor_profile.driver,
- }
+ **{
+ 'description': self.new_flavor_profile.description,
+ 'project_id': self.project.id,
+ 'enabled': self.new_flavor_profile.is_enabled,
+ 'driver': self.new_flavor_profile.driver,
+ }
)
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
def test_create_without_driver_and_metainfo(self):
arglist = [
- "--description", self.new_flavor_profile.description,
- "--project", self.new_flavor_profile.project_id,
- '--project-domain', self.domain.name,
+ "--description",
+ self.new_flavor_profile.description,
+ "--project",
+ self.new_flavor_profile.project_id,
+ '--project-domain',
+ self.domain.name,
"--enable",
]
@@ -180,40 +202,42 @@ class TestCreateFlavorProfile(TestFlavorProfile):
def test_create_disable(self):
arglist = [
'--disable',
- '--driver', self.new_flavor_profile.driver,
+ '--driver',
+ self.new_flavor_profile.driver,
]
verifylist = [
('disable', True),
- ('driver', self.new_flavor_profile.driver)
+ ('driver', self.new_flavor_profile.driver),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_service_profile.assert_called_once_with(**{
- 'enabled': False,
- 'driver': self.new_flavor_profile.driver,
- })
+ self.network.create_service_profile.assert_called_once_with(
+ **{
+ 'enabled': False,
+ 'driver': self.new_flavor_profile.driver,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
class TestDeleteFlavorProfile(TestFlavorProfile):
-
# The network flavor_profiles to delete.
_network_flavor_profiles = network_fakes.create_service_profile(count=2)
def setUp(self):
super(TestDeleteFlavorProfile, self).setUp()
self.network.delete_service_profile = mock.Mock(return_value=None)
- self.network.find_service_profile = (
- network_fakes.get_service_profile(
- flavor_profile=self._network_flavor_profiles)
+ self.network.find_service_profile = network_fakes.get_service_profile(
+ flavor_profile=self._network_flavor_profiles
)
# Get the command object to test
self.cmd = network_flavor_profile.DeleteNetworkFlavorProfile(
- self.app, self.namespace)
+ self.app, self.namespace
+ )
def test_network_flavor_profile_delete(self):
arglist = [
@@ -227,9 +251,11 @@ class TestDeleteFlavorProfile(TestFlavorProfile):
result = self.cmd.take_action(parsed_args)
self.network.find_service_profile.assert_called_once_with(
- self._network_flavor_profiles[0].id, ignore_missing=False)
+ self._network_flavor_profiles[0].id, ignore_missing=False
+ )
self.network.delete_service_profile.assert_called_once_with(
- self._network_flavor_profiles[0])
+ self._network_flavor_profiles[0]
+ )
self.assertIsNone(result)
def test_multi_network_flavor_profiles_delete(self):
@@ -256,36 +282,44 @@ class TestDeleteFlavorProfile(TestFlavorProfile):
'unexist_network_flavor_profile',
]
verifylist = [
- ('flavor_profile',
- [self._network_flavor_profiles[0].id,
- 'unexist_network_flavor_profile']),
+ (
+ 'flavor_profile',
+ [
+ self._network_flavor_profiles[0].id,
+ 'unexist_network_flavor_profile',
+ ],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- find_mock_result = [self._network_flavor_profiles[0],
- exceptions.CommandError]
- self.network.find_service_profile = (
- mock.Mock(side_effect=find_mock_result)
+ find_mock_result = [
+ self._network_flavor_profiles[0],
+ exceptions.CommandError,
+ ]
+ self.network.find_service_profile = mock.Mock(
+ side_effect=find_mock_result
)
try:
self.cmd.take_action(parsed_args)
self.fail('CommandError should be raised.')
except exceptions.CommandError as e:
- self.assertEqual('1 of 2 flavor_profiles failed to delete.',
- str(e))
+ self.assertEqual(
+ '1 of 2 flavor_profiles failed to delete.', str(e)
+ )
self.network.find_service_profile.assert_any_call(
- self._network_flavor_profiles[0].id, ignore_missing=False)
+ self._network_flavor_profiles[0].id, ignore_missing=False
+ )
self.network.find_service_profile.assert_any_call(
- 'unexist_network_flavor_profile', ignore_missing=False)
+ 'unexist_network_flavor_profile', ignore_missing=False
+ )
self.network.delete_service_profile.assert_called_once_with(
self._network_flavor_profiles[0]
)
class TestListFlavorProfile(TestFlavorProfile):
-
# The network flavor profiles list
_network_flavor_profiles = network_fakes.create_service_profile(count=2)
@@ -298,22 +332,26 @@ class TestListFlavorProfile(TestFlavorProfile):
)
data = []
for flavor_profile in _network_flavor_profiles:
- data.append((
- flavor_profile.id,
- flavor_profile.driver,
- flavor_profile.is_enabled,
- flavor_profile.meta_info,
- flavor_profile.description,
- ))
+ data.append(
+ (
+ flavor_profile.id,
+ flavor_profile.driver,
+ flavor_profile.is_enabled,
+ flavor_profile.meta_info,
+ flavor_profile.description,
+ )
+ )
def setUp(self):
super(TestListFlavorProfile, self).setUp()
self.network.service_profiles = mock.Mock(
- return_value=self._network_flavor_profiles)
+ return_value=self._network_flavor_profiles
+ )
# Get the command object to test
self.cmd = network_flavor_profile.ListNetworkFlavorProfile(
- self.app, self.namespace)
+ self.app, self.namespace
+ )
def test_network_flavor_profile_list(self):
arglist = []
@@ -328,7 +366,6 @@ class TestListFlavorProfile(TestFlavorProfile):
class TestShowFlavorProfile(TestFlavorProfile):
-
# The network flavor profile to show.
network_flavor_profile = network_fakes.create_one_service_profile()
columns = (
@@ -351,11 +388,13 @@ class TestShowFlavorProfile(TestFlavorProfile):
def setUp(self):
super(TestShowFlavorProfile, self).setUp()
self.network.find_service_profile = mock.Mock(
- return_value=self.network_flavor_profile)
+ return_value=self.network_flavor_profile
+ )
# Get the command object to test
self.cmd = network_flavor_profile.ShowNetworkFlavorProfile(
- self.app, self.namespace)
+ self.app, self.namespace
+ )
def test_show_all_options(self):
arglist = [
@@ -369,13 +408,13 @@ class TestShowFlavorProfile(TestFlavorProfile):
columns, data = self.cmd.take_action(parsed_args)
self.network.find_service_profile.assert_called_once_with(
- self.network_flavor_profile.id, ignore_missing=False)
+ self.network_flavor_profile.id, ignore_missing=False
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
class TestSetFlavorProfile(TestFlavorProfile):
-
# The network flavor profile to set.
network_flavor_profile = network_fakes.create_one_service_profile()
@@ -383,11 +422,13 @@ class TestSetFlavorProfile(TestFlavorProfile):
super(TestSetFlavorProfile, self).setUp()
self.network.update_service_profile = mock.Mock(return_value=None)
self.network.find_service_profile = mock.Mock(
- return_value=self.network_flavor_profile)
+ return_value=self.network_flavor_profile
+ )
# Get the command object to test
self.cmd = network_flavor_profile.SetNetworkFlavorProfile(
- self.app, self.namespace)
+ self.app, self.namespace
+ )
def test_set_nothing(self):
arglist = [self.network_flavor_profile.id]
@@ -400,7 +441,8 @@ class TestSetFlavorProfile(TestFlavorProfile):
attrs = {}
self.network.update_service_profile.assert_called_with(
- self.network_flavor_profile, **attrs)
+ self.network_flavor_profile, **attrs
+ )
self.assertIsNone(result)
def test_set_enable(self):
@@ -419,7 +461,8 @@ class TestSetFlavorProfile(TestFlavorProfile):
'enabled': True,
}
self.network.update_service_profile.assert_called_with(
- self.network_flavor_profile, **attrs)
+ self.network_flavor_profile, **attrs
+ )
self.assertIsNone(result)
def test_set_disable(self):
@@ -438,5 +481,6 @@ class TestSetFlavorProfile(TestFlavorProfile):
'enabled': False,
}
self.network.update_service_profile.assert_called_with(
- self.network_flavor_profile, **attrs)
+ self.network_flavor_profile, **attrs
+ )
self.assertIsNone(result)
diff --git a/openstackclient/tests/unit/network/v2/test_network_meter.py b/openstackclient/tests/unit/network/v2/test_network_meter.py
index 5cedf0f4..f49d0167 100644
--- a/openstackclient/tests/unit/network/v2/test_network_meter.py
+++ b/openstackclient/tests/unit/network/v2/test_network_meter.py
@@ -25,7 +25,6 @@ from openstackclient.tests.unit import utils as tests_utils
class TestMeter(network_fakes.TestNetworkV2):
-
def setUp(self):
super(TestMeter, self).setUp()
self.network = self.app.client_manager.network
@@ -37,10 +36,7 @@ class TestCreateMeter(TestMeter):
project = identity_fakes_v3.FakeProject.create_one_project()
domain = identity_fakes_v3.FakeDomain.create_one_domain()
- new_meter = (
- network_fakes.FakeNetworkMeter.
- create_one_meter()
- )
+ new_meter = network_fakes.FakeNetworkMeter.create_one_meter()
columns = (
'description',
'id',
@@ -60,7 +56,8 @@ class TestCreateMeter(TestMeter):
def setUp(self):
super(TestCreateMeter, self).setUp()
self.network.create_metering_label = mock.Mock(
- return_value=self.new_meter)
+ return_value=self.new_meter
+ )
self.projects_mock.get.return_value = self.project
self.cmd = network_meter.CreateMeter(self.app, self.namespace)
@@ -68,8 +65,13 @@ class TestCreateMeter(TestMeter):
arglist = []
verifylist = []
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_create_default_options(self):
arglist = [
@@ -81,7 +83,7 @@ class TestCreateMeter(TestMeter):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
self.network.create_metering_label.assert_called_once_with(
**{'name': self.new_meter.name}
@@ -91,9 +93,12 @@ class TestCreateMeter(TestMeter):
def test_create_all_options(self):
arglist = [
- "--description", self.new_meter.description,
- "--project", self.new_meter.project_id,
- "--project-domain", self.domain.name,
+ "--description",
+ self.new_meter.description,
+ "--project",
+ self.new_meter.project_id,
+ "--project-domain",
+ self.domain.name,
"--share",
self.new_meter.name,
]
@@ -107,32 +112,31 @@ class TestCreateMeter(TestMeter):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
self.network.create_metering_label.assert_called_once_with(
- **{'description': self.new_meter.description,
- 'name': self.new_meter.name,
- 'project_id': self.project.id,
- 'shared': True, }
+ **{
+ 'description': self.new_meter.description,
+ 'name': self.new_meter.name,
+ 'project_id': self.project.id,
+ 'shared': True,
+ }
)
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
class TestDeleteMeter(TestMeter):
-
def setUp(self):
super(TestDeleteMeter, self).setUp()
- self.meter_list = \
- network_fakes.FakeNetworkMeter.create_meter(count=2)
+ self.meter_list = network_fakes.FakeNetworkMeter.create_meter(count=2)
self.network.delete_metering_label = mock.Mock(return_value=None)
- self.network.find_metering_label = network_fakes \
- .FakeNetworkMeter.get_meter(
- meter=self.meter_list
- )
+ self.network.find_metering_label = (
+ network_fakes.FakeNetworkMeter.get_meter(meter=self.meter_list)
+ )
self.cmd = network_meter.DeleteMeter(self.app, self.namespace)
@@ -196,8 +200,9 @@ class TestDeleteMeter(TestMeter):
]
self.network.delete_metering_label = mock.Mock(side_effect=ret_delete)
- self.assertRaises(exceptions.CommandError, self.cmd.take_action,
- parsed_args)
+ self.assertRaises(
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
calls = [
call(self.meter_list[0]),
@@ -207,9 +212,7 @@ class TestDeleteMeter(TestMeter):
class TestListMeter(TestMeter):
-
- meter_list = \
- network_fakes.FakeNetworkMeter.create_meter(count=2)
+ meter_list = network_fakes.FakeNetworkMeter.create_meter(count=2)
columns = (
'ID',
@@ -221,19 +224,19 @@ class TestListMeter(TestMeter):
data = []
for meters in meter_list:
- data.append((
- meters.id,
- meters.name,
- meters.description,
- meters.shared,
- ))
+ data.append(
+ (
+ meters.id,
+ meters.name,
+ meters.description,
+ meters.shared,
+ )
+ )
def setUp(self):
super(TestListMeter, self).setUp()
- self.network.metering_labels = mock.Mock(
- return_value=self.meter_list
- )
+ self.network.metering_labels = mock.Mock(return_value=self.meter_list)
self.cmd = network_meter.ListMeter(self.app, self.namespace)
@@ -251,10 +254,7 @@ class TestListMeter(TestMeter):
class TestShowMeter(TestMeter):
- new_meter = (
- network_fakes.FakeNetworkMeter.
- create_one_meter()
- )
+ new_meter = network_fakes.FakeNetworkMeter.create_one_meter()
columns = (
'description',
'id',
@@ -276,15 +276,21 @@ class TestShowMeter(TestMeter):
self.cmd = network_meter.ShowMeter(self.app, self.namespace)
- self.network.find_metering_label = \
- mock.Mock(return_value=self.new_meter)
+ self.network.find_metering_label = mock.Mock(
+ return_value=self.new_meter
+ )
def test_show_no_options(self):
arglist = []
verifylist = []
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_meter_show_option(self):
arglist = [
diff --git a/openstackclient/tests/unit/network/v2/test_network_meter_rule.py b/openstackclient/tests/unit/network/v2/test_network_meter_rule.py
index e9224fa6..91093345 100644
--- a/openstackclient/tests/unit/network/v2/test_network_meter_rule.py
+++ b/openstackclient/tests/unit/network/v2/test_network_meter_rule.py
@@ -36,10 +36,7 @@ class TestCreateMeterRule(TestMeterRule):
project = identity_fakes_v3.FakeProject.create_one_project()
domain = identity_fakes_v3.FakeDomain.create_one_domain()
- new_rule = (
- network_fakes.FakeNetworkMeterRule.
- create_one_rule()
- )
+ new_rule = network_fakes.FakeNetworkMeterRule.create_one_rule()
columns = (
'destination_ip_prefix',
@@ -64,28 +61,34 @@ class TestCreateMeterRule(TestMeterRule):
def setUp(self):
super(TestCreateMeterRule, self).setUp()
- fake_meter = network_fakes.FakeNetworkMeter.create_one_meter({
- 'id': self.new_rule.metering_label_id})
+ fake_meter = network_fakes.FakeNetworkMeter.create_one_meter(
+ {'id': self.new_rule.metering_label_id}
+ )
self.network.create_metering_label_rule = mock.Mock(
- return_value=self.new_rule)
+ return_value=self.new_rule
+ )
self.projects_mock.get.return_value = self.project
- self.cmd = network_meter_rule.CreateMeterRule(self.app,
- self.namespace)
- self.network.find_metering_label = mock.Mock(
- return_value=fake_meter)
+ self.cmd = network_meter_rule.CreateMeterRule(self.app, self.namespace)
+ self.network.find_metering_label = mock.Mock(return_value=fake_meter)
def test_create_no_options(self):
arglist = []
verifylist = []
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_create_default_options(self):
arglist = [
self.new_rule.metering_label_id,
- "--remote-ip-prefix", self.new_rule.remote_ip_prefix,
+ "--remote-ip-prefix",
+ self.new_rule.remote_ip_prefix,
]
verifylist = [
('meter', self.new_rule.metering_label_id),
@@ -93,12 +96,14 @@ class TestCreateMeterRule(TestMeterRule):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
self.network.create_metering_label_rule.assert_called_once_with(
- **{'direction': 'ingress',
- 'metering_label_id': self.new_rule.metering_label_id,
- 'remote_ip_prefix': self.new_rule.remote_ip_prefix, }
+ **{
+ 'direction': 'ingress',
+ 'metering_label_id': self.new_rule.metering_label_id,
+ 'remote_ip_prefix': self.new_rule.remote_ip_prefix,
+ }
)
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
@@ -108,7 +113,8 @@ class TestCreateMeterRule(TestMeterRule):
"--ingress",
"--include",
self.new_rule.metering_label_id,
- "--remote-ip-prefix", self.new_rule.remote_ip_prefix,
+ "--remote-ip-prefix",
+ self.new_rule.remote_ip_prefix,
]
verifylist = [
('ingress', True),
@@ -118,13 +124,15 @@ class TestCreateMeterRule(TestMeterRule):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
self.network.create_metering_label_rule.assert_called_once_with(
- **{'direction': self.new_rule.direction,
- 'excluded': self.new_rule.excluded,
- 'metering_label_id': self.new_rule.metering_label_id,
- 'remote_ip_prefix': self.new_rule.remote_ip_prefix, }
+ **{
+ 'direction': self.new_rule.direction,
+ 'excluded': self.new_rule.excluded,
+ 'metering_label_id': self.new_rule.metering_label_id,
+ 'remote_ip_prefix': self.new_rule.remote_ip_prefix,
+ }
)
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
@@ -133,19 +141,18 @@ class TestCreateMeterRule(TestMeterRule):
class TestDeleteMeterRule(TestMeterRule):
def setUp(self):
super(TestDeleteMeterRule, self).setUp()
- self.rule_list = \
- network_fakes.FakeNetworkMeterRule.create_meter_rule(
- count=2
- )
+ self.rule_list = network_fakes.FakeNetworkMeterRule.create_meter_rule(
+ count=2
+ )
self.network.delete_metering_label_rule = mock.Mock(return_value=None)
- self.network.find_metering_label_rule = network_fakes \
- .FakeNetworkMeterRule.get_meter_rule(
+ self.network.find_metering_label_rule = (
+ network_fakes.FakeNetworkMeterRule.get_meter_rule(
meter_rule=self.rule_list
)
+ )
- self.cmd = network_meter_rule.DeleteMeterRule(self.app,
- self.namespace)
+ self.cmd = network_meter_rule.DeleteMeterRule(self.app, self.namespace)
def test_delete_one_rule(self):
arglist = [
@@ -211,8 +218,9 @@ class TestDeleteMeterRule(TestMeterRule):
side_effect=ret_delete
)
- self.assertRaises(exceptions.CommandError, self.cmd.take_action,
- parsed_args)
+ self.assertRaises(
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
calls = [
call(self.rule_list[0]),
@@ -222,10 +230,7 @@ class TestDeleteMeterRule(TestMeterRule):
class TestListMeterRule(TestMeterRule):
- rule_list = \
- network_fakes.FakeNetworkMeterRule.create_meter_rule(
- count=2
- )
+ rule_list = network_fakes.FakeNetworkMeterRule.create_meter_rule(count=2)
columns = (
'ID',
@@ -233,20 +238,22 @@ class TestListMeterRule(TestMeterRule):
'Direction',
'Remote IP Prefix',
'Source IP Prefix',
- 'Destination IP Prefix'
+ 'Destination IP Prefix',
)
data = []
for rule in rule_list:
- data.append((
- rule.id,
- rule.excluded,
- rule.direction,
- rule.remote_ip_prefix,
- rule.source_ip_prefix,
- rule.destination_ip_prefix
- ))
+ data.append(
+ (
+ rule.id,
+ rule.excluded,
+ rule.direction,
+ rule.remote_ip_prefix,
+ rule.source_ip_prefix,
+ rule.destination_ip_prefix,
+ )
+ )
def setUp(self):
super(TestListMeterRule, self).setUp()
@@ -255,8 +262,7 @@ class TestListMeterRule(TestMeterRule):
return_value=self.rule_list
)
- self.cmd = network_meter_rule.ListMeterRule(self.app,
- self.namespace)
+ self.cmd = network_meter_rule.ListMeterRule(self.app, self.namespace)
def test_rule_list(self):
arglist = []
@@ -272,10 +278,7 @@ class TestListMeterRule(TestMeterRule):
class TestShowMeterRule(TestMeterRule):
- new_rule = (
- network_fakes.FakeNetworkMeterRule.
- create_one_rule()
- )
+ new_rule = network_fakes.FakeNetworkMeterRule.create_one_rule()
columns = (
'destination_ip_prefix',
@@ -302,18 +305,23 @@ class TestShowMeterRule(TestMeterRule):
def setUp(self):
super(TestShowMeterRule, self).setUp()
- self.cmd = network_meter_rule.ShowMeterRule(self.app,
- self.namespace)
+ self.cmd = network_meter_rule.ShowMeterRule(self.app, self.namespace)
- self.network.find_metering_label_rule = \
- mock.Mock(return_value=self.new_rule)
+ self.network.find_metering_label_rule = mock.Mock(
+ return_value=self.new_rule
+ )
def test_show_no_options(self):
arglist = []
verifylist = []
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_label_rule_show_option(self):
arglist = [
diff --git a/openstackclient/tests/unit/network/v2/test_network_qos_policy.py b/openstackclient/tests/unit/network/v2/test_network_qos_policy.py
index ca21ccf7..213fc4c0 100644
--- a/openstackclient/tests/unit/network/v2/test_network_qos_policy.py
+++ b/openstackclient/tests/unit/network/v2/test_network_qos_policy.py
@@ -25,7 +25,6 @@ from openstackclient.tests.unit import utils as tests_utils
class TestQosPolicy(network_fakes.TestNetworkV2):
-
def setUp(self):
super(TestQosPolicy, self).setUp()
# Get a shortcut to the network client
@@ -35,16 +34,14 @@ class TestQosPolicy(network_fakes.TestNetworkV2):
class TestCreateNetworkQosPolicy(TestQosPolicy):
-
project = identity_fakes_v3.FakeProject.create_one_project()
# The new qos policy created.
- new_qos_policy = (
- network_fakes.FakeNetworkQosPolicy.create_one_qos_policy(
- attrs={
- 'project_id': project.id,
- }
- ))
+ new_qos_policy = network_fakes.FakeNetworkQosPolicy.create_one_qos_policy(
+ attrs={
+ 'project_id': project.id,
+ }
+ )
columns = (
'description',
'id',
@@ -68,11 +65,13 @@ class TestCreateNetworkQosPolicy(TestQosPolicy):
def setUp(self):
super(TestCreateNetworkQosPolicy, self).setUp()
self.network.create_qos_policy = mock.Mock(
- return_value=self.new_qos_policy)
+ return_value=self.new_qos_policy
+ )
# Get the command object to test
self.cmd = network_qos_policy.CreateNetworkQosPolicy(
- self.app, self.namespace)
+ self.app, self.namespace
+ )
self.projects_mock.get.return_value = self.project
@@ -81,8 +80,13 @@ class TestCreateNetworkQosPolicy(TestQosPolicy):
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_create_default_options(self):
arglist = [
@@ -94,20 +98,22 @@ class TestCreateNetworkQosPolicy(TestQosPolicy):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_qos_policy.assert_called_once_with(**{
- 'name': self.new_qos_policy.name
- })
+ self.network.create_qos_policy.assert_called_once_with(
+ **{'name': self.new_qos_policy.name}
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
def test_create_all_options(self):
arglist = [
'--share',
- '--project', self.project.name,
+ '--project',
+ self.project.name,
self.new_qos_policy.name,
- '--description', 'QoS policy description',
+ '--description',
+ 'QoS policy description',
'--default',
]
verifylist = [
@@ -121,21 +127,20 @@ class TestCreateNetworkQosPolicy(TestQosPolicy):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_qos_policy.assert_called_once_with(**{
- 'shared': True,
- 'project_id': self.project.id,
- 'name': self.new_qos_policy.name,
- 'description': 'QoS policy description',
- 'is_default': True,
- })
+ self.network.create_qos_policy.assert_called_once_with(
+ **{
+ 'shared': True,
+ 'project_id': self.project.id,
+ 'name': self.new_qos_policy.name,
+ 'description': 'QoS policy description',
+ 'is_default': True,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
def test_create_no_default(self):
- arglist = [
- self.new_qos_policy.name,
- '--no-default'
- ]
+ arglist = [self.new_qos_policy.name, '--no-default']
verifylist = [
('project', None),
('name', self.new_qos_policy.name),
@@ -143,33 +148,37 @@ class TestCreateNetworkQosPolicy(TestQosPolicy):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_qos_policy.assert_called_once_with(**{
- 'name': self.new_qos_policy.name,
- 'is_default': False,
- })
+ self.network.create_qos_policy.assert_called_once_with(
+ **{
+ 'name': self.new_qos_policy.name,
+ 'is_default': False,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
class TestDeleteNetworkQosPolicy(TestQosPolicy):
-
# The address scope to delete.
- _qos_policies = (
- network_fakes.FakeNetworkQosPolicy.create_qos_policies(count=2))
+ _qos_policies = network_fakes.FakeNetworkQosPolicy.create_qos_policies(
+ count=2
+ )
def setUp(self):
super(TestDeleteNetworkQosPolicy, self).setUp()
self.network.delete_qos_policy = mock.Mock(return_value=None)
self.network.find_qos_policy = (
network_fakes.FakeNetworkQosPolicy.get_qos_policies(
- qos_policies=self._qos_policies)
+ qos_policies=self._qos_policies
+ )
)
# Get the command object to test
self.cmd = network_qos_policy.DeleteNetworkQosPolicy(
- self.app, self.namespace)
+ self.app, self.namespace
+ )
def test_qos_policy_delete(self):
arglist = [
@@ -183,9 +192,11 @@ class TestDeleteNetworkQosPolicy(TestQosPolicy):
result = self.cmd.take_action(parsed_args)
self.network.find_qos_policy.assert_called_once_with(
- self._qos_policies[0].name, ignore_missing=False)
+ self._qos_policies[0].name, ignore_missing=False
+ )
self.network.delete_qos_policy.assert_called_once_with(
- self._qos_policies[0])
+ self._qos_policies[0]
+ )
self.assertIsNone(result)
def test_multi_qos_policies_delete(self):
@@ -212,14 +223,13 @@ class TestDeleteNetworkQosPolicy(TestQosPolicy):
'unexist_qos_policy',
]
verifylist = [
- ('policy',
- [self._qos_policies[0].name, 'unexist_qos_policy']),
+ ('policy', [self._qos_policies[0].name, 'unexist_qos_policy']),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
find_mock_result = [self._qos_policies[0], exceptions.CommandError]
- self.network.find_qos_policy = (
- mock.MagicMock(side_effect=find_mock_result)
+ self.network.find_qos_policy = mock.MagicMock(
+ side_effect=find_mock_result
)
try:
@@ -229,19 +239,21 @@ class TestDeleteNetworkQosPolicy(TestQosPolicy):
self.assertEqual('1 of 2 QoS policies failed to delete.', str(e))
self.network.find_qos_policy.assert_any_call(
- self._qos_policies[0].name, ignore_missing=False)
+ self._qos_policies[0].name, ignore_missing=False
+ )
self.network.find_qos_policy.assert_any_call(
- 'unexist_qos_policy', ignore_missing=False)
+ 'unexist_qos_policy', ignore_missing=False
+ )
self.network.delete_qos_policy.assert_called_once_with(
self._qos_policies[0]
)
class TestListNetworkQosPolicy(TestQosPolicy):
-
# The QoS policies to list up.
- qos_policies = (
- network_fakes.FakeNetworkQosPolicy.create_qos_policies(count=3))
+ qos_policies = network_fakes.FakeNetworkQosPolicy.create_qos_policies(
+ count=3
+ )
columns = (
'ID',
'Name',
@@ -251,21 +263,24 @@ class TestListNetworkQosPolicy(TestQosPolicy):
)
data = []
for qos_policy in qos_policies:
- data.append((
- qos_policy.id,
- qos_policy.name,
- qos_policy.shared,
- qos_policy.is_default,
- qos_policy.project_id,
- ))
+ data.append(
+ (
+ qos_policy.id,
+ qos_policy.name,
+ qos_policy.shared,
+ qos_policy.is_default,
+ qos_policy.project_id,
+ )
+ )
def setUp(self):
super(TestListNetworkQosPolicy, self).setUp()
self.network.qos_policies = mock.Mock(return_value=self.qos_policies)
# Get the command object to test
- self.cmd = network_qos_policy.ListNetworkQosPolicy(self.app,
- self.namespace)
+ self.cmd = network_qos_policy.ListNetworkQosPolicy(
+ self.app, self.namespace
+ )
def test_qos_policy_list(self):
arglist = []
@@ -289,9 +304,7 @@ class TestListNetworkQosPolicy(TestQosPolicy):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.qos_policies.assert_called_once_with(
- **{'shared': True}
- )
+ self.network.qos_policies.assert_called_once_with(**{'shared': True})
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, list(data))
@@ -305,9 +318,7 @@ class TestListNetworkQosPolicy(TestQosPolicy):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.qos_policies.assert_called_once_with(
- **{'shared': False}
- )
+ self.network.qos_policies.assert_called_once_with(**{'shared': False})
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, list(data))
@@ -315,8 +326,10 @@ class TestListNetworkQosPolicy(TestQosPolicy):
project = identity_fakes_v3.FakeProject.create_one_project()
self.projects_mock.get.return_value = project
arglist = [
- '--project', project.id,
- '--project-domain', project.domain_id,
+ '--project',
+ project.id,
+ '--project-domain',
+ project.domain_id,
]
verifylist = [
('project', project.id),
@@ -333,22 +346,23 @@ class TestListNetworkQosPolicy(TestQosPolicy):
class TestSetNetworkQosPolicy(TestQosPolicy):
-
# The QoS policy to set.
_qos_policy = network_fakes.FakeNetworkQosPolicy.create_one_qos_policy()
def setUp(self):
super(TestSetNetworkQosPolicy, self).setUp()
self.network.update_qos_policy = mock.Mock(return_value=None)
- self.network.find_qos_policy = mock.Mock(
- return_value=self._qos_policy)
+ self.network.find_qos_policy = mock.Mock(return_value=self._qos_policy)
# Get the command object to test
- self.cmd = network_qos_policy.SetNetworkQosPolicy(self.app,
- self.namespace)
+ self.cmd = network_qos_policy.SetNetworkQosPolicy(
+ self.app, self.namespace
+ )
def test_set_nothing(self):
- arglist = [self._qos_policy.name, ]
+ arglist = [
+ self._qos_policy.name,
+ ]
verifylist = [
('policy', self._qos_policy.name),
]
@@ -358,14 +372,17 @@ class TestSetNetworkQosPolicy(TestQosPolicy):
attrs = {}
self.network.update_qos_policy.assert_called_with(
- self._qos_policy, **attrs)
+ self._qos_policy, **attrs
+ )
self.assertIsNone(result)
def test_set_name_share_description_default(self):
arglist = [
- '--name', 'new_qos_policy',
+ '--name',
+ 'new_qos_policy',
'--share',
- '--description', 'QoS policy description',
+ '--description',
+ 'QoS policy description',
'--default',
self._qos_policy.name,
]
@@ -386,7 +403,8 @@ class TestSetNetworkQosPolicy(TestQosPolicy):
'is_default': True,
}
self.network.update_qos_policy.assert_called_with(
- self._qos_policy, **attrs)
+ self._qos_policy, **attrs
+ )
self.assertIsNone(result)
def test_set_no_share_no_default(self):
@@ -403,20 +421,16 @@ class TestSetNetworkQosPolicy(TestQosPolicy):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
- attrs = {
- 'shared': False,
- 'is_default': False
- }
+ attrs = {'shared': False, 'is_default': False}
self.network.update_qos_policy.assert_called_with(
- self._qos_policy, **attrs)
+ self._qos_policy, **attrs
+ )
self.assertIsNone(result)
class TestShowNetworkQosPolicy(TestQosPolicy):
-
# The QoS policy to show.
- _qos_policy = (
- network_fakes.FakeNetworkQosPolicy.create_one_qos_policy())
+ _qos_policy = network_fakes.FakeNetworkQosPolicy.create_one_qos_policy()
columns = (
'description',
'id',
@@ -441,16 +455,22 @@ class TestShowNetworkQosPolicy(TestQosPolicy):
self.network.find_qos_policy = mock.Mock(return_value=self._qos_policy)
# Get the command object to test
- self.cmd = network_qos_policy.ShowNetworkQosPolicy(self.app,
- self.namespace)
+ self.cmd = network_qos_policy.ShowNetworkQosPolicy(
+ self.app, self.namespace
+ )
def test_show_no_options(self):
arglist = []
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_show_all_options(self):
arglist = [
@@ -464,6 +484,7 @@ class TestShowNetworkQosPolicy(TestQosPolicy):
columns, data = self.cmd.take_action(parsed_args)
self.network.find_qos_policy.assert_called_once_with(
- self._qos_policy.name, ignore_missing=False)
+ self._qos_policy.name, ignore_missing=False
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(list(self.data), list(data))
diff --git a/openstackclient/tests/unit/network/v2/test_network_qos_rule.py b/openstackclient/tests/unit/network/v2/test_network_qos_rule.py
index c7de8160..0e717052 100644
--- a/openstackclient/tests/unit/network/v2/test_network_qos_rule.py
+++ b/openstackclient/tests/unit/network/v2/test_network_qos_rule.py
@@ -26,39 +26,62 @@ RULE_TYPE_BANDWIDTH_LIMIT = 'bandwidth-limit'
RULE_TYPE_DSCP_MARKING = 'dscp-marking'
RULE_TYPE_MINIMUM_BANDWIDTH = 'minimum-bandwidth'
RULE_TYPE_MINIMUM_PACKET_RATE = 'minimum-packet-rate'
-DSCP_VALID_MARKS = [0, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32,
- 34, 36, 38, 40, 46, 48, 56]
+DSCP_VALID_MARKS = [
+ 0,
+ 8,
+ 10,
+ 12,
+ 14,
+ 16,
+ 18,
+ 20,
+ 22,
+ 24,
+ 26,
+ 28,
+ 30,
+ 32,
+ 34,
+ 36,
+ 38,
+ 40,
+ 46,
+ 48,
+ 56,
+]
class TestNetworkQosRule(network_fakes.TestNetworkV2):
-
def setUp(self):
super(TestNetworkQosRule, self).setUp()
# Get a shortcut to the network client
self.network = self.app.client_manager.network
- self.qos_policy = (network_fakes.FakeNetworkQosPolicy.
- create_one_qos_policy())
+ self.qos_policy = (
+ network_fakes.FakeNetworkQosPolicy.create_one_qos_policy()
+ )
self.network.find_qos_policy = mock.Mock(return_value=self.qos_policy)
class TestCreateNetworkQosRuleMinimumBandwidth(TestNetworkQosRule):
-
def test_check_type_parameters(self):
pass
def setUp(self):
super(TestCreateNetworkQosRuleMinimumBandwidth, self).setUp()
- attrs = {'qos_policy_id': self.qos_policy.id,
- 'type': RULE_TYPE_MINIMUM_BANDWIDTH}
+ attrs = {
+ 'qos_policy_id': self.qos_policy.id,
+ 'type': RULE_TYPE_MINIMUM_BANDWIDTH,
+ }
self.new_rule = network_fakes.FakeNetworkQosRule.create_one_qos_rule(
- attrs)
+ attrs
+ )
self.columns = (
'direction',
'id',
'min_kbps',
'project_id',
'qos_policy_id',
- 'type'
+ 'type',
)
self.data = (
@@ -70,24 +93,33 @@ class TestCreateNetworkQosRuleMinimumBandwidth(TestNetworkQosRule):
self.new_rule.type,
)
self.network.create_qos_minimum_bandwidth_rule = mock.Mock(
- return_value=self.new_rule)
+ return_value=self.new_rule
+ )
# Get the command object to test
- self.cmd = network_qos_rule.CreateNetworkQosRule(self.app,
- self.namespace)
+ self.cmd = network_qos_rule.CreateNetworkQosRule(
+ self.app, self.namespace
+ )
def test_create_no_options(self):
arglist = []
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_create_default_options(self):
arglist = [
- '--type', RULE_TYPE_MINIMUM_BANDWIDTH,
- '--min-kbps', str(self.new_rule.min_kbps),
+ '--type',
+ RULE_TYPE_MINIMUM_BANDWIDTH,
+ '--min-kbps',
+ str(self.new_rule.min_kbps),
'--egress',
self.new_rule.qos_policy_id,
]
@@ -100,20 +132,24 @@ class TestCreateNetworkQosRuleMinimumBandwidth(TestNetworkQosRule):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
self.network.create_qos_minimum_bandwidth_rule.assert_called_once_with(
self.qos_policy.id,
- **{'min_kbps': self.new_rule.min_kbps,
- 'direction': self.new_rule.direction}
+ **{
+ 'min_kbps': self.new_rule.min_kbps,
+ 'direction': self.new_rule.direction,
+ }
)
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
def test_create_wrong_options(self):
arglist = [
- '--type', RULE_TYPE_MINIMUM_BANDWIDTH,
- '--max-kbps', '10000',
+ '--type',
+ RULE_TYPE_MINIMUM_BANDWIDTH,
+ '--max-kbps',
+ '10000',
self.new_rule.qos_policy_id,
]
@@ -127,30 +163,34 @@ class TestCreateNetworkQosRuleMinimumBandwidth(TestNetworkQosRule):
try:
self.cmd.take_action(parsed_args)
except exceptions.CommandError as e:
- msg = ('Failed to create Network QoS rule: "Create" rule command '
- 'for type "minimum-bandwidth" requires arguments: '
- 'direction, min_kbps')
+ msg = (
+ 'Failed to create Network QoS rule: "Create" rule command '
+ 'for type "minimum-bandwidth" requires arguments: '
+ 'direction, min_kbps'
+ )
self.assertEqual(msg, str(e))
class TestCreateNetworkQosRuleMinimumPacketRate(TestNetworkQosRule):
-
def test_check_type_parameters(self):
pass
def setUp(self):
super(TestCreateNetworkQosRuleMinimumPacketRate, self).setUp()
- attrs = {'qos_policy_id': self.qos_policy.id,
- 'type': RULE_TYPE_MINIMUM_PACKET_RATE}
+ attrs = {
+ 'qos_policy_id': self.qos_policy.id,
+ 'type': RULE_TYPE_MINIMUM_PACKET_RATE,
+ }
self.new_rule = network_fakes.FakeNetworkQosRule.create_one_qos_rule(
- attrs)
+ attrs
+ )
self.columns = (
'direction',
'id',
'min_kpps',
'project_id',
'qos_policy_id',
- 'type'
+ 'type',
)
self.data = (
@@ -162,24 +202,33 @@ class TestCreateNetworkQosRuleMinimumPacketRate(TestNetworkQosRule):
self.new_rule.type,
)
self.network.create_qos_minimum_packet_rate_rule = mock.Mock(
- return_value=self.new_rule)
+ return_value=self.new_rule
+ )
# Get the command object to test
- self.cmd = network_qos_rule.CreateNetworkQosRule(self.app,
- self.namespace)
+ self.cmd = network_qos_rule.CreateNetworkQosRule(
+ self.app, self.namespace
+ )
def test_create_no_options(self):
arglist = []
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_create_default_options(self):
arglist = [
- '--type', RULE_TYPE_MINIMUM_PACKET_RATE,
- '--min-kpps', str(self.new_rule.min_kpps),
+ '--type',
+ RULE_TYPE_MINIMUM_PACKET_RATE,
+ '--min-kpps',
+ str(self.new_rule.min_kpps),
'--egress',
self.new_rule.qos_policy_id,
]
@@ -192,20 +241,24 @@ class TestCreateNetworkQosRuleMinimumPacketRate(TestNetworkQosRule):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_qos_minimum_packet_rate_rule.\
- assert_called_once_with(
- self.qos_policy.id,
- **{'min_kpps': self.new_rule.min_kpps,
- 'direction': self.new_rule.direction})
+ self.network.create_qos_minimum_packet_rate_rule.assert_called_once_with( # noqa: E501
+ self.qos_policy.id,
+ **{
+ 'min_kpps': self.new_rule.min_kpps,
+ 'direction': self.new_rule.direction,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
def test_create_wrong_options(self):
arglist = [
- '--type', RULE_TYPE_MINIMUM_PACKET_RATE,
- '--min-kbps', '10000',
+ '--type',
+ RULE_TYPE_MINIMUM_PACKET_RATE,
+ '--min-kbps',
+ '10000',
self.new_rule.qos_policy_id,
]
@@ -219,29 +272,33 @@ class TestCreateNetworkQosRuleMinimumPacketRate(TestNetworkQosRule):
try:
self.cmd.take_action(parsed_args)
except exceptions.CommandError as e:
- msg = ('Failed to create Network QoS rule: "Create" rule command '
- 'for type "minimum-packet-rate" requires arguments: '
- 'direction, min_kpps')
+ msg = (
+ 'Failed to create Network QoS rule: "Create" rule command '
+ 'for type "minimum-packet-rate" requires arguments: '
+ 'direction, min_kpps'
+ )
self.assertEqual(msg, str(e))
class TestCreateNetworkQosRuleDSCPMarking(TestNetworkQosRule):
-
def test_check_type_parameters(self):
pass
def setUp(self):
super(TestCreateNetworkQosRuleDSCPMarking, self).setUp()
- attrs = {'qos_policy_id': self.qos_policy.id,
- 'type': RULE_TYPE_DSCP_MARKING}
+ attrs = {
+ 'qos_policy_id': self.qos_policy.id,
+ 'type': RULE_TYPE_DSCP_MARKING,
+ }
self.new_rule = network_fakes.FakeNetworkQosRule.create_one_qos_rule(
- attrs)
+ attrs
+ )
self.columns = (
'dscp_mark',
'id',
'project_id',
'qos_policy_id',
- 'type'
+ 'type',
)
self.data = (
@@ -252,24 +309,33 @@ class TestCreateNetworkQosRuleDSCPMarking(TestNetworkQosRule):
self.new_rule.type,
)
self.network.create_qos_dscp_marking_rule = mock.Mock(
- return_value=self.new_rule)
+ return_value=self.new_rule
+ )
# Get the command object to test
- self.cmd = network_qos_rule.CreateNetworkQosRule(self.app,
- self.namespace)
+ self.cmd = network_qos_rule.CreateNetworkQosRule(
+ self.app, self.namespace
+ )
def test_create_no_options(self):
arglist = []
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_create_default_options(self):
arglist = [
- '--type', RULE_TYPE_DSCP_MARKING,
- '--dscp-mark', str(self.new_rule.dscp_mark),
+ '--type',
+ RULE_TYPE_DSCP_MARKING,
+ '--dscp-mark',
+ str(self.new_rule.dscp_mark),
self.new_rule.qos_policy_id,
]
@@ -283,16 +349,17 @@ class TestCreateNetworkQosRuleDSCPMarking(TestNetworkQosRule):
columns, data = self.cmd.take_action(parsed_args)
self.network.create_qos_dscp_marking_rule.assert_called_once_with(
- self.qos_policy.id,
- **{'dscp_mark': self.new_rule.dscp_mark}
+ self.qos_policy.id, **{'dscp_mark': self.new_rule.dscp_mark}
)
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
def test_create_wrong_options(self):
arglist = [
- '--type', RULE_TYPE_DSCP_MARKING,
- '--max-kbps', '10000',
+ '--type',
+ RULE_TYPE_DSCP_MARKING,
+ '--max-kbps',
+ '10000',
self.new_rule.qos_policy_id,
]
@@ -306,22 +373,26 @@ class TestCreateNetworkQosRuleDSCPMarking(TestNetworkQosRule):
try:
self.cmd.take_action(parsed_args)
except exceptions.CommandError as e:
- msg = ('Failed to create Network QoS rule: "Create" rule command '
- 'for type "dscp-marking" requires arguments: dscp_mark')
+ msg = (
+ 'Failed to create Network QoS rule: "Create" rule command '
+ 'for type "dscp-marking" requires arguments: dscp_mark'
+ )
self.assertEqual(msg, str(e))
class TestCreateNetworkQosRuleBandwidtLimit(TestNetworkQosRule):
-
def test_check_type_parameters(self):
pass
def setUp(self):
super(TestCreateNetworkQosRuleBandwidtLimit, self).setUp()
- attrs = {'qos_policy_id': self.qos_policy.id,
- 'type': RULE_TYPE_BANDWIDTH_LIMIT}
+ attrs = {
+ 'qos_policy_id': self.qos_policy.id,
+ 'type': RULE_TYPE_BANDWIDTH_LIMIT,
+ }
self.new_rule = network_fakes.FakeNetworkQosRule.create_one_qos_rule(
- attrs)
+ attrs
+ )
self.columns = (
'direction',
'id',
@@ -329,7 +400,7 @@ class TestCreateNetworkQosRuleBandwidtLimit(TestNetworkQosRule):
'max_kbps',
'project_id',
'qos_policy_id',
- 'type'
+ 'type',
)
self.data = (
@@ -342,24 +413,33 @@ class TestCreateNetworkQosRuleBandwidtLimit(TestNetworkQosRule):
self.new_rule.type,
)
self.network.create_qos_bandwidth_limit_rule = mock.Mock(
- return_value=self.new_rule)
+ return_value=self.new_rule
+ )
# Get the command object to test
- self.cmd = network_qos_rule.CreateNetworkQosRule(self.app,
- self.namespace)
+ self.cmd = network_qos_rule.CreateNetworkQosRule(
+ self.app, self.namespace
+ )
def test_create_no_options(self):
arglist = []
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_create_default_options(self):
arglist = [
- '--type', RULE_TYPE_BANDWIDTH_LIMIT,
- '--max-kbps', str(self.new_rule.max_kbps),
+ '--type',
+ RULE_TYPE_BANDWIDTH_LIMIT,
+ '--max-kbps',
+ str(self.new_rule.max_kbps),
'--egress',
self.new_rule.qos_policy_id,
]
@@ -372,8 +452,11 @@ class TestCreateNetworkQosRuleBandwidtLimit(TestNetworkQosRule):
]
rule = network_fakes.FakeNetworkQosRule.create_one_qos_rule(
- {'qos_policy_id': self.qos_policy.id,
- 'type': RULE_TYPE_BANDWIDTH_LIMIT})
+ {
+ 'qos_policy_id': self.qos_policy.id,
+ 'type': RULE_TYPE_BANDWIDTH_LIMIT,
+ }
+ )
rule.max_burst_kbits = 0
expected_data = (
rule.direction,
@@ -386,24 +469,29 @@ class TestCreateNetworkQosRuleBandwidtLimit(TestNetworkQosRule):
)
with mock.patch.object(
- self.network, "create_qos_bandwidth_limit_rule",
- return_value=rule) as create_qos_bandwidth_limit_rule:
+ self.network, "create_qos_bandwidth_limit_rule", return_value=rule
+ ) as create_qos_bandwidth_limit_rule:
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
create_qos_bandwidth_limit_rule.assert_called_once_with(
self.qos_policy.id,
- **{'max_kbps': self.new_rule.max_kbps,
- 'direction': self.new_rule.direction}
+ **{
+ 'max_kbps': self.new_rule.max_kbps,
+ 'direction': self.new_rule.direction,
+ }
)
self.assertEqual(self.columns, columns)
self.assertEqual(expected_data, data)
def test_create_all_options(self):
arglist = [
- '--type', RULE_TYPE_BANDWIDTH_LIMIT,
- '--max-kbps', str(self.new_rule.max_kbps),
- '--max-burst-kbits', str(self.new_rule.max_burst_kbits),
+ '--type',
+ RULE_TYPE_BANDWIDTH_LIMIT,
+ '--max-kbps',
+ str(self.new_rule.max_kbps),
+ '--max-burst-kbits',
+ str(self.new_rule.max_burst_kbits),
'--egress',
self.new_rule.qos_policy_id,
]
@@ -417,21 +505,25 @@ class TestCreateNetworkQosRuleBandwidtLimit(TestNetworkQosRule):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
self.network.create_qos_bandwidth_limit_rule.assert_called_once_with(
self.qos_policy.id,
- **{'max_kbps': self.new_rule.max_kbps,
- 'max_burst_kbps': self.new_rule.max_burst_kbits,
- 'direction': self.new_rule.direction}
+ **{
+ 'max_kbps': self.new_rule.max_kbps,
+ 'max_burst_kbps': self.new_rule.max_burst_kbits,
+ 'direction': self.new_rule.direction,
+ }
)
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
def test_create_wrong_options(self):
arglist = [
- '--type', RULE_TYPE_BANDWIDTH_LIMIT,
- '--min-kbps', '10000',
+ '--type',
+ RULE_TYPE_BANDWIDTH_LIMIT,
+ '--min-kbps',
+ '10000',
self.new_rule.qos_policy_id,
]
@@ -445,30 +537,37 @@ class TestCreateNetworkQosRuleBandwidtLimit(TestNetworkQosRule):
try:
self.cmd.take_action(parsed_args)
except exceptions.CommandError as e:
- msg = ('Failed to create Network QoS rule: "Create" rule command '
- 'for type "bandwidth-limit" requires arguments: max_kbps')
+ msg = (
+ 'Failed to create Network QoS rule: "Create" rule command '
+ 'for type "bandwidth-limit" requires arguments: max_kbps'
+ )
self.assertEqual(msg, str(e))
class TestDeleteNetworkQosRuleMinimumBandwidth(TestNetworkQosRule):
-
def setUp(self):
super(TestDeleteNetworkQosRuleMinimumBandwidth, self).setUp()
- attrs = {'qos_policy_id': self.qos_policy.id,
- 'type': RULE_TYPE_MINIMUM_BANDWIDTH}
+ attrs = {
+ 'qos_policy_id': self.qos_policy.id,
+ 'type': RULE_TYPE_MINIMUM_BANDWIDTH,
+ }
self.new_rule = network_fakes.FakeNetworkQosRule.create_one_qos_rule(
- attrs)
+ attrs
+ )
self.qos_policy.rules = [self.new_rule]
self.network.delete_qos_minimum_bandwidth_rule = mock.Mock(
- return_value=None)
+ return_value=None
+ )
self.network.find_qos_minimum_bandwidth_rule = (
network_fakes.FakeNetworkQosRule.get_qos_rules(
- qos_rules=self.new_rule)
+ qos_rules=self.new_rule
+ )
)
# Get the command object to test
- self.cmd = network_qos_rule.DeleteNetworkQosRule(self.app,
- self.namespace)
+ self.cmd = network_qos_rule.DeleteNetworkQosRule(
+ self.app, self.namespace
+ )
def test_qos_policy_delete(self):
arglist = [
@@ -483,9 +582,11 @@ class TestDeleteNetworkQosRuleMinimumBandwidth(TestNetworkQosRule):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.network.find_qos_policy.assert_called_once_with(
- self.qos_policy.id, ignore_missing=False)
+ self.qos_policy.id, ignore_missing=False
+ )
self.network.delete_qos_minimum_bandwidth_rule.assert_called_once_with(
- self.new_rule.id, self.qos_policy.id)
+ self.new_rule.id, self.qos_policy.id
+ )
self.assertIsNone(result)
def test_qos_policy_delete_error(self):
@@ -498,36 +599,44 @@ class TestDeleteNetworkQosRuleMinimumBandwidth(TestNetworkQosRule):
('id', self.new_rule.id),
]
- self.network.delete_qos_minimum_bandwidth_rule.side_effect = \
- Exception('Error message')
+ self.network.delete_qos_minimum_bandwidth_rule.side_effect = Exception(
+ 'Error message'
+ )
try:
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
self.cmd.take_action(parsed_args)
except exceptions.CommandError as e:
- msg = ('Failed to delete Network QoS rule ID "%(rule)s": %(e)s' %
- {'rule': self.new_rule.id, 'e': 'Error message'})
+ msg = 'Failed to delete Network QoS rule ID "%(rule)s": %(e)s' % {
+ 'rule': self.new_rule.id,
+ 'e': 'Error message',
+ }
self.assertEqual(msg, str(e))
class TestDeleteNetworkQosRuleMinimumPacketRate(TestNetworkQosRule):
-
def setUp(self):
super(TestDeleteNetworkQosRuleMinimumPacketRate, self).setUp()
- attrs = {'qos_policy_id': self.qos_policy.id,
- 'type': RULE_TYPE_MINIMUM_PACKET_RATE}
+ attrs = {
+ 'qos_policy_id': self.qos_policy.id,
+ 'type': RULE_TYPE_MINIMUM_PACKET_RATE,
+ }
self.new_rule = network_fakes.FakeNetworkQosRule.create_one_qos_rule(
- attrs)
+ attrs
+ )
self.qos_policy.rules = [self.new_rule]
self.network.delete_qos_minimum_packet_rate_rule = mock.Mock(
- return_value=None)
+ return_value=None
+ )
self.network.find_qos_minimum_packet_rate_rule = (
network_fakes.FakeNetworkQosRule.get_qos_rules(
- qos_rules=self.new_rule)
+ qos_rules=self.new_rule
+ )
)
# Get the command object to test
- self.cmd = network_qos_rule.DeleteNetworkQosRule(self.app,
- self.namespace)
+ self.cmd = network_qos_rule.DeleteNetworkQosRule(
+ self.app, self.namespace
+ )
def test_qos_policy_delete(self):
arglist = [
@@ -542,9 +651,11 @@ class TestDeleteNetworkQosRuleMinimumPacketRate(TestNetworkQosRule):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.network.find_qos_policy.assert_called_once_with(
- self.qos_policy.id, ignore_missing=False)
- self.network.delete_qos_minimum_packet_rate_rule.\
- assert_called_once_with(self.new_rule.id, self.qos_policy.id)
+ self.qos_policy.id, ignore_missing=False
+ )
+ self.network.delete_qos_minimum_packet_rate_rule.assert_called_once_with( # noqa: E501
+ self.new_rule.id, self.qos_policy.id
+ )
self.assertIsNone(result)
def test_qos_policy_delete_error(self):
@@ -557,36 +668,44 @@ class TestDeleteNetworkQosRuleMinimumPacketRate(TestNetworkQosRule):
('id', self.new_rule.id),
]
- self.network.delete_qos_minimum_packet_rate_rule.side_effect = \
+ self.network.delete_qos_minimum_packet_rate_rule.side_effect = (
Exception('Error message')
+ )
try:
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
self.cmd.take_action(parsed_args)
except exceptions.CommandError as e:
- msg = ('Failed to delete Network QoS rule ID "%(rule)s": %(e)s' %
- {'rule': self.new_rule.id, 'e': 'Error message'})
+ msg = 'Failed to delete Network QoS rule ID "%(rule)s": %(e)s' % {
+ 'rule': self.new_rule.id,
+ 'e': 'Error message',
+ }
self.assertEqual(msg, str(e))
class TestDeleteNetworkQosRuleDSCPMarking(TestNetworkQosRule):
-
def setUp(self):
super(TestDeleteNetworkQosRuleDSCPMarking, self).setUp()
- attrs = {'qos_policy_id': self.qos_policy.id,
- 'type': RULE_TYPE_DSCP_MARKING}
+ attrs = {
+ 'qos_policy_id': self.qos_policy.id,
+ 'type': RULE_TYPE_DSCP_MARKING,
+ }
self.new_rule = network_fakes.FakeNetworkQosRule.create_one_qos_rule(
- attrs)
+ attrs
+ )
self.qos_policy.rules = [self.new_rule]
self.network.delete_qos_dscp_marking_rule = mock.Mock(
- return_value=None)
+ return_value=None
+ )
self.network.find_qos_dscp_marking_rule = (
network_fakes.FakeNetworkQosRule.get_qos_rules(
- qos_rules=self.new_rule)
+ qos_rules=self.new_rule
+ )
)
# Get the command object to test
- self.cmd = network_qos_rule.DeleteNetworkQosRule(self.app,
- self.namespace)
+ self.cmd = network_qos_rule.DeleteNetworkQosRule(
+ self.app, self.namespace
+ )
def test_qos_policy_delete(self):
arglist = [
@@ -601,9 +720,11 @@ class TestDeleteNetworkQosRuleDSCPMarking(TestNetworkQosRule):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.network.find_qos_policy.assert_called_once_with(
- self.qos_policy.id, ignore_missing=False)
+ self.qos_policy.id, ignore_missing=False
+ )
self.network.delete_qos_dscp_marking_rule.assert_called_once_with(
- self.new_rule.id, self.qos_policy.id)
+ self.new_rule.id, self.qos_policy.id
+ )
self.assertIsNone(result)
def test_qos_policy_delete_error(self):
@@ -616,36 +737,44 @@ class TestDeleteNetworkQosRuleDSCPMarking(TestNetworkQosRule):
('id', self.new_rule.id),
]
- self.network.delete_qos_dscp_marking_rule.side_effect = \
- Exception('Error message')
+ self.network.delete_qos_dscp_marking_rule.side_effect = Exception(
+ 'Error message'
+ )
try:
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
self.cmd.take_action(parsed_args)
except exceptions.CommandError as e:
- msg = ('Failed to delete Network QoS rule ID "%(rule)s": %(e)s' %
- {'rule': self.new_rule.id, 'e': 'Error message'})
+ msg = 'Failed to delete Network QoS rule ID "%(rule)s": %(e)s' % {
+ 'rule': self.new_rule.id,
+ 'e': 'Error message',
+ }
self.assertEqual(msg, str(e))
class TestDeleteNetworkQosRuleBandwidthLimit(TestNetworkQosRule):
-
def setUp(self):
super(TestDeleteNetworkQosRuleBandwidthLimit, self).setUp()
- attrs = {'qos_policy_id': self.qos_policy.id,
- 'type': RULE_TYPE_BANDWIDTH_LIMIT}
+ attrs = {
+ 'qos_policy_id': self.qos_policy.id,
+ 'type': RULE_TYPE_BANDWIDTH_LIMIT,
+ }
self.new_rule = network_fakes.FakeNetworkQosRule.create_one_qos_rule(
- attrs)
+ attrs
+ )
self.qos_policy.rules = [self.new_rule]
self.network.delete_qos_bandwidth_limit_rule = mock.Mock(
- return_value=None)
+ return_value=None
+ )
self.network.find_qos_bandwidth_limit_rule = (
network_fakes.FakeNetworkQosRule.get_qos_rules(
- qos_rules=self.new_rule)
+ qos_rules=self.new_rule
+ )
)
# Get the command object to test
- self.cmd = network_qos_rule.DeleteNetworkQosRule(self.app,
- self.namespace)
+ self.cmd = network_qos_rule.DeleteNetworkQosRule(
+ self.app, self.namespace
+ )
def test_qos_policy_delete(self):
arglist = [
@@ -660,9 +789,11 @@ class TestDeleteNetworkQosRuleBandwidthLimit(TestNetworkQosRule):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.network.find_qos_policy.assert_called_once_with(
- self.qos_policy.id, ignore_missing=False)
+ self.qos_policy.id, ignore_missing=False
+ )
self.network.delete_qos_bandwidth_limit_rule.assert_called_once_with(
- self.new_rule.id, self.qos_policy.id)
+ self.new_rule.id, self.qos_policy.id
+ )
self.assertIsNone(result)
def test_qos_policy_delete_error(self):
@@ -675,36 +806,41 @@ class TestDeleteNetworkQosRuleBandwidthLimit(TestNetworkQosRule):
('id', self.new_rule.id),
]
- self.network.delete_qos_bandwidth_limit_rule.side_effect = \
- Exception('Error message')
+ self.network.delete_qos_bandwidth_limit_rule.side_effect = Exception(
+ 'Error message'
+ )
try:
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
self.cmd.take_action(parsed_args)
except exceptions.CommandError as e:
- msg = ('Failed to delete Network QoS rule ID "%(rule)s": %(e)s' %
- {'rule': self.new_rule.id, 'e': 'Error message'})
+ msg = 'Failed to delete Network QoS rule ID "%(rule)s": %(e)s' % {
+ 'rule': self.new_rule.id,
+ 'e': 'Error message',
+ }
self.assertEqual(msg, str(e))
class TestSetNetworkQosRuleMinimumBandwidth(TestNetworkQosRule):
-
def setUp(self):
super(TestSetNetworkQosRuleMinimumBandwidth, self).setUp()
- attrs = {'qos_policy_id': self.qos_policy.id,
- 'type': RULE_TYPE_MINIMUM_BANDWIDTH}
+ attrs = {
+ 'qos_policy_id': self.qos_policy.id,
+ 'type': RULE_TYPE_MINIMUM_BANDWIDTH,
+ }
self.new_rule = network_fakes.FakeNetworkQosRule.create_one_qos_rule(
- attrs=attrs)
+ attrs=attrs
+ )
self.qos_policy.rules = [self.new_rule]
self.network.update_qos_minimum_bandwidth_rule = mock.Mock(
- return_value=None)
+ return_value=None
+ )
self.network.find_qos_minimum_bandwidth_rule = mock.Mock(
- return_value=self.new_rule)
- self.network.find_qos_policy = mock.Mock(
- return_value=self.qos_policy)
+ return_value=self.new_rule
+ )
+ self.network.find_qos_policy = mock.Mock(return_value=self.qos_policy)
# Get the command object to test
- self.cmd = (network_qos_rule.SetNetworkQosRule(self.app,
- self.namespace))
+ self.cmd = network_qos_rule.SetNetworkQosRule(self.app, self.namespace)
def test_set_nothing(self):
arglist = [
@@ -720,7 +856,8 @@ class TestSetNetworkQosRuleMinimumBandwidth(TestNetworkQosRule):
result = self.cmd.take_action(parsed_args)
self.network.update_qos_minimum_bandwidth_rule.assert_called_with(
- self.new_rule, self.qos_policy.id)
+ self.new_rule, self.qos_policy.id
+ )
self.assertIsNone(result)
def test_set_min_kbps(self):
@@ -735,7 +872,8 @@ class TestSetNetworkQosRuleMinimumBandwidth(TestNetworkQosRule):
self.new_rule.min_kbps = min_kbps
arglist = [
- '--min-kbps', str(self.new_rule.min_kbps),
+ '--min-kbps',
+ str(self.new_rule.min_kbps),
self.new_rule.qos_policy_id,
self.new_rule.id,
]
@@ -752,7 +890,8 @@ class TestSetNetworkQosRuleMinimumBandwidth(TestNetworkQosRule):
'min_kbps': self.new_rule.min_kbps,
}
self.network.update_qos_minimum_bandwidth_rule.assert_called_with(
- self.new_rule, self.qos_policy.id, **attrs)
+ self.new_rule, self.qos_policy.id, **attrs
+ )
self.assertIsNone(result)
if min_kbps:
@@ -760,7 +899,8 @@ class TestSetNetworkQosRuleMinimumBandwidth(TestNetworkQosRule):
def test_set_wrong_options(self):
arglist = [
- '--max-kbps', str(10000),
+ '--max-kbps',
+ str(10000),
self.new_rule.qos_policy_id,
self.new_rule.id,
]
@@ -774,31 +914,35 @@ class TestSetNetworkQosRuleMinimumBandwidth(TestNetworkQosRule):
try:
self.cmd.take_action(parsed_args)
except exceptions.CommandError as e:
- msg = ('Failed to set Network QoS rule ID "%(rule)s": Rule type '
- '"minimum-bandwidth" only requires arguments: direction, '
- 'min_kbps' % {'rule': self.new_rule.id})
+ msg = (
+ 'Failed to set Network QoS rule ID "%(rule)s": Rule type '
+ '"minimum-bandwidth" only requires arguments: direction, '
+ 'min_kbps' % {'rule': self.new_rule.id}
+ )
self.assertEqual(msg, str(e))
class TestSetNetworkQosRuleMinimumPacketRate(TestNetworkQosRule):
-
def setUp(self):
super(TestSetNetworkQosRuleMinimumPacketRate, self).setUp()
- attrs = {'qos_policy_id': self.qos_policy.id,
- 'type': RULE_TYPE_MINIMUM_PACKET_RATE}
+ attrs = {
+ 'qos_policy_id': self.qos_policy.id,
+ 'type': RULE_TYPE_MINIMUM_PACKET_RATE,
+ }
self.new_rule = network_fakes.FakeNetworkQosRule.create_one_qos_rule(
- attrs=attrs)
+ attrs=attrs
+ )
self.qos_policy.rules = [self.new_rule]
self.network.update_qos_minimum_packet_rate_rule = mock.Mock(
- return_value=None)
+ return_value=None
+ )
self.network.find_qos_minimum_packet_rate_rule = mock.Mock(
- return_value=self.new_rule)
- self.network.find_qos_policy = mock.Mock(
- return_value=self.qos_policy)
+ return_value=self.new_rule
+ )
+ self.network.find_qos_policy = mock.Mock(return_value=self.qos_policy)
# Get the command object to test
- self.cmd = (network_qos_rule.SetNetworkQosRule(self.app,
- self.namespace))
+ self.cmd = network_qos_rule.SetNetworkQosRule(self.app, self.namespace)
def test_set_nothing(self):
arglist = [
@@ -814,7 +958,8 @@ class TestSetNetworkQosRuleMinimumPacketRate(TestNetworkQosRule):
result = self.cmd.take_action(parsed_args)
self.network.update_qos_minimum_packet_rate_rule.assert_called_with(
- self.new_rule, self.qos_policy.id)
+ self.new_rule, self.qos_policy.id
+ )
self.assertIsNone(result)
def test_set_min_kpps(self):
@@ -829,7 +974,8 @@ class TestSetNetworkQosRuleMinimumPacketRate(TestNetworkQosRule):
self.new_rule.min_kpps = min_kpps
arglist = [
- '--min-kpps', str(self.new_rule.min_kpps),
+ '--min-kpps',
+ str(self.new_rule.min_kpps),
self.new_rule.qos_policy_id,
self.new_rule.id,
]
@@ -846,7 +992,8 @@ class TestSetNetworkQosRuleMinimumPacketRate(TestNetworkQosRule):
'min_kpps': self.new_rule.min_kpps,
}
self.network.update_qos_minimum_packet_rate_rule.assert_called_with(
- self.new_rule, self.qos_policy.id, **attrs)
+ self.new_rule, self.qos_policy.id, **attrs
+ )
self.assertIsNone(result)
if min_kpps:
@@ -854,7 +1001,8 @@ class TestSetNetworkQosRuleMinimumPacketRate(TestNetworkQosRule):
def test_set_wrong_options(self):
arglist = [
- '--min-kbps', str(10000),
+ '--min-kbps',
+ str(10000),
self.new_rule.qos_policy_id,
self.new_rule.id,
]
@@ -868,31 +1016,35 @@ class TestSetNetworkQosRuleMinimumPacketRate(TestNetworkQosRule):
try:
self.cmd.take_action(parsed_args)
except exceptions.CommandError as e:
- msg = ('Failed to set Network QoS rule ID "%(rule)s": Rule type '
- '"minimum-packet-rate" only requires arguments: direction, '
- 'min_kpps' % {'rule': self.new_rule.id})
+ msg = (
+ 'Failed to set Network QoS rule ID "%(rule)s": Rule type '
+ '"minimum-packet-rate" only requires arguments: direction, '
+ 'min_kpps' % {'rule': self.new_rule.id}
+ )
self.assertEqual(msg, str(e))
class TestSetNetworkQosRuleDSCPMarking(TestNetworkQosRule):
-
def setUp(self):
super(TestSetNetworkQosRuleDSCPMarking, self).setUp()
- attrs = {'qos_policy_id': self.qos_policy.id,
- 'type': RULE_TYPE_DSCP_MARKING}
+ attrs = {
+ 'qos_policy_id': self.qos_policy.id,
+ 'type': RULE_TYPE_DSCP_MARKING,
+ }
self.new_rule = network_fakes.FakeNetworkQosRule.create_one_qos_rule(
- attrs=attrs)
+ attrs=attrs
+ )
self.qos_policy.rules = [self.new_rule]
self.network.update_qos_dscp_marking_rule = mock.Mock(
- return_value=None)
+ return_value=None
+ )
self.network.find_qos_dscp_marking_rule = mock.Mock(
- return_value=self.new_rule)
- self.network.find_qos_policy = mock.Mock(
- return_value=self.qos_policy)
+ return_value=self.new_rule
+ )
+ self.network.find_qos_policy = mock.Mock(return_value=self.qos_policy)
# Get the command object to test
- self.cmd = (network_qos_rule.SetNetworkQosRule(self.app,
- self.namespace))
+ self.cmd = network_qos_rule.SetNetworkQosRule(self.app, self.namespace)
def test_set_nothing(self):
arglist = [
@@ -908,7 +1060,8 @@ class TestSetNetworkQosRuleDSCPMarking(TestNetworkQosRule):
result = self.cmd.take_action(parsed_args)
self.network.update_qos_dscp_marking_rule.assert_called_with(
- self.new_rule, self.qos_policy.id)
+ self.new_rule, self.qos_policy.id
+ )
self.assertIsNone(result)
def test_set_dscp_mark(self):
@@ -923,7 +1076,8 @@ class TestSetNetworkQosRuleDSCPMarking(TestNetworkQosRule):
self.new_rule.dscp_mark = dscp_mark
arglist = [
- '--dscp-mark', str(self.new_rule.dscp_mark),
+ '--dscp-mark',
+ str(self.new_rule.dscp_mark),
self.new_rule.qos_policy_id,
self.new_rule.id,
]
@@ -940,7 +1094,8 @@ class TestSetNetworkQosRuleDSCPMarking(TestNetworkQosRule):
'dscp_mark': self.new_rule.dscp_mark,
}
self.network.update_qos_dscp_marking_rule.assert_called_with(
- self.new_rule, self.qos_policy.id, **attrs)
+ self.new_rule, self.qos_policy.id, **attrs
+ )
self.assertIsNone(result)
if dscp_mark:
@@ -948,7 +1103,8 @@ class TestSetNetworkQosRuleDSCPMarking(TestNetworkQosRule):
def test_set_wrong_options(self):
arglist = [
- '--max-kbps', str(10000),
+ '--max-kbps',
+ str(10000),
self.new_rule.qos_policy_id,
self.new_rule.id,
]
@@ -962,31 +1118,35 @@ class TestSetNetworkQosRuleDSCPMarking(TestNetworkQosRule):
try:
self.cmd.take_action(parsed_args)
except exceptions.CommandError as e:
- msg = ('Failed to set Network QoS rule ID "%(rule)s": Rule type '
- '"dscp-marking" only requires arguments: dscp_mark' %
- {'rule': self.new_rule.id})
+ msg = (
+ 'Failed to set Network QoS rule ID "%(rule)s": Rule type '
+ '"dscp-marking" only requires arguments: dscp_mark'
+ % {'rule': self.new_rule.id}
+ )
self.assertEqual(msg, str(e))
class TestSetNetworkQosRuleBandwidthLimit(TestNetworkQosRule):
-
def setUp(self):
super(TestSetNetworkQosRuleBandwidthLimit, self).setUp()
- attrs = {'qos_policy_id': self.qos_policy.id,
- 'type': RULE_TYPE_BANDWIDTH_LIMIT}
+ attrs = {
+ 'qos_policy_id': self.qos_policy.id,
+ 'type': RULE_TYPE_BANDWIDTH_LIMIT,
+ }
self.new_rule = network_fakes.FakeNetworkQosRule.create_one_qos_rule(
- attrs=attrs)
+ attrs=attrs
+ )
self.qos_policy.rules = [self.new_rule]
self.network.update_qos_bandwidth_limit_rule = mock.Mock(
- return_value=None)
+ return_value=None
+ )
self.network.find_qos_bandwidth_limit_rule = mock.Mock(
- return_value=self.new_rule)
- self.network.find_qos_policy = mock.Mock(
- return_value=self.qos_policy)
+ return_value=self.new_rule
+ )
+ self.network.find_qos_policy = mock.Mock(return_value=self.qos_policy)
# Get the command object to test
- self.cmd = (network_qos_rule.SetNetworkQosRule(self.app,
- self.namespace))
+ self.cmd = network_qos_rule.SetNetworkQosRule(self.app, self.namespace)
def test_set_nothing(self):
arglist = [
@@ -1002,7 +1162,8 @@ class TestSetNetworkQosRuleBandwidthLimit(TestNetworkQosRule):
result = self.cmd.take_action(parsed_args)
self.network.update_qos_bandwidth_limit_rule.assert_called_with(
- self.new_rule, self.qos_policy.id)
+ self.new_rule, self.qos_policy.id
+ )
self.assertIsNone(result)
def test_set_max_kbps(self):
@@ -1016,12 +1177,12 @@ class TestSetNetworkQosRuleBandwidthLimit(TestNetworkQosRule):
def _set_max_kbps(self, max_kbps=None):
if max_kbps:
- self.addCleanup(self._reset_max_kbps,
- self.new_rule.max_kbps)
+ self.addCleanup(self._reset_max_kbps, self.new_rule.max_kbps)
self.new_rule.max_kbps = max_kbps
arglist = [
- '--max-kbps', str(self.new_rule.max_kbps),
+ '--max-kbps',
+ str(self.new_rule.max_kbps),
self.new_rule.qos_policy_id,
self.new_rule.id,
]
@@ -1038,7 +1199,8 @@ class TestSetNetworkQosRuleBandwidthLimit(TestNetworkQosRule):
'max_kbps': self.new_rule.max_kbps,
}
self.network.update_qos_bandwidth_limit_rule.assert_called_with(
- self.new_rule, self.qos_policy.id, **attrs)
+ self.new_rule, self.qos_policy.id, **attrs
+ )
self.assertIsNone(result)
def test_set_max_burst_kbits(self):
@@ -1052,12 +1214,14 @@ class TestSetNetworkQosRuleBandwidthLimit(TestNetworkQosRule):
def _set_max_burst_kbits(self, max_burst_kbits=None):
if max_burst_kbits:
- self.addCleanup(self._reset_max_burst_kbits,
- self.new_rule.max_burst_kbits)
+ self.addCleanup(
+ self._reset_max_burst_kbits, self.new_rule.max_burst_kbits
+ )
self.new_rule.max_burst_kbits = max_burst_kbits
arglist = [
- '--max-burst-kbits', str(self.new_rule.max_burst_kbits),
+ '--max-burst-kbits',
+ str(self.new_rule.max_burst_kbits),
self.new_rule.qos_policy_id,
self.new_rule.id,
]
@@ -1074,7 +1238,8 @@ class TestSetNetworkQosRuleBandwidthLimit(TestNetworkQosRule):
'max_burst_kbps': self.new_rule.max_burst_kbits,
}
self.network.update_qos_bandwidth_limit_rule.assert_called_with(
- self.new_rule, self.qos_policy.id, **attrs)
+ self.new_rule, self.qos_policy.id, **attrs
+ )
self.assertIsNone(result)
def test_set_direction_egress(self):
@@ -1107,12 +1272,14 @@ class TestSetNetworkQosRuleBandwidthLimit(TestNetworkQosRule):
'direction': direction,
}
self.network.update_qos_bandwidth_limit_rule.assert_called_with(
- self.new_rule, self.qos_policy.id, **attrs)
+ self.new_rule, self.qos_policy.id, **attrs
+ )
self.assertIsNone(result)
def test_set_wrong_options(self):
arglist = [
- '--min-kbps', str(10000),
+ '--min-kbps',
+ str(10000),
self.new_rule.qos_policy_id,
self.new_rule.id,
]
@@ -1126,41 +1293,54 @@ class TestSetNetworkQosRuleBandwidthLimit(TestNetworkQosRule):
try:
self.cmd.take_action(parsed_args)
except exceptions.CommandError as e:
- msg = ('Failed to set Network QoS rule ID "%(rule)s": Rule type '
- '"bandwidth-limit" only requires arguments: direction, '
- 'max_burst_kbps, max_kbps' % {'rule': self.new_rule.id})
+ msg = (
+ 'Failed to set Network QoS rule ID "%(rule)s": Rule type '
+ '"bandwidth-limit" only requires arguments: direction, '
+ 'max_burst_kbps, max_kbps' % {'rule': self.new_rule.id}
+ )
self.assertEqual(msg, str(e))
class TestListNetworkQosRule(TestNetworkQosRule):
-
def setUp(self):
super(TestListNetworkQosRule, self).setUp()
- attrs = {'qos_policy_id': self.qos_policy.id,
- 'type': RULE_TYPE_MINIMUM_BANDWIDTH}
- self.new_rule_min_bw = (network_fakes.FakeNetworkQosRule.
- create_one_qos_rule(attrs=attrs))
+ attrs = {
+ 'qos_policy_id': self.qos_policy.id,
+ 'type': RULE_TYPE_MINIMUM_BANDWIDTH,
+ }
+ self.new_rule_min_bw = (
+ network_fakes.FakeNetworkQosRule.create_one_qos_rule(attrs=attrs)
+ )
attrs['type'] = RULE_TYPE_MINIMUM_PACKET_RATE
- self.new_rule_min_pps = (network_fakes.FakeNetworkQosRule.
- create_one_qos_rule(attrs=attrs))
+ self.new_rule_min_pps = (
+ network_fakes.FakeNetworkQosRule.create_one_qos_rule(attrs=attrs)
+ )
attrs['type'] = RULE_TYPE_DSCP_MARKING
- self.new_rule_dscp_mark = (network_fakes.FakeNetworkQosRule.
- create_one_qos_rule(attrs=attrs))
+ self.new_rule_dscp_mark = (
+ network_fakes.FakeNetworkQosRule.create_one_qos_rule(attrs=attrs)
+ )
attrs['type'] = RULE_TYPE_BANDWIDTH_LIMIT
- self.new_rule_max_bw = (network_fakes.FakeNetworkQosRule.
- create_one_qos_rule(attrs=attrs))
- self.qos_policy.rules = [self.new_rule_min_bw,
- self.new_rule_min_pps,
- self.new_rule_dscp_mark,
- self.new_rule_max_bw]
+ self.new_rule_max_bw = (
+ network_fakes.FakeNetworkQosRule.create_one_qos_rule(attrs=attrs)
+ )
+ self.qos_policy.rules = [
+ self.new_rule_min_bw,
+ self.new_rule_min_pps,
+ self.new_rule_dscp_mark,
+ self.new_rule_max_bw,
+ ]
self.network.find_qos_minimum_bandwidth_rule = mock.Mock(
- return_value=self.new_rule_min_bw)
+ return_value=self.new_rule_min_bw
+ )
self.network.find_qos_minimum_packet_rate_rule = mock.Mock(
- return_value=self.new_rule_min_pps)
+ return_value=self.new_rule_min_pps
+ )
self.network.find_qos_dscp_marking_rule = mock.Mock(
- return_value=self.new_rule_dscp_mark)
+ return_value=self.new_rule_dscp_mark
+ )
self.network.find_qos_bandwidth_limit_rule = mock.Mock(
- return_value=self.new_rule_max_bw)
+ return_value=self.new_rule_max_bw
+ )
self.columns = (
'ID',
'QoS Policy ID',
@@ -1174,25 +1354,28 @@ class TestListNetworkQosRule(TestNetworkQosRule):
)
self.data = []
for index in range(len(self.qos_policy.rules)):
- self.data.append((
- self.qos_policy.rules[index].id,
- self.qos_policy.rules[index].qos_policy_id,
- self.qos_policy.rules[index].type,
- getattr(self.qos_policy.rules[index], 'max_kbps', ''),
- getattr(self.qos_policy.rules[index], 'max_burst_kbps', ''),
- getattr(self.qos_policy.rules[index], 'min_kbps', ''),
- getattr(self.qos_policy.rules[index], 'min_kpps', ''),
- getattr(self.qos_policy.rules[index], 'dscp_mark', ''),
- getattr(self.qos_policy.rules[index], 'direction', ''),
- ))
+ self.data.append(
+ (
+ self.qos_policy.rules[index].id,
+ self.qos_policy.rules[index].qos_policy_id,
+ self.qos_policy.rules[index].type,
+ getattr(self.qos_policy.rules[index], 'max_kbps', ''),
+ getattr(
+ self.qos_policy.rules[index], 'max_burst_kbps', ''
+ ),
+ getattr(self.qos_policy.rules[index], 'min_kbps', ''),
+ getattr(self.qos_policy.rules[index], 'min_kpps', ''),
+ getattr(self.qos_policy.rules[index], 'dscp_mark', ''),
+ getattr(self.qos_policy.rules[index], 'direction', ''),
+ )
+ )
# Get the command object to test
- self.cmd = network_qos_rule.ListNetworkQosRule(self.app,
- self.namespace)
+ self.cmd = network_qos_rule.ListNetworkQosRule(
+ self.app, self.namespace
+ )
def test_qos_rule_list(self):
- arglist = [
- self.qos_policy.id
- ]
+ arglist = [self.qos_policy.id]
verifylist = [
('qos_policy', self.qos_policy.id),
]
@@ -1201,7 +1384,8 @@ class TestListNetworkQosRule(TestNetworkQosRule):
columns, data = self.cmd.take_action(parsed_args)
self.network.find_qos_policy.assert_called_once_with(
- self.qos_policy.id, ignore_missing=False)
+ self.qos_policy.id, ignore_missing=False
+ )
self.assertEqual(self.columns, columns)
list_data = list(data)
self.assertEqual(len(self.data), len(list_data))
@@ -1210,13 +1394,15 @@ class TestListNetworkQosRule(TestNetworkQosRule):
class TestShowNetworkQosRuleMinimumBandwidth(TestNetworkQosRule):
-
def setUp(self):
super(TestShowNetworkQosRuleMinimumBandwidth, self).setUp()
- attrs = {'qos_policy_id': self.qos_policy.id,
- 'type': RULE_TYPE_MINIMUM_BANDWIDTH}
+ attrs = {
+ 'qos_policy_id': self.qos_policy.id,
+ 'type': RULE_TYPE_MINIMUM_BANDWIDTH,
+ }
self.new_rule = network_fakes.FakeNetworkQosRule.create_one_qos_rule(
- attrs)
+ attrs
+ )
self.qos_policy.rules = [self.new_rule]
self.columns = (
'direction',
@@ -1224,7 +1410,7 @@ class TestShowNetworkQosRuleMinimumBandwidth(TestNetworkQosRule):
'min_kbps',
'project_id',
'qos_policy_id',
- 'type'
+ 'type',
)
self.data = (
self.new_rule.direction,
@@ -1236,19 +1422,26 @@ class TestShowNetworkQosRuleMinimumBandwidth(TestNetworkQosRule):
)
self.network.get_qos_minimum_bandwidth_rule = mock.Mock(
- return_value=self.new_rule)
+ return_value=self.new_rule
+ )
# Get the command object to test
- self.cmd = network_qos_rule.ShowNetworkQosRule(self.app,
- self.namespace)
+ self.cmd = network_qos_rule.ShowNetworkQosRule(
+ self.app, self.namespace
+ )
def test_show_no_options(self):
arglist = []
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_show_all_options(self):
arglist = [
@@ -1264,19 +1457,22 @@ class TestShowNetworkQosRuleMinimumBandwidth(TestNetworkQosRule):
columns, data = self.cmd.take_action(parsed_args)
self.network.get_qos_minimum_bandwidth_rule.assert_called_once_with(
- self.new_rule.id, self.qos_policy.id)
+ self.new_rule.id, self.qos_policy.id
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(list(self.data), list(data))
class TestShowNetworkQosRuleMinimumPacketRate(TestNetworkQosRule):
-
def setUp(self):
super(TestShowNetworkQosRuleMinimumPacketRate, self).setUp()
- attrs = {'qos_policy_id': self.qos_policy.id,
- 'type': RULE_TYPE_MINIMUM_PACKET_RATE}
+ attrs = {
+ 'qos_policy_id': self.qos_policy.id,
+ 'type': RULE_TYPE_MINIMUM_PACKET_RATE,
+ }
self.new_rule = network_fakes.FakeNetworkQosRule.create_one_qos_rule(
- attrs)
+ attrs
+ )
self.qos_policy.rules = [self.new_rule]
self.columns = (
'direction',
@@ -1284,7 +1480,7 @@ class TestShowNetworkQosRuleMinimumPacketRate(TestNetworkQosRule):
'min_kpps',
'project_id',
'qos_policy_id',
- 'type'
+ 'type',
)
self.data = (
self.new_rule.direction,
@@ -1296,19 +1492,26 @@ class TestShowNetworkQosRuleMinimumPacketRate(TestNetworkQosRule):
)
self.network.get_qos_minimum_packet_rate_rule = mock.Mock(
- return_value=self.new_rule)
+ return_value=self.new_rule
+ )
# Get the command object to test
- self.cmd = network_qos_rule.ShowNetworkQosRule(self.app,
- self.namespace)
+ self.cmd = network_qos_rule.ShowNetworkQosRule(
+ self.app, self.namespace
+ )
def test_show_no_options(self):
arglist = []
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_show_all_options(self):
arglist = [
@@ -1324,26 +1527,29 @@ class TestShowNetworkQosRuleMinimumPacketRate(TestNetworkQosRule):
columns, data = self.cmd.take_action(parsed_args)
self.network.get_qos_minimum_packet_rate_rule.assert_called_once_with(
- self.new_rule.id, self.qos_policy.id)
+ self.new_rule.id, self.qos_policy.id
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(list(self.data), list(data))
class TestShowNetworkQosDSCPMarking(TestNetworkQosRule):
-
def setUp(self):
super(TestShowNetworkQosDSCPMarking, self).setUp()
- attrs = {'qos_policy_id': self.qos_policy.id,
- 'type': RULE_TYPE_DSCP_MARKING}
+ attrs = {
+ 'qos_policy_id': self.qos_policy.id,
+ 'type': RULE_TYPE_DSCP_MARKING,
+ }
self.new_rule = network_fakes.FakeNetworkQosRule.create_one_qos_rule(
- attrs)
+ attrs
+ )
self.qos_policy.rules = [self.new_rule]
self.columns = (
'dscp_mark',
'id',
'project_id',
'qos_policy_id',
- 'type'
+ 'type',
)
self.data = (
self.new_rule.dscp_mark,
@@ -1354,19 +1560,26 @@ class TestShowNetworkQosDSCPMarking(TestNetworkQosRule):
)
self.network.get_qos_dscp_marking_rule = mock.Mock(
- return_value=self.new_rule)
+ return_value=self.new_rule
+ )
# Get the command object to test
- self.cmd = network_qos_rule.ShowNetworkQosRule(self.app,
- self.namespace)
+ self.cmd = network_qos_rule.ShowNetworkQosRule(
+ self.app, self.namespace
+ )
def test_show_no_options(self):
arglist = []
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_show_all_options(self):
arglist = [
@@ -1382,19 +1595,22 @@ class TestShowNetworkQosDSCPMarking(TestNetworkQosRule):
columns, data = self.cmd.take_action(parsed_args)
self.network.get_qos_dscp_marking_rule.assert_called_once_with(
- self.new_rule.id, self.qos_policy.id)
+ self.new_rule.id, self.qos_policy.id
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(list(self.data), list(data))
class TestShowNetworkQosBandwidthLimit(TestNetworkQosRule):
-
def setUp(self):
super(TestShowNetworkQosBandwidthLimit, self).setUp()
- attrs = {'qos_policy_id': self.qos_policy.id,
- 'type': RULE_TYPE_BANDWIDTH_LIMIT}
+ attrs = {
+ 'qos_policy_id': self.qos_policy.id,
+ 'type': RULE_TYPE_BANDWIDTH_LIMIT,
+ }
self.new_rule = network_fakes.FakeNetworkQosRule.create_one_qos_rule(
- attrs)
+ attrs
+ )
self.qos_policy.rules = [self.new_rule]
self.columns = (
'direction',
@@ -1403,7 +1619,7 @@ class TestShowNetworkQosBandwidthLimit(TestNetworkQosRule):
'max_kbps',
'project_id',
'qos_policy_id',
- 'type'
+ 'type',
)
self.data = (
self.new_rule.direction,
@@ -1416,19 +1632,26 @@ class TestShowNetworkQosBandwidthLimit(TestNetworkQosRule):
)
self.network.get_qos_bandwidth_limit_rule = mock.Mock(
- return_value=self.new_rule)
+ return_value=self.new_rule
+ )
# Get the command object to test
- self.cmd = network_qos_rule.ShowNetworkQosRule(self.app,
- self.namespace)
+ self.cmd = network_qos_rule.ShowNetworkQosRule(
+ self.app, self.namespace
+ )
def test_show_no_options(self):
arglist = []
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_show_all_options(self):
arglist = [
@@ -1444,6 +1667,7 @@ class TestShowNetworkQosBandwidthLimit(TestNetworkQosRule):
columns, data = self.cmd.take_action(parsed_args)
self.network.get_qos_bandwidth_limit_rule.assert_called_once_with(
- self.new_rule.id, self.qos_policy.id)
+ self.new_rule.id, self.qos_policy.id
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(list(self.data), list(data))
diff --git a/openstackclient/tests/unit/network/v2/test_network_qos_rule_type.py b/openstackclient/tests/unit/network/v2/test_network_qos_rule_type.py
index 3aae822e..d468cafc 100644
--- a/openstackclient/tests/unit/network/v2/test_network_qos_rule_type.py
+++ b/openstackclient/tests/unit/network/v2/test_network_qos_rule_type.py
@@ -21,7 +21,6 @@ from openstackclient.tests.unit import utils as tests_utils
class TestNetworkQosRuleType(network_fakes.TestNetworkV2):
-
def setUp(self):
super(TestNetworkQosRuleType, self).setUp()
# Get a shortcut to the network client
@@ -29,41 +28,37 @@ class TestNetworkQosRuleType(network_fakes.TestNetworkV2):
class TestShowNetworkQosRuleType(TestNetworkQosRuleType):
-
- attrs = {
- 'drivers': [{
- 'name': 'driver 1',
- 'supported_parameters': []
- }]
- }
+ attrs = {'drivers': [{'name': 'driver 1', 'supported_parameters': []}]}
# The QoS policies to show.
qos_rule_type = (
- network_fakes.FakeNetworkQosRuleType.create_one_qos_rule_type(attrs))
- columns = (
- 'drivers',
- 'rule_type_name'
+ network_fakes.FakeNetworkQosRuleType.create_one_qos_rule_type(attrs)
)
- data = [
- qos_rule_type.drivers,
- qos_rule_type.type
- ]
+ columns = ('drivers', 'rule_type_name')
+ data = [qos_rule_type.drivers, qos_rule_type.type]
def setUp(self):
super(TestShowNetworkQosRuleType, self).setUp()
self.network.get_qos_rule_type = mock.Mock(
- return_value=self.qos_rule_type)
+ return_value=self.qos_rule_type
+ )
# Get the command object to test
- self.cmd = _qos_rule_type.ShowNetworkQosRuleType(self.app,
- self.namespace)
+ self.cmd = _qos_rule_type.ShowNetworkQosRuleType(
+ self.app, self.namespace
+ )
def test_show_no_options(self):
arglist = []
verifylist = []
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_show_all_options(self):
arglist = [
@@ -77,33 +72,32 @@ class TestShowNetworkQosRuleType(TestNetworkQosRuleType):
columns, data = self.cmd.take_action(parsed_args)
self.network.get_qos_rule_type.assert_called_once_with(
- self.qos_rule_type.type)
+ self.qos_rule_type.type
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(list(self.data), list(data))
class TestListNetworkQosRuleType(TestNetworkQosRuleType):
-
# The QoS policies to list up.
qos_rule_types = (
- network_fakes.FakeNetworkQosRuleType.create_qos_rule_types(count=3))
- columns = (
- 'Type',
+ network_fakes.FakeNetworkQosRuleType.create_qos_rule_types(count=3)
)
+ columns = ('Type',)
data = []
for qos_rule_type in qos_rule_types:
- data.append((
- qos_rule_type.type,
- ))
+ data.append((qos_rule_type.type,))
def setUp(self):
super(TestListNetworkQosRuleType, self).setUp()
self.network.qos_rule_types = mock.Mock(
- return_value=self.qos_rule_types)
+ return_value=self.qos_rule_types
+ )
# Get the command object to test
- self.cmd = _qos_rule_type.ListNetworkQosRuleType(self.app,
- self.namespace)
+ self.cmd = _qos_rule_type.ListNetworkQosRuleType(
+ self.app, self.namespace
+ )
def test_qos_rule_type_list(self):
arglist = []
@@ -117,9 +111,7 @@ class TestListNetworkQosRuleType(TestNetworkQosRuleType):
self.assertEqual(self.data, list(data))
def test_qos_rule_type_list_all_supported(self):
- arglist = [
- '--all-supported'
- ]
+ arglist = ['--all-supported']
verifylist = [
('all_supported', True),
]
@@ -134,9 +126,7 @@ class TestListNetworkQosRuleType(TestNetworkQosRuleType):
self.assertEqual(self.data, list(data))
def test_qos_rule_type_list_all_rules(self):
- arglist = [
- '--all-rules'
- ]
+ arglist = ['--all-rules']
verifylist = [
('all_rules', True),
]
diff --git a/openstackclient/tests/unit/network/v2/test_network_rbac.py b/openstackclient/tests/unit/network/v2/test_network_rbac.py
index 7ce25205..49e44497 100644
--- a/openstackclient/tests/unit/network/v2/test_network_rbac.py
+++ b/openstackclient/tests/unit/network/v2/test_network_rbac.py
@@ -24,7 +24,6 @@ from openstackclient.tests.unit import utils as tests_utils
class TestNetworkRBAC(network_fakes.TestNetworkV2):
-
def setUp(self):
super(TestNetworkRBAC, self).setUp()
@@ -36,7 +35,6 @@ class TestNetworkRBAC(network_fakes.TestNetworkV2):
@ddt.ddt
class TestCreateNetworkRBAC(TestNetworkRBAC):
-
network_object = network_fakes.create_one_network()
qos_object = network_fakes.FakeNetworkQosPolicy.create_one_qos_policy()
sg_object = network_fakes.FakeNetworkSecGroup.create_one_security_group()
@@ -45,9 +43,11 @@ class TestCreateNetworkRBAC(TestNetworkRBAC):
ag_object = network_fakes.create_one_address_group()
project = identity_fakes_v3.FakeProject.create_one_project()
rbac_policy = network_fakes.create_one_network_rbac(
- attrs={'project_id': project.id,
- 'target_tenant': project.id,
- 'object_id': network_object.id}
+ attrs={
+ 'project_id': project.id,
+ 'target_tenant': project.id,
+ 'object_id': network_object.id,
+ }
)
columns = (
@@ -75,24 +75,26 @@ class TestCreateNetworkRBAC(TestNetworkRBAC):
self.cmd = network_rbac.CreateNetworkRBAC(self.app, self.namespace)
self.network.create_rbac_policy = mock.Mock(
- return_value=self.rbac_policy)
- self.network.find_network = mock.Mock(
- return_value=self.network_object)
- self.network.find_qos_policy = mock.Mock(
- return_value=self.qos_object)
+ return_value=self.rbac_policy
+ )
+ self.network.find_network = mock.Mock(return_value=self.network_object)
+ self.network.find_qos_policy = mock.Mock(return_value=self.qos_object)
self.network.find_security_group = mock.Mock(
- return_value=self.sg_object)
+ return_value=self.sg_object
+ )
self.network.find_address_scope = mock.Mock(
- return_value=self.as_object)
- self.network.find_subnet_pool = mock.Mock(
- return_value=self.snp_object)
+ return_value=self.as_object
+ )
+ self.network.find_subnet_pool = mock.Mock(return_value=self.snp_object)
self.network.find_address_group = mock.Mock(
- return_value=self.ag_object)
+ return_value=self.ag_object
+ )
self.projects_mock.get.return_value = self.project
def test_network_rbac_create_no_type(self):
arglist = [
- '--action', self.rbac_policy.action,
+ '--action',
+ self.rbac_policy.action,
self.rbac_policy.object_id,
]
verifylist = [
@@ -100,12 +102,18 @@ class TestCreateNetworkRBAC(TestNetworkRBAC):
('rbac_policy', self.rbac_policy.id),
]
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_network_rbac_create_no_action(self):
arglist = [
- '--type', self.rbac_policy.object_type,
+ '--type',
+ self.rbac_policy.object_type,
self.rbac_policy.object_id,
]
verifylist = [
@@ -113,14 +121,22 @@ class TestCreateNetworkRBAC(TestNetworkRBAC):
('rbac_policy', self.rbac_policy.id),
]
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_network_rbac_create_invalid_type(self):
arglist = [
- '--action', self.rbac_policy.action,
- '--type', 'invalid_type',
- '--target-project', self.rbac_policy.target_project_id,
+ '--action',
+ self.rbac_policy.action,
+ '--type',
+ 'invalid_type',
+ '--target-project',
+ self.rbac_policy.target_project_id,
self.rbac_policy.object_id,
]
verifylist = [
@@ -130,14 +146,22 @@ class TestCreateNetworkRBAC(TestNetworkRBAC):
('rbac_policy', self.rbac_policy.id),
]
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_network_rbac_create_invalid_action(self):
arglist = [
- '--type', self.rbac_policy.object_type,
- '--action', 'invalid_action',
- '--target-project', self.rbac_policy.target_project_id,
+ '--type',
+ self.rbac_policy.object_type,
+ '--action',
+ 'invalid_action',
+ '--target-project',
+ self.rbac_policy.target_project_id,
self.rbac_policy.object_id,
]
verifylist = [
@@ -147,14 +171,22 @@ class TestCreateNetworkRBAC(TestNetworkRBAC):
('rbac_policy', self.rbac_policy.id),
]
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_network_rbac_create(self):
arglist = [
- '--type', self.rbac_policy.object_type,
- '--action', self.rbac_policy.action,
- '--target-project', self.rbac_policy.target_project_id,
+ '--type',
+ self.rbac_policy.object_type,
+ '--action',
+ self.rbac_policy.action,
+ '--target-project',
+ self.rbac_policy.target_project_id,
self.rbac_policy.object_id,
]
verifylist = [
@@ -168,19 +200,23 @@ class TestCreateNetworkRBAC(TestNetworkRBAC):
# DisplayCommandBase.take_action() returns two tuples
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_rbac_policy.assert_called_with(**{
- 'object_id': self.rbac_policy.object_id,
- 'object_type': self.rbac_policy.object_type,
- 'action': self.rbac_policy.action,
- 'target_tenant': self.rbac_policy.target_project_id,
- })
+ self.network.create_rbac_policy.assert_called_with(
+ **{
+ 'object_id': self.rbac_policy.object_id,
+ 'object_type': self.rbac_policy.object_type,
+ 'action': self.rbac_policy.action,
+ 'target_tenant': self.rbac_policy.target_project_id,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, list(data))
def test_network_rbac_create_with_target_all_projects(self):
arglist = [
- '--type', self.rbac_policy.object_type,
- '--action', self.rbac_policy.action,
+ '--type',
+ self.rbac_policy.object_type,
+ '--action',
+ self.rbac_policy.action,
'--target-all-projects',
self.rbac_policy.object_id,
]
@@ -194,21 +230,29 @@ class TestCreateNetworkRBAC(TestNetworkRBAC):
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_rbac_policy.assert_called_with(**{
- 'object_id': self.rbac_policy.object_id,
- 'object_type': self.rbac_policy.object_type,
- 'action': self.rbac_policy.action,
- 'target_tenant': '*',
- })
+ self.network.create_rbac_policy.assert_called_with(
+ **{
+ 'object_id': self.rbac_policy.object_id,
+ 'object_type': self.rbac_policy.object_type,
+ 'action': self.rbac_policy.action,
+ 'target_tenant': '*',
+ }
+ )
def test_network_rbac_create_all_options(self):
arglist = [
- '--type', self.rbac_policy.object_type,
- '--action', self.rbac_policy.action,
- '--target-project', self.rbac_policy.target_project_id,
- '--project', self.rbac_policy.project_id,
- '--project-domain', self.project.domain_id,
- '--target-project-domain', self.project.domain_id,
+ '--type',
+ self.rbac_policy.object_type,
+ '--action',
+ self.rbac_policy.action,
+ '--target-project',
+ self.rbac_policy.target_project_id,
+ '--project',
+ self.rbac_policy.project_id,
+ '--project-domain',
+ self.project.domain_id,
+ '--target-project-domain',
+ self.project.domain_id,
self.rbac_policy.object_id,
]
verifylist = [
@@ -225,13 +269,15 @@ class TestCreateNetworkRBAC(TestNetworkRBAC):
# DisplayCommandBase.take_action() returns two tuples
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_rbac_policy.assert_called_with(**{
- 'object_id': self.rbac_policy.object_id,
- 'object_type': self.rbac_policy.object_type,
- 'action': self.rbac_policy.action,
- 'target_tenant': self.rbac_policy.target_project_id,
- 'project_id': self.rbac_policy.project_id,
- })
+ self.network.create_rbac_policy.assert_called_with(
+ **{
+ 'object_id': self.rbac_policy.object_id,
+ 'object_type': self.rbac_policy.object_type,
+ 'action': self.rbac_policy.action,
+ 'target_tenant': self.rbac_policy.target_project_id,
+ 'project_id': self.rbac_policy.project_id,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, list(data))
@@ -240,7 +286,7 @@ class TestCreateNetworkRBAC(TestNetworkRBAC):
('security_group', "sg_object"),
('subnetpool', "snp_object"),
('address_scope', "as_object"),
- ('address_group', "ag_object")
+ ('address_group', "ag_object"),
)
@ddt.unpack
def test_network_rbac_create_object(self, obj_type, obj_fake_attr):
@@ -249,9 +295,12 @@ class TestCreateNetworkRBAC(TestNetworkRBAC):
self.rbac_policy.object_type = obj_type
self.rbac_policy.object_id = obj_fake.id
arglist = [
- '--type', obj_type,
- '--action', self.rbac_policy.action,
- '--target-project', self.rbac_policy.target_project_id,
+ '--type',
+ obj_type,
+ '--action',
+ self.rbac_policy.action,
+ '--target-project',
+ self.rbac_policy.target_project_id,
obj_fake.name,
]
verifylist = [
@@ -265,12 +314,14 @@ class TestCreateNetworkRBAC(TestNetworkRBAC):
# DisplayCommandBase.take_action() returns two tuples
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_rbac_policy.assert_called_with(**{
- 'object_id': obj_fake.id,
- 'object_type': obj_type,
- 'action': self.rbac_policy.action,
- 'target_tenant': self.rbac_policy.target_project_id,
- })
+ self.network.create_rbac_policy.assert_called_with(
+ **{
+ 'object_id': obj_fake.id,
+ 'object_type': obj_type,
+ 'action': self.rbac_policy.action,
+ 'target_tenant': self.rbac_policy.target_project_id,
+ }
+ )
self.data = [
self.rbac_policy.action,
self.rbac_policy.id,
@@ -284,15 +335,13 @@ class TestCreateNetworkRBAC(TestNetworkRBAC):
class TestDeleteNetworkRBAC(TestNetworkRBAC):
-
rbac_policies = network_fakes.create_network_rbacs(count=2)
def setUp(self):
super(TestDeleteNetworkRBAC, self).setUp()
self.network.delete_rbac_policy = mock.Mock(return_value=None)
- self.network.find_rbac_policy = (
- network_fakes.get_network_rbacs(
- rbac_policies=self.rbac_policies)
+ self.network.find_rbac_policy = network_fakes.get_network_rbacs(
+ rbac_policies=self.rbac_policies
)
# Get the command object to test
@@ -310,9 +359,11 @@ class TestDeleteNetworkRBAC(TestNetworkRBAC):
result = self.cmd.take_action(parsed_args)
self.network.find_rbac_policy.assert_called_once_with(
- self.rbac_policies[0].id, ignore_missing=False)
+ self.rbac_policies[0].id, ignore_missing=False
+ )
self.network.delete_rbac_policy.assert_called_once_with(
- self.rbac_policies[0])
+ self.rbac_policies[0]
+ )
self.assertIsNone(result)
def test_multi_network_rbacs_delete(self):
@@ -340,15 +391,12 @@ class TestDeleteNetworkRBAC(TestNetworkRBAC):
'unexist_rbac_policy',
]
verifylist = [
- ('rbac_policy',
- [self.rbac_policies[0].id, 'unexist_rbac_policy']),
+ ('rbac_policy', [self.rbac_policies[0].id, 'unexist_rbac_policy']),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
find_mock_result = [self.rbac_policies[0], exceptions.CommandError]
- self.network.find_rbac_policy = (
- mock.Mock(side_effect=find_mock_result)
- )
+ self.network.find_rbac_policy = mock.Mock(side_effect=find_mock_result)
try:
self.cmd.take_action(parsed_args)
@@ -357,16 +405,17 @@ class TestDeleteNetworkRBAC(TestNetworkRBAC):
self.assertEqual('1 of 2 RBAC policies failed to delete.', str(e))
self.network.find_rbac_policy.assert_any_call(
- self.rbac_policies[0].id, ignore_missing=False)
+ self.rbac_policies[0].id, ignore_missing=False
+ )
self.network.find_rbac_policy.assert_any_call(
- 'unexist_rbac_policy', ignore_missing=False)
+ 'unexist_rbac_policy', ignore_missing=False
+ )
self.network.delete_rbac_policy.assert_called_once_with(
self.rbac_policies[0]
)
class TestListNetworkRABC(TestNetworkRBAC):
-
# The network rbac policies going to be listed up.
rbac_policies = network_fakes.create_network_rbacs(count=3)
@@ -383,19 +432,23 @@ class TestListNetworkRABC(TestNetworkRBAC):
)
data = []
for r in rbac_policies:
- data.append((
- r.id,
- r.object_type,
- r.object_id,
- ))
+ data.append(
+ (
+ r.id,
+ r.object_type,
+ r.object_id,
+ )
+ )
data_long = []
for r in rbac_policies:
- data_long.append((
- r.id,
- r.object_type,
- r.object_id,
- r.action,
- ))
+ data_long.append(
+ (
+ r.id,
+ r.object_type,
+ r.object_id,
+ r.action,
+ )
+ )
def setUp(self):
super(TestListNetworkRABC, self).setUp()
@@ -422,33 +475,35 @@ class TestListNetworkRABC(TestNetworkRBAC):
def test_network_rbac_list_type_opt(self):
arglist = [
- '--type', self.rbac_policies[0].object_type, ]
- verifylist = [
- ('type', self.rbac_policies[0].object_type)]
+ '--type',
+ self.rbac_policies[0].object_type,
+ ]
+ verifylist = [('type', self.rbac_policies[0].object_type)]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
# DisplayCommandBase.take_action() returns two tuples
columns, data = self.cmd.take_action(parsed_args)
- self.network.rbac_policies.assert_called_with(**{
- 'object_type': self.rbac_policies[0].object_type
- })
+ self.network.rbac_policies.assert_called_with(
+ **{'object_type': self.rbac_policies[0].object_type}
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, list(data))
def test_network_rbac_list_action_opt(self):
arglist = [
- '--action', self.rbac_policies[0].action, ]
- verifylist = [
- ('action', self.rbac_policies[0].action)]
+ '--action',
+ self.rbac_policies[0].action,
+ ]
+ verifylist = [('action', self.rbac_policies[0].action)]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
# DisplayCommandBase.take_action() returns two tuples
columns, data = self.cmd.take_action(parsed_args)
- self.network.rbac_policies.assert_called_with(**{
- 'action': self.rbac_policies[0].action
- })
+ self.network.rbac_policies.assert_called_with(
+ **{'action': self.rbac_policies[0].action}
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, list(data))
@@ -471,26 +526,29 @@ class TestListNetworkRABC(TestNetworkRBAC):
def test_network_rbac_list_target_project_opt(self):
arglist = [
- '--target-project', self.rbac_policies[0].target_project_id, ]
+ '--target-project',
+ self.rbac_policies[0].target_project_id,
+ ]
verifylist = [
- ('target_project', self.rbac_policies[0].target_project_id)]
+ ('target_project', self.rbac_policies[0].target_project_id)
+ ]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
# DisplayCommandBase.take_action() returns two tuples
columns, data = self.cmd.take_action(parsed_args)
- self.network.rbac_policies.assert_called_with(**{
- 'target_project_id': self.project.id
- })
+ self.network.rbac_policies.assert_called_with(
+ **{'target_project_id': self.project.id}
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, list(data))
class TestSetNetworkRBAC(TestNetworkRBAC):
-
project = identity_fakes_v3.FakeProject.create_one_project()
rbac_policy = network_fakes.create_one_network_rbac(
- attrs={'target_tenant': project.id})
+ attrs={'target_tenant': project.id}
+ )
def setUp(self):
super(TestSetNetworkRBAC, self).setUp()
@@ -499,7 +557,8 @@ class TestSetNetworkRBAC(TestNetworkRBAC):
self.cmd = network_rbac.SetNetworkRBAC(self.app, self.namespace)
self.network.find_rbac_policy = mock.Mock(
- return_value=self.rbac_policy)
+ return_value=self.rbac_policy
+ )
self.network.update_rbac_policy = mock.Mock(return_value=None)
self.projects_mock.get.return_value = self.project
@@ -518,12 +577,14 @@ class TestSetNetworkRBAC(TestNetworkRBAC):
)
attrs = {}
self.network.update_rbac_policy.assert_called_once_with(
- self.rbac_policy, **attrs)
+ self.rbac_policy, **attrs
+ )
self.assertIsNone(result)
def test_network_rbac_set(self):
arglist = [
- '--target-project', self.project.id,
+ '--target-project',
+ self.project.id,
self.rbac_policy.id,
]
verifylist = [
@@ -538,12 +599,12 @@ class TestSetNetworkRBAC(TestNetworkRBAC):
)
attrs = {'target_tenant': self.project.id}
self.network.update_rbac_policy.assert_called_once_with(
- self.rbac_policy, **attrs)
+ self.rbac_policy, **attrs
+ )
self.assertIsNone(result)
class TestShowNetworkRBAC(TestNetworkRBAC):
-
rbac_policy = network_fakes.create_one_network_rbac()
columns = (
@@ -571,14 +632,20 @@ class TestShowNetworkRBAC(TestNetworkRBAC):
self.cmd = network_rbac.ShowNetworkRBAC(self.app, self.namespace)
self.network.find_rbac_policy = mock.Mock(
- return_value=self.rbac_policy)
+ return_value=self.rbac_policy
+ )
def test_show_no_options(self):
arglist = []
verifylist = []
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_network_rbac_show_all_options(self):
arglist = [
diff --git a/openstackclient/tests/unit/network/v2/test_network_segment.py b/openstackclient/tests/unit/network/v2/test_network_segment.py
index b41b6191..1f74048e 100644
--- a/openstackclient/tests/unit/network/v2/test_network_segment.py
+++ b/openstackclient/tests/unit/network/v2/test_network_segment.py
@@ -22,7 +22,6 @@ from openstackclient.tests.unit import utils as tests_utils
class TestNetworkSegment(network_fakes.TestNetworkV2):
-
def setUp(self):
super(TestNetworkSegment, self).setUp()
@@ -31,12 +30,13 @@ class TestNetworkSegment(network_fakes.TestNetworkV2):
class TestCreateNetworkSegment(TestNetworkSegment):
-
# The network segment to create along with associated network.
_network_segment = network_fakes.create_one_network_segment()
- _network = network_fakes.create_one_network({
- 'id': _network_segment.network_id,
- })
+ _network = network_fakes.create_one_network(
+ {
+ 'id': _network_segment.network_id,
+ }
+ )
columns = (
'description',
@@ -68,28 +68,37 @@ class TestCreateNetworkSegment(TestNetworkSegment):
# Get the command object to test
self.cmd = network_segment.CreateNetworkSegment(
- self.app,
- self.namespace
+ self.app, self.namespace
)
def test_create_no_options(self):
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, [], [])
+ self.assertRaises(
+ tests_utils.ParserException, self.check_parser, self.cmd, [], []
+ )
def test_create_invalid_network_type(self):
arglist = [
- '--network', self._network_segment.network_id,
- '--network-type', 'foo',
+ '--network',
+ self._network_segment.network_id,
+ '--network-type',
+ 'foo',
self._network_segment.name,
]
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, [])
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ [],
+ )
def test_create_minimum_options(self):
arglist = [
- '--network', self._network_segment.network_id,
- '--network-type', self._network_segment.network_type,
+ '--network',
+ self._network_segment.network_id,
+ '--network-type',
+ self._network_segment.network_type,
self._network_segment.name,
]
verifylist = [
@@ -102,25 +111,31 @@ class TestCreateNetworkSegment(TestNetworkSegment):
columns, data = self.cmd.take_action(parsed_args)
self.network.find_network.assert_called_once_with(
- self._network_segment.network_id,
- ignore_missing=False
+ self._network_segment.network_id, ignore_missing=False
+ )
+ self.network.create_segment.assert_called_once_with(
+ **{
+ 'network_id': self._network_segment.network_id,
+ 'network_type': self._network_segment.network_type,
+ 'name': self._network_segment.name,
+ }
)
- self.network.create_segment.assert_called_once_with(**{
- 'network_id': self._network_segment.network_id,
- 'network_type': self._network_segment.network_type,
- 'name': self._network_segment.name,
- })
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
def test_create_all_options(self):
arglist = [
- '--description', self._network_segment.description,
- '--network', self._network_segment.network_id,
- '--network-type', self._network_segment.network_type,
- '--physical-network', self._network_segment.physical_network,
- '--segment', str(self._network_segment.segmentation_id),
+ '--description',
+ self._network_segment.description,
+ '--network',
+ self._network_segment.network_id,
+ '--network-type',
+ self._network_segment.network_type,
+ '--physical-network',
+ self._network_segment.physical_network,
+ '--segment',
+ str(self._network_segment.segmentation_id),
self._network_segment.name,
]
verifylist = [
@@ -136,24 +151,24 @@ class TestCreateNetworkSegment(TestNetworkSegment):
columns, data = self.cmd.take_action(parsed_args)
self.network.find_network.assert_called_once_with(
- self._network_segment.network_id,
- ignore_missing=False
+ self._network_segment.network_id, ignore_missing=False
+ )
+ self.network.create_segment.assert_called_once_with(
+ **{
+ 'description': self._network_segment.description,
+ 'network_id': self._network_segment.network_id,
+ 'network_type': self._network_segment.network_type,
+ 'physical_network': self._network_segment.physical_network,
+ 'segmentation_id': self._network_segment.segmentation_id,
+ 'name': self._network_segment.name,
+ }
)
- self.network.create_segment.assert_called_once_with(**{
- 'description': self._network_segment.description,
- 'network_id': self._network_segment.network_id,
- 'network_type': self._network_segment.network_type,
- 'physical_network': self._network_segment.physical_network,
- 'segmentation_id': self._network_segment.segmentation_id,
- 'name': self._network_segment.name,
- })
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
class TestDeleteNetworkSegment(TestNetworkSegment):
-
# The network segments to delete.
_network_segments = network_fakes.create_network_segments()
@@ -167,8 +182,7 @@ class TestDeleteNetworkSegment(TestNetworkSegment):
# Get the command object to test
self.cmd = network_segment.DeleteNetworkSegment(
- self.app,
- self.namespace
+ self.app, self.namespace
)
def test_delete(self):
@@ -205,33 +219,32 @@ class TestDeleteNetworkSegment(TestNetworkSegment):
self.assertIsNone(result)
def test_delete_multiple_with_exception(self):
- arglist = [
- self._network_segments[0].id,
- 'doesnotexist'
- ]
+ arglist = [self._network_segments[0].id, 'doesnotexist']
verifylist = [
- ('network_segment', [self._network_segments[0].id,
- 'doesnotexist']),
+ (
+ 'network_segment',
+ [self._network_segments[0].id, 'doesnotexist'],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- find_mock_result = [self._network_segments[0],
- exceptions.CommandError]
- self.network.find_segment = (
- mock.Mock(side_effect=find_mock_result)
- )
+ find_mock_result = [self._network_segments[0], exceptions.CommandError]
+ self.network.find_segment = mock.Mock(side_effect=find_mock_result)
try:
self.cmd.take_action(parsed_args)
self.fail('CommandError should be raised.')
except exceptions.CommandError as e:
- self.assertEqual('1 of 2 network segments failed to delete.',
- str(e))
+ self.assertEqual(
+ '1 of 2 network segments failed to delete.', str(e)
+ )
self.network.find_segment.assert_any_call(
- self._network_segments[0].id, ignore_missing=False)
+ self._network_segments[0].id, ignore_missing=False
+ )
self.network.find_segment.assert_any_call(
- 'doesnotexist', ignore_missing=False)
+ 'doesnotexist', ignore_missing=False
+ )
self.network.delete_segment.assert_called_once_with(
self._network_segments[0]
)
@@ -248,30 +261,32 @@ class TestListNetworkSegment(TestNetworkSegment):
'Network Type',
'Segment',
)
- columns_long = columns + (
- 'Physical Network',
- )
+ columns_long = columns + ('Physical Network',)
data = []
for _network_segment in _network_segments:
- data.append((
- _network_segment.id,
- _network_segment.name,
- _network_segment.network_id,
- _network_segment.network_type,
- _network_segment.segmentation_id,
- ))
+ data.append(
+ (
+ _network_segment.id,
+ _network_segment.name,
+ _network_segment.network_id,
+ _network_segment.network_type,
+ _network_segment.segmentation_id,
+ )
+ )
data_long = []
for _network_segment in _network_segments:
- data_long.append((
- _network_segment.id,
- _network_segment.name,
- _network_segment.network_id,
- _network_segment.network_type,
- _network_segment.segmentation_id,
- _network_segment.physical_network,
- ))
+ data_long.append(
+ (
+ _network_segment.id,
+ _network_segment.name,
+ _network_segment.network_id,
+ _network_segment.network_type,
+ _network_segment.segmentation_id,
+ _network_segment.physical_network,
+ )
+ )
def setUp(self):
super(TestListNetworkSegment, self).setUp()
@@ -317,10 +332,7 @@ class TestListNetworkSegment(TestNetworkSegment):
'--network',
self._network.id,
]
- verifylist = [
- ('long', False),
- ('network', self._network.id)
- ]
+ verifylist = [('long', False), ('network', self._network.id)]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
@@ -333,7 +345,6 @@ class TestListNetworkSegment(TestNetworkSegment):
class TestSetNetworkSegment(TestNetworkSegment):
-
# The network segment to show.
_network_segment = network_fakes.create_one_network_segment()
@@ -368,8 +379,10 @@ class TestSetNetworkSegment(TestNetworkSegment):
def test_set_all_options(self):
arglist = [
- '--description', 'new description',
- '--name', 'new name',
+ '--description',
+ 'new description',
+ '--name',
+ 'new name',
self._network_segment.id,
]
verifylist = [
@@ -392,7 +405,6 @@ class TestSetNetworkSegment(TestNetworkSegment):
class TestShowNetworkSegment(TestNetworkSegment):
-
# The network segment to show.
_network_segment = network_fakes.create_one_network_segment()
@@ -428,8 +440,9 @@ class TestShowNetworkSegment(TestNetworkSegment):
def test_show_no_options(self):
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, [], [])
+ self.assertRaises(
+ tests_utils.ParserException, self.check_parser, self.cmd, [], []
+ )
def test_show_all_options(self):
arglist = [
@@ -443,8 +456,7 @@ class TestShowNetworkSegment(TestNetworkSegment):
columns, data = self.cmd.take_action(parsed_args)
self.network.find_segment.assert_called_once_with(
- self._network_segment.id,
- ignore_missing=False
+ self._network_segment.id, ignore_missing=False
)
self.assertEqual(self.columns, columns)
diff --git a/openstackclient/tests/unit/network/v2/test_network_segment_range.py b/openstackclient/tests/unit/network/v2/test_network_segment_range.py
index 20d34bfc..582a957f 100644
--- a/openstackclient/tests/unit/network/v2/test_network_segment_range.py
+++ b/openstackclient/tests/unit/network/v2/test_network_segment_range.py
@@ -25,21 +25,20 @@ from openstackclient.tests.unit import utils as tests_utils
class TestAuxiliaryFunctions(tests_utils.TestCase):
-
def test__get_ranges(self):
input_reference = [
([1, 2, 3, 4, 5, 6, 7], ['1-7']),
([1, 2, 5, 4, 3, 6, 7], ['1-7']),
([1, 2, 4, 3, 7, 6], ['1-4', '6-7']),
- ([1, 2, 4, 3, '13', 12, '7', '6'], ['1-4', '6-7', '12-13'])
+ ([1, 2, 4, 3, '13', 12, '7', '6'], ['1-4', '6-7', '12-13']),
]
for input, reference in input_reference:
- self.assertEqual(reference,
- list(network_segment_range._get_ranges(input)))
+ self.assertEqual(
+ reference, list(network_segment_range._get_ranges(input))
+ )
class TestNetworkSegmentRange(network_fakes.TestNetworkV2):
-
def setUp(self):
super(TestNetworkSegmentRange, self).setUp()
@@ -48,7 +47,6 @@ class TestNetworkSegmentRange(network_fakes.TestNetworkV2):
class TestCreateNetworkSegmentRange(TestNetworkSegmentRange):
-
# The network segment range to create.
_network_segment_range = network_fakes.create_one_network_segment_range()
@@ -90,33 +88,46 @@ class TestCreateNetworkSegmentRange(TestNetworkSegmentRange):
# Get the command object to test
self.cmd = network_segment_range.CreateNetworkSegmentRange(
- self.app,
- self.namespace
+ self.app, self.namespace
)
def test_create_no_options(self):
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, [], [])
+ self.assertRaises(
+ tests_utils.ParserException, self.check_parser, self.cmd, [], []
+ )
def test_create_invalid_network_type(self):
arglist = [
'--private',
- '--project', self._network_segment_range.project_id,
- '--network-type', 'foo',
- '--minimum', str(self._network_segment_range.minimum),
- '--maximum', str(self._network_segment_range.maximum),
+ '--project',
+ self._network_segment_range.project_id,
+ '--network-type',
+ 'foo',
+ '--minimum',
+ str(self._network_segment_range.minimum),
+ '--maximum',
+ str(self._network_segment_range.maximum),
self._network_segment_range.name,
]
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, [])
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ [],
+ )
def test_create_default_with_project_id(self):
arglist = [
- '--project', self._network_segment_range.project_id,
- '--network-type', 'vxlan',
- '--minimum', str(self._network_segment_range.minimum),
- '--maximum', str(self._network_segment_range.maximum),
+ '--project',
+ self._network_segment_range.project_id,
+ '--network-type',
+ 'vxlan',
+ '--minimum',
+ str(self._network_segment_range.minimum),
+ '--maximum',
+ str(self._network_segment_range.maximum),
self._network_segment_range.name,
]
verifylist = [
@@ -128,17 +139,21 @@ class TestCreateNetworkSegmentRange(TestNetworkSegmentRange):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- self.assertRaises(exceptions.CommandError,
- self.cmd.take_action,
- parsed_args)
+ self.assertRaises(
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
def test_create_shared_with_project_id(self):
arglist = [
'--shared',
- '--project', self._network_segment_range.project_id,
- '--network-type', 'vxlan',
- '--minimum', str(self._network_segment_range.minimum),
- '--maximum', str(self._network_segment_range.maximum),
+ '--project',
+ self._network_segment_range.project_id,
+ '--network-type',
+ 'vxlan',
+ '--minimum',
+ str(self._network_segment_range.minimum),
+ '--maximum',
+ str(self._network_segment_range.maximum),
self._network_segment_range.name,
]
verifylist = [
@@ -151,17 +166,21 @@ class TestCreateNetworkSegmentRange(TestNetworkSegmentRange):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- self.assertRaises(exceptions.CommandError,
- self.cmd.take_action,
- parsed_args)
+ self.assertRaises(
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
def test_create_tunnel_with_physical_network(self):
arglist = [
'--shared',
- '--network-type', 'vxlan',
- '--physical-network', self._network_segment_range.physical_network,
- '--minimum', str(self._network_segment_range.minimum),
- '--maximum', str(self._network_segment_range.maximum),
+ '--network-type',
+ 'vxlan',
+ '--physical-network',
+ self._network_segment_range.physical_network,
+ '--minimum',
+ str(self._network_segment_range.minimum),
+ '--maximum',
+ str(self._network_segment_range.maximum),
self._network_segment_range.name,
]
verifylist = [
@@ -174,15 +193,18 @@ class TestCreateNetworkSegmentRange(TestNetworkSegmentRange):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- self.assertRaises(exceptions.CommandError,
- self.cmd.take_action,
- parsed_args)
+ self.assertRaises(
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
def test_create_minimum_options(self):
arglist = [
- '--network-type', 'vxlan',
- '--minimum', str(self._network_segment_range.minimum),
- '--maximum', str(self._network_segment_range.maximum),
+ '--network-type',
+ 'vxlan',
+ '--minimum',
+ str(self._network_segment_range.minimum),
+ '--maximum',
+ str(self._network_segment_range.maximum),
self._network_segment_range.name,
]
verifylist = [
@@ -195,13 +217,15 @@ class TestCreateNetworkSegmentRange(TestNetworkSegmentRange):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_network_segment_range.assert_called_once_with(**{
- 'shared': True,
- 'network_type': 'vxlan',
- 'minimum': self._network_segment_range.minimum,
- 'maximum': self._network_segment_range.maximum,
- 'name': self._network_segment_range.name,
- })
+ self.network.create_network_segment_range.assert_called_once_with(
+ **{
+ 'shared': True,
+ 'network_type': 'vxlan',
+ 'minimum': self._network_segment_range.minimum,
+ 'maximum': self._network_segment_range.maximum,
+ 'name': self._network_segment_range.name,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
@@ -209,10 +233,14 @@ class TestCreateNetworkSegmentRange(TestNetworkSegmentRange):
def test_create_private_minimum_options(self):
arglist = [
'--private',
- '--project', self._network_segment_range.project_id,
- '--network-type', 'vxlan',
- '--minimum', str(self._network_segment_range.minimum),
- '--maximum', str(self._network_segment_range.maximum),
+ '--project',
+ self._network_segment_range.project_id,
+ '--network-type',
+ 'vxlan',
+ '--minimum',
+ str(self._network_segment_range.minimum),
+ '--maximum',
+ str(self._network_segment_range.maximum),
self._network_segment_range.name,
]
verifylist = [
@@ -227,14 +255,16 @@ class TestCreateNetworkSegmentRange(TestNetworkSegmentRange):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_network_segment_range.assert_called_once_with(**{
- 'shared': False,
- 'project_id': mock.ANY,
- 'network_type': 'vxlan',
- 'minimum': self._network_segment_range.minimum,
- 'maximum': self._network_segment_range.maximum,
- 'name': self._network_segment_range.name,
- })
+ self.network.create_network_segment_range.assert_called_once_with(
+ **{
+ 'shared': False,
+ 'project_id': mock.ANY,
+ 'network_type': 'vxlan',
+ 'minimum': self._network_segment_range.minimum,
+ 'maximum': self._network_segment_range.maximum,
+ 'name': self._network_segment_range.name,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
@@ -242,9 +272,12 @@ class TestCreateNetworkSegmentRange(TestNetworkSegmentRange):
def test_create_shared_minimum_options(self):
arglist = [
'--shared',
- '--network-type', 'vxlan',
- '--minimum', str(self._network_segment_range.minimum),
- '--maximum', str(self._network_segment_range.maximum),
+ '--network-type',
+ 'vxlan',
+ '--minimum',
+ str(self._network_segment_range.minimum),
+ '--maximum',
+ str(self._network_segment_range.maximum),
self._network_segment_range.name,
]
verifylist = [
@@ -258,13 +291,15 @@ class TestCreateNetworkSegmentRange(TestNetworkSegmentRange):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_network_segment_range.assert_called_once_with(**{
- 'shared': True,
- 'network_type': 'vxlan',
- 'minimum': self._network_segment_range.minimum,
- 'maximum': self._network_segment_range.maximum,
- 'name': self._network_segment_range.name,
- })
+ self.network.create_network_segment_range.assert_called_once_with(
+ **{
+ 'shared': True,
+ 'network_type': 'vxlan',
+ 'minimum': self._network_segment_range.minimum,
+ 'maximum': self._network_segment_range.maximum,
+ 'name': self._network_segment_range.name,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
@@ -272,11 +307,16 @@ class TestCreateNetworkSegmentRange(TestNetworkSegmentRange):
def test_create_all_options(self):
arglist = [
'--private',
- '--project', self._network_segment_range.project_id,
- '--network-type', self._network_segment_range.network_type,
- '--physical-network', self._network_segment_range.physical_network,
- '--minimum', str(self._network_segment_range.minimum),
- '--maximum', str(self._network_segment_range.maximum),
+ '--project',
+ self._network_segment_range.project_id,
+ '--network-type',
+ self._network_segment_range.network_type,
+ '--physical-network',
+ self._network_segment_range.physical_network,
+ '--minimum',
+ str(self._network_segment_range.minimum),
+ '--maximum',
+ str(self._network_segment_range.maximum),
self._network_segment_range.name,
]
verifylist = [
@@ -292,22 +332,23 @@ class TestCreateNetworkSegmentRange(TestNetworkSegmentRange):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_network_segment_range.assert_called_once_with(**{
- 'shared': self._network_segment_range.shared,
- 'project_id': mock.ANY,
- 'network_type': self._network_segment_range.network_type,
- 'physical_network': self._network_segment_range.physical_network,
- 'minimum': self._network_segment_range.minimum,
- 'maximum': self._network_segment_range.maximum,
- 'name': self._network_segment_range.name,
- })
+ self.network.create_network_segment_range.assert_called_once_with(
+ **{
+ 'shared': self._network_segment_range.shared,
+ 'project_id': mock.ANY,
+ 'network_type': self._network_segment_range.network_type,
+ 'physical_network': self._network_segment_range.physical_network, # noqa: E501
+ 'minimum': self._network_segment_range.minimum,
+ 'maximum': self._network_segment_range.maximum,
+ 'name': self._network_segment_range.name,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
class TestDeleteNetworkSegmentRange(TestNetworkSegmentRange):
-
# The network segment ranges to delete.
_network_segment_ranges = network_fakes.create_network_segment_ranges()
@@ -316,15 +357,15 @@ class TestDeleteNetworkSegmentRange(TestNetworkSegmentRange):
self.network.find_extension = mock.Mock()
self.network.delete_network_segment_range = mock.Mock(
- return_value=None)
+ return_value=None
+ )
self.network.find_network_segment_range = mock.Mock(
side_effect=self._network_segment_ranges
)
# Get the command object to test
self.cmd = network_segment_range.DeleteNetworkSegmentRange(
- self.app,
- self.namespace
+ self.app, self.namespace
)
def test_delete(self):
@@ -361,41 +402,46 @@ class TestDeleteNetworkSegmentRange(TestNetworkSegmentRange):
self.assertIsNone(result)
def test_delete_multiple_with_exception(self):
- arglist = [
- self._network_segment_ranges[0].id,
- 'doesnotexist'
- ]
+ arglist = [self._network_segment_ranges[0].id, 'doesnotexist']
verifylist = [
- ('network_segment_range',
- [self._network_segment_ranges[0].id, 'doesnotexist']),
+ (
+ 'network_segment_range',
+ [self._network_segment_ranges[0].id, 'doesnotexist'],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- find_mock_result = [self._network_segment_ranges[0],
- exceptions.CommandError]
- self.network.find_network_segment_range = (
- mock.Mock(side_effect=find_mock_result)
+ find_mock_result = [
+ self._network_segment_ranges[0],
+ exceptions.CommandError,
+ ]
+ self.network.find_network_segment_range = mock.Mock(
+ side_effect=find_mock_result
)
try:
self.cmd.take_action(parsed_args)
self.fail('CommandError should be raised.')
except exceptions.CommandError as e:
- self.assertEqual('1 of 2 network segment ranges failed to delete.',
- str(e))
+ self.assertEqual(
+ '1 of 2 network segment ranges failed to delete.', str(e)
+ )
self.network.find_network_segment_range.assert_any_call(
- self._network_segment_ranges[0].id, ignore_missing=False)
+ self._network_segment_ranges[0].id, ignore_missing=False
+ )
self.network.find_network_segment_range.assert_any_call(
- 'doesnotexist', ignore_missing=False)
+ 'doesnotexist', ignore_missing=False
+ )
self.network.delete_network_segment_range.assert_called_once_with(
self._network_segment_ranges[0]
)
class TestListNetworkSegmentRange(TestNetworkSegmentRange):
- _network_segment_ranges = (
- network_fakes.create_network_segment_ranges(count=3))
+ _network_segment_ranges = network_fakes.create_network_segment_ranges(
+ count=3
+ )
columns = (
'ID',
@@ -406,7 +452,7 @@ class TestListNetworkSegmentRange(TestNetworkSegmentRange):
'Network Type',
'Physical Network',
'Minimum ID',
- 'Maximum ID'
+ 'Maximum ID',
)
columns_long = columns + (
'Used',
@@ -415,44 +461,50 @@ class TestListNetworkSegmentRange(TestNetworkSegmentRange):
data = []
for _network_segment_range in _network_segment_ranges:
- data.append((
- _network_segment_range.id,
- _network_segment_range.name,
- _network_segment_range.default,
- _network_segment_range.shared,
- _network_segment_range.project_id,
- _network_segment_range.network_type,
- _network_segment_range.physical_network,
- _network_segment_range.minimum,
- _network_segment_range.maximum,
- ))
+ data.append(
+ (
+ _network_segment_range.id,
+ _network_segment_range.name,
+ _network_segment_range.default,
+ _network_segment_range.shared,
+ _network_segment_range.project_id,
+ _network_segment_range.network_type,
+ _network_segment_range.physical_network,
+ _network_segment_range.minimum,
+ _network_segment_range.maximum,
+ )
+ )
data_long = []
for _network_segment_range in _network_segment_ranges:
- data_long.append((
- _network_segment_range.id,
- _network_segment_range.name,
- _network_segment_range.default,
- _network_segment_range.shared,
- _network_segment_range.project_id,
- _network_segment_range.network_type,
- _network_segment_range.physical_network,
- _network_segment_range.minimum,
- _network_segment_range.maximum,
- {'3312e4ba67864b2eb53f3f41432f8efc': ['104', '106']},
- ['100-103', '105'],
- ))
+ data_long.append(
+ (
+ _network_segment_range.id,
+ _network_segment_range.name,
+ _network_segment_range.default,
+ _network_segment_range.shared,
+ _network_segment_range.project_id,
+ _network_segment_range.network_type,
+ _network_segment_range.physical_network,
+ _network_segment_range.minimum,
+ _network_segment_range.maximum,
+ {'3312e4ba67864b2eb53f3f41432f8efc': ['104', '106']},
+ ['100-103', '105'],
+ )
+ )
def setUp(self):
super(TestListNetworkSegmentRange, self).setUp()
# Get the command object to test
self.cmd = network_segment_range.ListNetworkSegmentRange(
- self.app, self.namespace)
+ self.app, self.namespace
+ )
self.network.find_extension = mock.Mock()
self.network.network_segment_ranges = mock.Mock(
- return_value=self._network_segment_ranges)
+ return_value=self._network_segment_ranges
+ )
def test_list_no_option(self):
arglist = []
@@ -492,22 +544,29 @@ class TestListNetworkSegmentRange(TestNetworkSegmentRange):
class TestSetNetworkSegmentRange(TestNetworkSegmentRange):
-
# The network segment range to set.
_network_segment_range = network_fakes.create_one_network_segment_range()
# The network segment range updated.
minimum_updated = _network_segment_range.minimum - 5
maximum_updated = _network_segment_range.maximum + 5
- available_updated = (list(range(minimum_updated, 104)) + [105] +
- list(range(107, maximum_updated + 1)))
- _network_segment_range_updated = network_fakes.\
- create_one_network_segment_range(
- attrs={'minimum': minimum_updated,
- 'maximum': maximum_updated,
- 'used': {104: '3312e4ba67864b2eb53f3f41432f8efc',
- 106: '3312e4ba67864b2eb53f3f41432f8efc'},
- 'available': available_updated}
+ available_updated = (
+ list(range(minimum_updated, 104))
+ + [105]
+ + list(range(107, maximum_updated + 1))
+ )
+ _network_segment_range_updated = (
+ network_fakes.create_one_network_segment_range(
+ attrs={
+ 'minimum': minimum_updated,
+ 'maximum': maximum_updated,
+ 'used': {
+ 104: '3312e4ba67864b2eb53f3f41432f8efc',
+ 106: '3312e4ba67864b2eb53f3f41432f8efc',
+ },
+ 'available': available_updated,
+ }
)
+ )
def setUp(self):
super(TestSetNetworkSegmentRange, self).setUp()
@@ -518,8 +577,9 @@ class TestSetNetworkSegmentRange(TestNetworkSegmentRange):
)
# Get the command object to test
- self.cmd = network_segment_range.SetNetworkSegmentRange(self.app,
- self.namespace)
+ self.cmd = network_segment_range.SetNetworkSegmentRange(
+ self.app, self.namespace
+ )
def test_set_no_options(self):
arglist = [
@@ -542,9 +602,12 @@ class TestSetNetworkSegmentRange(TestNetworkSegmentRange):
def test_set_all_options(self):
arglist = [
- '--name', 'new name',
- '--minimum', str(self.minimum_updated),
- '--maximum', str(self.maximum_updated),
+ '--name',
+ 'new name',
+ '--minimum',
+ str(self.minimum_updated),
+ '--maximum',
+ str(self.maximum_updated),
self._network_segment_range.id,
]
verifylist = [
@@ -572,7 +635,6 @@ class TestSetNetworkSegmentRange(TestNetworkSegmentRange):
class TestShowNetworkSegmentRange(TestNetworkSegmentRange):
-
# The network segment range to show.
_network_segment_range = network_fakes.create_one_network_segment_range()
@@ -614,12 +676,14 @@ class TestShowNetworkSegmentRange(TestNetworkSegmentRange):
# Get the command object to test
self.cmd = network_segment_range.ShowNetworkSegmentRange(
- self.app, self.namespace)
+ self.app, self.namespace
+ )
def test_show_no_options(self):
# Missing required args should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, [], [])
+ self.assertRaises(
+ tests_utils.ParserException, self.check_parser, self.cmd, [], []
+ )
def test_show_all_options(self):
arglist = [
@@ -633,8 +697,7 @@ class TestShowNetworkSegmentRange(TestNetworkSegmentRange):
columns, data = self.cmd.take_action(parsed_args)
self.network.find_network_segment_range.assert_called_once_with(
- self._network_segment_range.id,
- ignore_missing=False
+ self._network_segment_range.id, ignore_missing=False
)
self.assertEqual(self.columns, columns)
diff --git a/openstackclient/tests/unit/network/v2/test_network_service_provider.py b/openstackclient/tests/unit/network/v2/test_network_service_provider.py
index 5e4ddea6..944e6936 100644
--- a/openstackclient/tests/unit/network/v2/test_network_service_provider.py
+++ b/openstackclient/tests/unit/network/v2/test_network_service_provider.py
@@ -15,23 +15,24 @@
from unittest import mock
-from openstackclient.network.v2 import network_service_provider \
- as service_provider
+from openstackclient.network.v2 import (
+ network_service_provider as service_provider,
+)
from openstackclient.tests.unit.network.v2 import fakes
class TestNetworkServiceProvider(fakes.TestNetworkV2):
-
def setUp(self):
super(TestNetworkServiceProvider, self).setUp()
self.network = self.app.client_manager.network
class TestListNetworkServiceProvider(TestNetworkServiceProvider):
- provider_list = \
+ provider_list = (
fakes.FakeNetworkServiceProvider.create_network_service_providers(
count=2
)
+ )
columns = (
'Service Type',
@@ -42,11 +43,13 @@ class TestListNetworkServiceProvider(TestNetworkServiceProvider):
data = []
for provider in provider_list:
- data.append((
- provider.service_type,
- provider.name,
- provider.is_default,
- ))
+ data.append(
+ (
+ provider.service_type,
+ provider.name,
+ provider.is_default,
+ )
+ )
def setUp(self):
super(TestListNetworkServiceProvider, self).setUp()
@@ -54,9 +57,9 @@ class TestListNetworkServiceProvider(TestNetworkServiceProvider):
return_value=self.provider_list
)
- self.cmd = \
- service_provider.ListNetworkServiceProvider(self.app,
- self.namespace)
+ self.cmd = service_provider.ListNetworkServiceProvider(
+ self.app, self.namespace
+ )
def test_network_service_provider_list(self):
arglist = []
diff --git a/openstackclient/tests/unit/network/v2/test_network_trunk.py b/openstackclient/tests/unit/network/v2/test_network_trunk.py
index fae70fb0..19a4f497 100644
--- a/openstackclient/tests/unit/network/v2/test_network_trunk.py
+++ b/openstackclient/tests/unit/network/v2/test_network_trunk.py
@@ -29,7 +29,6 @@ from openstackclient.tests.unit import utils as tests_utils
# Tests for Neutron trunks
#
class TestNetworkTrunk(network_fakes.TestNetworkV2):
-
def setUp(self):
super().setUp()
@@ -46,20 +45,23 @@ class TestCreateNetworkTrunk(TestNetworkTrunk):
domain = identity_fakes_v3.FakeDomain.create_one_domain()
trunk_networks = network_fakes.create_networks(count=2)
parent_port = network_fakes.create_one_port(
- attrs={'project_id': project.id,
- 'network_id': trunk_networks[0]['id']})
+ attrs={'project_id': project.id, 'network_id': trunk_networks[0]['id']}
+ )
sub_port = network_fakes.create_one_port(
- attrs={'project_id': project.id,
- 'network_id': trunk_networks[1]['id']})
+ attrs={'project_id': project.id, 'network_id': trunk_networks[1]['id']}
+ )
new_trunk = network_fakes.create_one_trunk(
- attrs={'project_id': project.id,
- 'port_id': parent_port['id'],
- 'sub_ports': {
- 'port_id': sub_port['id'],
- 'segmentation_id': 42,
- 'segmentation_type': 'vlan'}
- })
+ attrs={
+ 'project_id': project.id,
+ 'port_id': parent_port['id'],
+ 'sub_ports': {
+ 'port_id': sub_port['id'],
+ 'segmentation_id': 42,
+ 'segmentation_type': 'vlan',
+ },
+ }
+ )
columns = (
'description',
@@ -70,7 +72,7 @@ class TestCreateNetworkTrunk(TestNetworkTrunk):
'project_id',
'status',
'sub_ports',
- 'tags'
+ 'tags',
)
data = (
new_trunk.description,
@@ -88,7 +90,8 @@ class TestCreateNetworkTrunk(TestNetworkTrunk):
super().setUp()
self.network.create_trunk = mock.Mock(return_value=self.new_trunk)
self.network.find_port = mock.Mock(
- side_effect=[self.parent_port, self.sub_port])
+ side_effect=[self.parent_port, self.sub_port]
+ )
# Get the command object to test
self.cmd = network_trunk.CreateNetworkTrunk(self.app, self.namespace)
@@ -100,12 +103,18 @@ class TestCreateNetworkTrunk(TestNetworkTrunk):
arglist = []
verifylist = []
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_create_default_options(self):
arglist = [
- "--parent-port", self.new_trunk['port_id'],
+ "--parent-port",
+ self.new_trunk['port_id'],
self.new_trunk['name'],
]
verifylist = [
@@ -114,13 +123,15 @@ class TestCreateNetworkTrunk(TestNetworkTrunk):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_trunk.assert_called_once_with(**{
- 'name': self.new_trunk['name'],
- 'admin_state_up': self.new_trunk['admin_state_up'],
- 'port_id': self.new_trunk['port_id'],
- })
+ self.network.create_trunk.assert_called_once_with(
+ **{
+ 'name': self.new_trunk['name'],
+ 'admin_state_up': self.new_trunk['admin_state_up'],
+ 'port_id': self.new_trunk['port_id'],
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
@@ -129,37 +140,50 @@ class TestCreateNetworkTrunk(TestNetworkTrunk):
subport = self.new_trunk.sub_ports[0]
arglist = [
"--disable",
- "--description", self.new_trunk.description,
- "--parent-port", self.new_trunk.port_id,
- "--subport", 'port=%(port)s,segmentation-type=%(seg_type)s,'
- 'segmentation-id=%(seg_id)s' % {
+ "--description",
+ self.new_trunk.description,
+ "--parent-port",
+ self.new_trunk.port_id,
+ "--subport",
+ 'port=%(port)s,segmentation-type=%(seg_type)s,'
+ 'segmentation-id=%(seg_id)s'
+ % {
'seg_id': subport['segmentation_id'],
'seg_type': subport['segmentation_type'],
- 'port': subport['port_id']},
+ 'port': subport['port_id'],
+ },
self.new_trunk.name,
]
verifylist = [
('name', self.new_trunk.name),
('description', self.new_trunk.description),
('parent_port', self.new_trunk.port_id),
- ('add_subports', [{
- 'port': subport['port_id'],
- 'segmentation-id': str(subport['segmentation_id']),
- 'segmentation-type': subport['segmentation_type']}]),
+ (
+ 'add_subports',
+ [
+ {
+ 'port': subport['port_id'],
+ 'segmentation-id': str(subport['segmentation_id']),
+ 'segmentation-type': subport['segmentation_type'],
+ }
+ ],
+ ),
('disable', True),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_trunk.assert_called_once_with(**{
- 'name': self.new_trunk.name,
- 'description': self.new_trunk.description,
- 'admin_state_up': False,
- 'port_id': self.new_trunk.port_id,
- 'sub_ports': [subport],
- })
+ self.network.create_trunk.assert_called_once_with(
+ **{
+ 'name': self.new_trunk.name,
+ 'description': self.new_trunk.description,
+ 'admin_state_up': False,
+ 'port_id': self.new_trunk.port_id,
+ 'sub_ports': [subport],
+ }
+ )
self.assertEqual(self.columns, columns)
data_with_desc = list(self.data)
data_with_desc[0] = self.new_trunk['description']
@@ -169,27 +193,38 @@ class TestCreateNetworkTrunk(TestNetworkTrunk):
def test_create_trunk_with_subport_invalid_segmentation_id_fail(self):
subport = self.new_trunk.sub_ports[0]
arglist = [
- "--parent-port", self.new_trunk.port_id,
- "--subport", "port=%(port)s,segmentation-type=%(seg_type)s,"
- "segmentation-id=boom" % {
+ "--parent-port",
+ self.new_trunk.port_id,
+ "--subport",
+ "port=%(port)s,segmentation-type=%(seg_type)s,"
+ "segmentation-id=boom"
+ % {
'seg_type': subport['segmentation_type'],
- 'port': subport['port_id']},
+ 'port': subport['port_id'],
+ },
self.new_trunk.name,
]
verifylist = [
('name', self.new_trunk.name),
('parent_port', self.new_trunk.port_id),
- ('add_subports', [{
- 'port': subport['port_id'],
- 'segmentation-id': 'boom',
- 'segmentation-type': subport['segmentation_type']}]),
+ (
+ 'add_subports',
+ [
+ {
+ 'port': subport['port_id'],
+ 'segmentation-id': 'boom',
+ 'segmentation-type': subport['segmentation_type'],
+ }
+ ],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
with testtools.ExpectedException(exceptions.CommandError) as e:
self.cmd.take_action(parsed_args)
- self.assertEqual("Segmentation-id 'boom' is not an integer",
- str(e))
+ self.assertEqual(
+ "Segmentation-id 'boom' is not an integer", str(e)
+ )
def test_create_network_trunk_subports_without_optional_keys(self):
subport = copy.copy(self.new_trunk.sub_ports[0])
@@ -197,26 +232,29 @@ class TestCreateNetworkTrunk(TestNetworkTrunk):
subport.pop('segmentation_type')
subport.pop('segmentation_id')
arglist = [
- '--parent-port', self.new_trunk.port_id,
- '--subport', 'port=%(port)s' % {'port': subport['port_id']},
+ '--parent-port',
+ self.new_trunk.port_id,
+ '--subport',
+ 'port=%(port)s' % {'port': subport['port_id']},
self.new_trunk.name,
]
verifylist = [
('name', self.new_trunk.name),
('parent_port', self.new_trunk.port_id),
- ('add_subports', [{
- 'port': subport['port_id']}]),
+ ('add_subports', [{'port': subport['port_id']}]),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_trunk.assert_called_once_with(**{
- 'name': self.new_trunk.name,
- 'admin_state_up': True,
- 'port_id': self.new_trunk.port_id,
- 'sub_ports': [subport],
- })
+ self.network.create_trunk.assert_called_once_with(
+ **{
+ 'name': self.new_trunk.name,
+ 'admin_state_up': True,
+ 'port_id': self.new_trunk.port_id,
+ 'sub_ports': [subport],
+ }
+ )
self.assertEqual(self.columns, columns)
data_with_desc = list(self.data)
data_with_desc[0] = self.new_trunk['description']
@@ -226,19 +264,29 @@ class TestCreateNetworkTrunk(TestNetworkTrunk):
def test_create_network_trunk_subports_without_required_key_fail(self):
subport = self.new_trunk.sub_ports[0]
arglist = [
- '--parent-port', self.new_trunk.port_id,
- '--subport', 'segmentation-type=%(seg_type)s,'
- 'segmentation-id=%(seg_id)s' % {
+ '--parent-port',
+ self.new_trunk.port_id,
+ '--subport',
+ 'segmentation-type=%(seg_type)s,'
+ 'segmentation-id=%(seg_id)s'
+ % {
'seg_id': subport['segmentation_id'],
- 'seg_type': subport['segmentation_type']},
+ 'seg_type': subport['segmentation_type'],
+ },
self.new_trunk.name,
]
verifylist = [
('name', self.new_trunk.name),
('parent_port', self.new_trunk.port_id),
- ('add_subports', [{
- 'segmentation_id': str(subport['segmentation_id']),
- 'segmentation_type': subport['segmentation_type']}]),
+ (
+ 'add_subports',
+ [
+ {
+ 'segmentation_id': str(subport['segmentation_id']),
+ 'segmentation_type': subport['segmentation_type'],
+ }
+ ],
+ ),
]
with testtools.ExpectedException(argparse.ArgumentTypeError):
@@ -251,28 +299,33 @@ class TestDeleteNetworkTrunk(TestNetworkTrunk):
domain = identity_fakes_v3.FakeDomain.create_one_domain()
trunk_networks = network_fakes.create_networks(count=2)
parent_port = network_fakes.create_one_port(
- attrs={'project_id': project.id,
- 'network_id': trunk_networks[0]['id']})
+ attrs={'project_id': project.id, 'network_id': trunk_networks[0]['id']}
+ )
sub_port = network_fakes.create_one_port(
- attrs={'project_id': project.id,
- 'network_id': trunk_networks[1]['id']})
+ attrs={'project_id': project.id, 'network_id': trunk_networks[1]['id']}
+ )
new_trunks = network_fakes.create_trunks(
- attrs={'project_id': project.id,
- 'port_id': parent_port['id'],
- 'sub_ports': {
- 'port_id': sub_port['id'],
- 'segmentation_id': 42,
- 'segmentation_type': 'vlan'}
- })
+ attrs={
+ 'project_id': project.id,
+ 'port_id': parent_port['id'],
+ 'sub_ports': {
+ 'port_id': sub_port['id'],
+ 'segmentation_id': 42,
+ 'segmentation_type': 'vlan',
+ },
+ }
+ )
def setUp(self):
super().setUp()
self.network.find_trunk = mock.Mock(
- side_effect=[self.new_trunks[0], self.new_trunks[1]])
+ side_effect=[self.new_trunks[0], self.new_trunks[1]]
+ )
self.network.delete_trunk = mock.Mock(return_value=None)
self.network.find_port = mock.Mock(
- side_effect=[self.parent_port, self.sub_port])
+ side_effect=[self.parent_port, self.sub_port]
+ )
self.projects_mock.get.return_value = self.project
self.domains_mock.get.return_value = self.domain
@@ -291,7 +344,8 @@ class TestDeleteNetworkTrunk(TestNetworkTrunk):
result = self.cmd.take_action(parsed_args)
self.network.delete_trunk.assert_called_once_with(
- self.new_trunks[0].id)
+ self.new_trunks[0].id
+ )
self.assertIsNone(result)
def test_delete_trunk_multiple(self):
@@ -319,13 +373,13 @@ class TestDeleteNetworkTrunk(TestNetworkTrunk):
'unexist_trunk',
]
verifylist = [
- ('trunk',
- [self.new_trunks[0].name, 'unexist_trunk']),
+ ('trunk', [self.new_trunks[0].name, 'unexist_trunk']),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
self.network.find_trunk = mock.Mock(
- side_effect=[self.new_trunks[0], exceptions.CommandError])
+ side_effect=[self.new_trunks[0], exceptions.CommandError]
+ )
with testtools.ExpectedException(exceptions.CommandError) as e:
self.cmd.take_action(parsed_args)
self.assertEqual('1 of 2 trunks failed to delete.', str(e))
@@ -335,7 +389,6 @@ class TestDeleteNetworkTrunk(TestNetworkTrunk):
class TestShowNetworkTrunk(TestNetworkTrunk):
-
project = identity_fakes_v3.FakeProject.create_one_project()
domain = identity_fakes_v3.FakeDomain.create_one_domain()
# The trunk to set.
@@ -349,7 +402,7 @@ class TestShowNetworkTrunk(TestNetworkTrunk):
'project_id',
'status',
'sub_ports',
- 'tags'
+ 'tags',
)
data = (
new_trunk.description,
@@ -378,8 +431,13 @@ class TestShowNetworkTrunk(TestNetworkTrunk):
arglist = []
verifylist = []
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_show_all_options(self):
arglist = [
@@ -402,41 +460,32 @@ class TestListNetworkTrunk(TestNetworkTrunk):
domain = identity_fakes_v3.FakeDomain.create_one_domain()
# Create trunks to be listed.
new_trunks = network_fakes.create_trunks(
- {'created_at': '2001-01-01 00:00:00',
- 'updated_at': '2001-01-01 00:00:00'}, count=3)
-
- columns = (
- 'ID',
- 'Name',
- 'Parent Port',
- 'Description'
- )
- columns_long = columns + (
- 'Status',
- 'State',
- 'Created At',
- 'Updated At'
+ {
+ 'created_at': '2001-01-01 00:00:00',
+ 'updated_at': '2001-01-01 00:00:00',
+ },
+ count=3,
)
+
+ columns = ('ID', 'Name', 'Parent Port', 'Description')
+ columns_long = columns + ('Status', 'State', 'Created At', 'Updated At')
data = []
for t in new_trunks:
- data.append((
- t['id'],
- t['name'],
- t['port_id'],
- t['description']
- ))
+ data.append((t['id'], t['name'], t['port_id'], t['description']))
data_long = []
for t in new_trunks:
- data_long.append((
- t['id'],
- t['name'],
- t['port_id'],
- t['description'],
- t['status'],
- network_trunk.AdminStateColumn(''),
- '2001-01-01 00:00:00',
- '2001-01-01 00:00:00',
- ))
+ data_long.append(
+ (
+ t['id'],
+ t['name'],
+ t['port_id'],
+ t['description'],
+ t['status'],
+ network_trunk.AdminStateColumn(''),
+ '2001-01-01 00:00:00',
+ '2001-01-01 00:00:00',
+ )
+ )
def setUp(self):
super().setUp()
@@ -476,25 +525,27 @@ class TestListNetworkTrunk(TestNetworkTrunk):
class TestSetNetworkTrunk(TestNetworkTrunk):
-
project = identity_fakes_v3.FakeProject.create_one_project()
domain = identity_fakes_v3.FakeDomain.create_one_domain()
trunk_networks = network_fakes.create_networks(count=2)
parent_port = network_fakes.create_one_port(
- attrs={'project_id': project.id,
- 'network_id': trunk_networks[0]['id']})
+ attrs={'project_id': project.id, 'network_id': trunk_networks[0]['id']}
+ )
sub_port = network_fakes.create_one_port(
- attrs={'project_id': project.id,
- 'network_id': trunk_networks[1]['id']})
+ attrs={'project_id': project.id, 'network_id': trunk_networks[1]['id']}
+ )
# Create trunks to be listed.
_trunk = network_fakes.create_one_trunk(
- attrs={'project_id': project.id,
- 'port_id': parent_port['id'],
- 'sub_ports': {
- 'port_id': sub_port['id'],
- 'segmentation_id': 42,
- 'segmentation_type': 'vlan'}
- })
+ attrs={
+ 'project_id': project.id,
+ 'port_id': parent_port['id'],
+ 'sub_ports': {
+ 'port_id': sub_port['id'],
+ 'segmentation_id': 42,
+ 'segmentation_type': 'vlan',
+ },
+ }
+ )
columns = (
'admin_state_up',
'id',
@@ -521,7 +572,8 @@ class TestSetNetworkTrunk(TestNetworkTrunk):
self.network.add_trunk_subports = mock.Mock(return_value=self._trunk)
self.network.find_trunk = mock.Mock(return_value=self._trunk)
self.network.find_port = mock.Mock(
- side_effect=[self.sub_port, self.sub_port])
+ side_effect=[self.sub_port, self.sub_port]
+ )
self.projects_mock.get.return_value = self.project
self.domains_mock.get.return_value = self.domain
@@ -531,7 +583,8 @@ class TestSetNetworkTrunk(TestNetworkTrunk):
def _test_set_network_trunk_attr(self, attr, value):
arglist = [
- '--%s' % attr, value,
+ '--%s' % attr,
+ value,
self._trunk[attr],
]
verifylist = [
@@ -545,8 +598,7 @@ class TestSetNetworkTrunk(TestNetworkTrunk):
attrs = {
attr: value,
}
- self.network.update_trunk.assert_called_once_with(
- self._trunk, **attrs)
+ self.network.update_trunk.assert_called_once_with(self._trunk, **attrs)
self.assertIsNone(result)
def test_set_network_trunk_name(self):
@@ -571,8 +623,7 @@ class TestSetNetworkTrunk(TestNetworkTrunk):
attrs = {
'admin_state_up': False,
}
- self.network.update_trunk.assert_called_once_with(
- self._trunk, **attrs)
+ self.network.update_trunk.assert_called_once_with(self._trunk, **attrs)
self.assertIsNone(result)
def test_set_network_trunk_admin_state_up_enable(self):
@@ -591,45 +642,57 @@ class TestSetNetworkTrunk(TestNetworkTrunk):
attrs = {
'admin_state_up': True,
}
- self.network.update_trunk.assert_called_once_with(
- self._trunk, **attrs)
+ self.network.update_trunk.assert_called_once_with(self._trunk, **attrs)
self.assertIsNone(result)
def test_set_network_trunk_nothing(self):
- arglist = [self._trunk['name'], ]
- verifylist = [('trunk', self._trunk['name']), ]
+ arglist = [
+ self._trunk['name'],
+ ]
+ verifylist = [
+ ('trunk', self._trunk['name']),
+ ]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
attrs = {}
- self.network.update_trunk.assert_called_once_with(
- self._trunk, **attrs)
+ self.network.update_trunk.assert_called_once_with(self._trunk, **attrs)
self.assertIsNone(result)
def test_set_network_trunk_subports(self):
subport = self._trunk['sub_ports'][0]
arglist = [
- '--subport', 'port=%(port)s,segmentation-type=%(seg_type)s,'
- 'segmentation-id=%(seg_id)s' % {
+ '--subport',
+ 'port=%(port)s,segmentation-type=%(seg_type)s,'
+ 'segmentation-id=%(seg_id)s'
+ % {
'seg_id': subport['segmentation_id'],
'seg_type': subport['segmentation_type'],
- 'port': subport['port_id']},
+ 'port': subport['port_id'],
+ },
self._trunk['name'],
]
verifylist = [
('trunk', self._trunk['name']),
- ('set_subports', [{
- 'port': subport['port_id'],
- 'segmentation-id': str(subport['segmentation_id']),
- 'segmentation-type': subport['segmentation_type']}]),
+ (
+ 'set_subports',
+ [
+ {
+ 'port': subport['port_id'],
+ 'segmentation-id': str(subport['segmentation_id']),
+ 'segmentation-type': subport['segmentation_type'],
+ }
+ ],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.network.add_trunk_subports.assert_called_once_with(
- self._trunk, [subport])
+ self._trunk, [subport]
+ )
self.assertIsNone(result)
def test_set_network_trunk_subports_without_optional_keys(self):
@@ -638,36 +701,46 @@ class TestSetNetworkTrunk(TestNetworkTrunk):
subport.pop('segmentation_type')
subport.pop('segmentation_id')
arglist = [
- '--subport', 'port=%(port)s' % {'port': subport['port_id']},
+ '--subport',
+ 'port=%(port)s' % {'port': subport['port_id']},
self._trunk['name'],
]
verifylist = [
('trunk', self._trunk['name']),
- ('set_subports', [{
- 'port': subport['port_id']}]),
+ ('set_subports', [{'port': subport['port_id']}]),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.network.add_trunk_subports.assert_called_once_with(
- self._trunk, [subport])
+ self._trunk, [subport]
+ )
self.assertIsNone(result)
def test_set_network_trunk_subports_without_required_key_fail(self):
subport = self._trunk['sub_ports'][0]
arglist = [
- '--subport', 'segmentation-type=%(seg_type)s,'
- 'segmentation-id=%(seg_id)s' % {
+ '--subport',
+ 'segmentation-type=%(seg_type)s,'
+ 'segmentation-id=%(seg_id)s'
+ % {
'seg_id': subport['segmentation_id'],
- 'seg_type': subport['segmentation_type']},
+ 'seg_type': subport['segmentation_type'],
+ },
self._trunk['name'],
]
verifylist = [
('trunk', self._trunk['name']),
- ('set_subports', [{
- 'segmentation-id': str(subport['segmentation_id']),
- 'segmentation-type': subport['segmentation_type']}]),
+ (
+ 'set_subports',
+ [
+ {
+ 'segmentation-id': str(subport['segmentation_id']),
+ 'segmentation-type': subport['segmentation_type'],
+ }
+ ],
+ ),
]
with testtools.ExpectedException(argparse.ArgumentTypeError):
@@ -677,7 +750,8 @@ class TestSetNetworkTrunk(TestNetworkTrunk):
def test_set_trunk_attrs_with_exception(self):
arglist = [
- '--name', 'reallylongname',
+ '--name',
+ 'reallylongname',
self._trunk['name'],
]
verifylist = [
@@ -686,22 +760,22 @@ class TestSetNetworkTrunk(TestNetworkTrunk):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- self.network.update_trunk = (
- mock.Mock(side_effect=exceptions.CommandError)
+ self.network.update_trunk = mock.Mock(
+ side_effect=exceptions.CommandError
)
with testtools.ExpectedException(exceptions.CommandError) as e:
self.cmd.take_action(parsed_args)
self.assertEqual(
- "Failed to set trunk '%s': " % self._trunk['name'],
- str(e))
+ "Failed to set trunk '%s': " % self._trunk['name'], str(e)
+ )
attrs = {'name': 'reallylongname'}
- self.network.update_trunk.assert_called_once_with(
- self._trunk, **attrs)
+ self.network.update_trunk.assert_called_once_with(self._trunk, **attrs)
self.network.add_trunk_subports.assert_not_called()
def test_set_trunk_add_subport_with_exception(self):
arglist = [
- '--subport', 'port=invalid_subport',
+ '--subport',
+ 'port=invalid_subport',
self._trunk['name'],
]
verifylist = [
@@ -710,24 +784,25 @@ class TestSetNetworkTrunk(TestNetworkTrunk):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- self.network.add_trunk_subports = (
- mock.Mock(side_effect=exceptions.CommandError)
+ self.network.add_trunk_subports = mock.Mock(
+ side_effect=exceptions.CommandError
+ )
+ self.network.find_port = mock.Mock(
+ return_value={'id': 'invalid_subport'}
)
- self.network.find_port = (mock.Mock(
- return_value={'id': 'invalid_subport'}))
with testtools.ExpectedException(exceptions.CommandError) as e:
self.cmd.take_action(parsed_args)
self.assertEqual(
"Failed to add subports to trunk '%s': " % self._trunk['name'],
- str(e))
- self.network.update_trunk.assert_called_once_with(
- self._trunk)
+ str(e),
+ )
+ self.network.update_trunk.assert_called_once_with(self._trunk)
self.network.add_trunk_subports.assert_called_once_with(
- self._trunk, [{'port_id': 'invalid_subport'}])
+ self._trunk, [{'port_id': 'invalid_subport'}]
+ )
class TestListNetworkSubport(TestNetworkTrunk):
-
_trunk = network_fakes.create_one_trunk()
_subports = _trunk['sub_ports']
@@ -738,25 +813,29 @@ class TestListNetworkSubport(TestNetworkTrunk):
)
data = []
for s in _subports:
- data.append((
- s['port_id'],
- s['segmentation_type'],
- s['segmentation_id'],
- ))
+ data.append(
+ (
+ s['port_id'],
+ s['segmentation_type'],
+ s['segmentation_id'],
+ )
+ )
def setUp(self):
super().setUp()
self.network.find_trunk = mock.Mock(return_value=self._trunk)
self.network.get_trunk_subports = mock.Mock(
- return_value={network_trunk.SUB_PORTS: self._subports})
+ return_value={network_trunk.SUB_PORTS: self._subports}
+ )
# Get the command object to test
self.cmd = network_trunk.ListNetworkSubport(self.app, self.namespace)
def test_subport_list(self):
arglist = [
- '--trunk', self._trunk['name'],
+ '--trunk',
+ self._trunk['name'],
]
verifylist = [
('trunk', self._trunk['name']),
@@ -774,19 +853,22 @@ class TestUnsetNetworkTrunk(TestNetworkTrunk):
domain = identity_fakes_v3.FakeDomain.create_one_domain()
trunk_networks = network_fakes.create_networks(count=2)
parent_port = network_fakes.create_one_port(
- attrs={'project_id': project.id,
- 'network_id': trunk_networks[0]['id']})
+ attrs={'project_id': project.id, 'network_id': trunk_networks[0]['id']}
+ )
sub_port = network_fakes.create_one_port(
- attrs={'project_id': project.id,
- 'network_id': trunk_networks[1]['id']})
+ attrs={'project_id': project.id, 'network_id': trunk_networks[1]['id']}
+ )
_trunk = network_fakes.create_one_trunk(
- attrs={'project_id': project.id,
- 'port_id': parent_port['id'],
- 'sub_ports': {
- 'port_id': sub_port['id'],
- 'segmentation_id': 42,
- 'segmentation_type': 'vlan'}
- })
+ attrs={
+ 'project_id': project.id,
+ 'port_id': parent_port['id'],
+ 'sub_ports': {
+ 'port_id': sub_port['id'],
+ 'segmentation_id': 42,
+ 'segmentation_type': 'vlan',
+ },
+ }
+ )
columns = (
'admin_state_up',
@@ -812,7 +894,8 @@ class TestUnsetNetworkTrunk(TestNetworkTrunk):
self.network.find_trunk = mock.Mock(return_value=self._trunk)
self.network.find_port = mock.Mock(
- side_effect=[self.sub_port, self.sub_port])
+ side_effect=[self.sub_port, self.sub_port]
+ )
self.network.delete_trunk_subports = mock.Mock(return_value=None)
# Get the command object to test
@@ -821,7 +904,8 @@ class TestUnsetNetworkTrunk(TestNetworkTrunk):
def test_unset_network_trunk_subport(self):
subport = self._trunk['sub_ports'][0]
arglist = [
- "--subport", subport['port_id'],
+ "--subport",
+ subport['port_id'],
self._trunk['name'],
]
@@ -835,8 +919,7 @@ class TestUnsetNetworkTrunk(TestNetworkTrunk):
result = self.cmd.take_action(parsed_args)
self.network.delete_trunk_subports.assert_called_once_with(
- self._trunk,
- [{'port_id': subport['port_id']}]
+ self._trunk, [{'port_id': subport['port_id']}]
)
self.assertIsNone(result)
@@ -847,5 +930,10 @@ class TestUnsetNetworkTrunk(TestNetworkTrunk):
verifylist = [
('trunk', self._trunk['name']),
]
- self.assertRaises(tests_utils.ParserException,
- self.check_parser, self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
diff --git a/openstackclient/tests/unit/network/v2/test_port.py b/openstackclient/tests/unit/network/v2/test_port.py
index 04412c5a..0f6bb9c3 100644
--- a/openstackclient/tests/unit/network/v2/test_port.py
+++ b/openstackclient/tests/unit/network/v2/test_port.py
@@ -31,7 +31,6 @@ LIST_FIELDS_TO_RETRIEVE_LONG = ('security_group_ids', 'device_owner', 'tags')
class TestPort(network_fakes.TestNetworkV2):
-
def setUp(self):
super(TestPort, self).setUp()
@@ -124,7 +123,6 @@ class TestPort(network_fakes.TestNetworkV2):
class TestCreatePort(TestPort):
-
_port = network_fakes.create_one_port()
columns, data = TestPort._get_common_cols_data(_port)
@@ -133,9 +131,11 @@ class TestCreatePort(TestPort):
self.network.create_port = mock.Mock(return_value=self._port)
self.network.set_tags = mock.Mock(return_value=None)
- fake_net = network_fakes.create_one_network({
- 'id': self._port.network_id,
- })
+ fake_net = network_fakes.create_one_network(
+ {
+ 'id': self._port.network_id,
+ }
+ )
self.network.find_network = mock.Mock(return_value=fake_net)
self.fake_subnet = network_fakes.FakeSubnet.create_one_subnet()
self.network.find_subnet = mock.Mock(return_value=self.fake_subnet)
@@ -145,23 +145,29 @@ class TestCreatePort(TestPort):
def test_create_default_options(self):
arglist = [
- '--network', self._port.network_id,
+ '--network',
+ self._port.network_id,
'test-port',
]
verifylist = [
- ('network', self._port.network_id,),
+ (
+ 'network',
+ self._port.network_id,
+ ),
('enable', True),
('name', 'test-port'),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_port.assert_called_once_with(**{
- 'admin_state_up': True,
- 'network_id': self._port.network_id,
- 'name': 'test-port',
- })
+ self.network.create_port.assert_called_once_with(
+ **{
+ 'admin_state_up': True,
+ 'network_id': self._port.network_id,
+ 'name': 'test-port',
+ }
+ )
self.assertFalse(self.network.set_tags.called)
self.assertEqual(set(self.columns), set(columns))
@@ -169,27 +175,36 @@ class TestCreatePort(TestPort):
def test_create_full_options(self):
arglist = [
- '--mac-address', 'aa:aa:aa:aa:aa:aa',
- '--fixed-ip', 'subnet=%s,ip-address=10.0.0.2'
- % self.fake_subnet.id,
- '--description', self._port.description,
- '--device', 'deviceid',
- '--device-owner', 'fakeowner',
+ '--mac-address',
+ 'aa:aa:aa:aa:aa:aa',
+ '--fixed-ip',
+ 'subnet=%s,ip-address=10.0.0.2' % self.fake_subnet.id,
+ '--description',
+ self._port.description,
+ '--device',
+ 'deviceid',
+ '--device-owner',
+ 'fakeowner',
'--disable',
- '--vnic-type', 'macvtap',
- '--binding-profile', 'foo=bar',
- '--binding-profile', 'foo2=bar2',
- '--network', self._port.network_id,
- '--dns-domain', 'example.org',
- '--dns-name', '8.8.8.8',
+ '--vnic-type',
+ 'macvtap',
+ '--binding-profile',
+ 'foo=bar',
+ '--binding-profile',
+ 'foo2=bar2',
+ '--network',
+ self._port.network_id,
+ '--dns-domain',
+ 'example.org',
+ '--dns-name',
+ '8.8.8.8',
'test-port',
-
]
verifylist = [
('mac_address', 'aa:aa:aa:aa:aa:aa'),
(
'fixed_ip',
- [{'subnet': self.fake_subnet.id, 'ip-address': '10.0.0.2'}]
+ [{'subnet': self.fake_subnet.id, 'ip-address': '10.0.0.2'}],
),
('description', self._port.description),
('device', 'deviceid'),
@@ -204,56 +219,73 @@ class TestCreatePort(TestPort):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_port.assert_called_once_with(**{
- 'mac_address': 'aa:aa:aa:aa:aa:aa',
- 'fixed_ips': [{'subnet_id': self.fake_subnet.id,
- 'ip_address': '10.0.0.2'}],
- 'description': self._port.description,
- 'device_id': 'deviceid',
- 'device_owner': 'fakeowner',
- 'admin_state_up': False,
- 'binding:vnic_type': 'macvtap',
- 'binding:profile': {'foo': 'bar', 'foo2': 'bar2'},
- 'network_id': self._port.network_id,
- 'dns_domain': 'example.org',
- 'dns_name': '8.8.8.8',
- 'name': 'test-port',
- })
+ self.network.create_port.assert_called_once_with(
+ **{
+ 'mac_address': 'aa:aa:aa:aa:aa:aa',
+ 'fixed_ips': [
+ {
+ 'subnet_id': self.fake_subnet.id,
+ 'ip_address': '10.0.0.2',
+ }
+ ],
+ 'description': self._port.description,
+ 'device_id': 'deviceid',
+ 'device_owner': 'fakeowner',
+ 'admin_state_up': False,
+ 'binding:vnic_type': 'macvtap',
+ 'binding:profile': {'foo': 'bar', 'foo2': 'bar2'},
+ 'network_id': self._port.network_id,
+ 'dns_domain': 'example.org',
+ 'dns_name': '8.8.8.8',
+ 'name': 'test-port',
+ }
+ )
self.assertEqual(set(self.columns), set(columns))
self.assertCountEqual(self.data, data)
def test_create_invalid_json_binding_profile(self):
arglist = [
- '--network', self._port.network_id,
- '--binding-profile', '{"parent_name":"fake_parent"',
+ '--network',
+ self._port.network_id,
+ '--binding-profile',
+ '{"parent_name":"fake_parent"',
'test-port',
]
- self.assertRaises(argparse.ArgumentTypeError,
- self.check_parser,
- self.cmd,
- arglist,
- None)
+ self.assertRaises(
+ argparse.ArgumentTypeError,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ None,
+ )
def test_create_invalid_key_value_binding_profile(self):
arglist = [
- '--network', self._port.network_id,
- '--binding-profile', 'key',
+ '--network',
+ self._port.network_id,
+ '--binding-profile',
+ 'key',
'test-port',
]
- self.assertRaises(argparse.ArgumentTypeError,
- self.check_parser,
- self.cmd,
- arglist,
- None)
+ self.assertRaises(
+ argparse.ArgumentTypeError,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ None,
+ )
def test_create_json_binding_profile(self):
arglist = [
- '--network', self._port.network_id,
- '--binding-profile', '{"parent_name":"fake_parent"}',
- '--binding-profile', '{"tag":42}',
+ '--network',
+ self._port.network_id,
+ '--binding-profile',
+ '{"parent_name":"fake_parent"}',
+ '--binding-profile',
+ '{"tag":42}',
'test-port',
]
verifylist = [
@@ -264,14 +296,16 @@ class TestCreatePort(TestPort):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_port.assert_called_once_with(**{
- 'admin_state_up': True,
- 'network_id': self._port.network_id,
- 'binding:profile': {'parent_name': 'fake_parent', 'tag': 42},
- 'name': 'test-port',
- })
+ self.network.create_port.assert_called_once_with(
+ **{
+ 'admin_state_up': True,
+ 'network_id': self._port.network_id,
+ 'binding:profile': {'parent_name': 'fake_parent', 'tag': 42},
+ 'name': 'test-port',
+ }
+ )
self.assertEqual(set(self.columns), set(columns))
self.assertCountEqual(self.data, data)
@@ -280,53 +314,67 @@ class TestCreatePort(TestPort):
secgroup = network_fakes.FakeSecurityGroup.create_one_security_group()
self.network.find_security_group = mock.Mock(return_value=secgroup)
arglist = [
- '--network', self._port.network_id,
- '--security-group', secgroup.id,
+ '--network',
+ self._port.network_id,
+ '--security-group',
+ secgroup.id,
'test-port',
]
verifylist = [
- ('network', self._port.network_id,),
+ (
+ 'network',
+ self._port.network_id,
+ ),
('enable', True),
('security_group', [secgroup.id]),
('name', 'test-port'),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_port.assert_called_once_with(**{
- 'admin_state_up': True,
- 'network_id': self._port.network_id,
- 'security_group_ids': [secgroup.id],
- 'name': 'test-port',
- })
+ self.network.create_port.assert_called_once_with(
+ **{
+ 'admin_state_up': True,
+ 'network_id': self._port.network_id,
+ 'security_group_ids': [secgroup.id],
+ 'name': 'test-port',
+ }
+ )
self.assertEqual(set(self.columns), set(columns))
self.assertCountEqual(self.data, data)
def test_create_port_with_dns_name(self):
arglist = [
- '--network', self._port.network_id,
- '--dns-name', '8.8.8.8',
+ '--network',
+ self._port.network_id,
+ '--dns-name',
+ '8.8.8.8',
'test-port',
]
verifylist = [
- ('network', self._port.network_id,),
+ (
+ 'network',
+ self._port.network_id,
+ ),
('enable', True),
('dns_name', '8.8.8.8'),
('name', 'test-port'),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_port.assert_called_once_with(**{
- 'admin_state_up': True,
- 'network_id': self._port.network_id,
- 'dns_name': '8.8.8.8',
- 'name': 'test-port',
- })
+ self.network.create_port.assert_called_once_with(
+ **{
+ 'admin_state_up': True,
+ 'network_id': self._port.network_id,
+ 'dns_name': '8.8.8.8',
+ 'name': 'test-port',
+ }
+ )
self.assertEqual(set(self.columns), set(columns))
self.assertCountEqual(self.data, data)
@@ -336,34 +384,43 @@ class TestCreatePort(TestPort):
sg_2 = network_fakes.FakeSecurityGroup.create_one_security_group()
self.network.find_security_group = mock.Mock(side_effect=[sg_1, sg_2])
arglist = [
- '--network', self._port.network_id,
- '--security-group', sg_1.id,
- '--security-group', sg_2.id,
+ '--network',
+ self._port.network_id,
+ '--security-group',
+ sg_1.id,
+ '--security-group',
+ sg_2.id,
'test-port',
]
verifylist = [
- ('network', self._port.network_id,),
+ (
+ 'network',
+ self._port.network_id,
+ ),
('enable', True),
('security_group', [sg_1.id, sg_2.id]),
('name', 'test-port'),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_port.assert_called_once_with(**{
- 'admin_state_up': True,
- 'network_id': self._port.network_id,
- 'security_group_ids': [sg_1.id, sg_2.id],
- 'name': 'test-port',
- })
+ self.network.create_port.assert_called_once_with(
+ **{
+ 'admin_state_up': True,
+ 'network_id': self._port.network_id,
+ 'security_group_ids': [sg_1.id, sg_2.id],
+ 'name': 'test-port',
+ }
+ )
self.assertEqual(set(self.columns), set(columns))
self.assertCountEqual(self.data, data)
def test_create_with_no_security_groups(self):
arglist = [
- '--network', self._port.network_id,
+ '--network',
+ self._port.network_id,
'--no-security-group',
'test-port',
]
@@ -375,21 +432,24 @@ class TestCreatePort(TestPort):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_port.assert_called_once_with(**{
- 'admin_state_up': True,
- 'network_id': self._port.network_id,
- 'security_group_ids': [],
- 'name': 'test-port',
- })
+ self.network.create_port.assert_called_once_with(
+ **{
+ 'admin_state_up': True,
+ 'network_id': self._port.network_id,
+ 'security_group_ids': [],
+ 'name': 'test-port',
+ }
+ )
self.assertEqual(set(self.columns), set(columns))
self.assertCountEqual(self.data, data)
def test_create_with_no_fixed_ips(self):
arglist = [
- '--network', self._port.network_id,
+ '--network',
+ self._port.network_id,
'--no-fixed-ip',
'test-port',
]
@@ -401,55 +461,73 @@ class TestCreatePort(TestPort):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_port.assert_called_once_with(**{
- 'admin_state_up': True,
- 'network_id': self._port.network_id,
- 'fixed_ips': [],
- 'name': 'test-port',
- })
+ self.network.create_port.assert_called_once_with(
+ **{
+ 'admin_state_up': True,
+ 'network_id': self._port.network_id,
+ 'fixed_ips': [],
+ 'name': 'test-port',
+ }
+ )
self.assertEqual(set(self.columns), set(columns))
self.assertCountEqual(self.data, data)
def test_create_port_with_allowed_address_pair_ipaddr(self):
- pairs = [{'ip_address': '192.168.1.123'},
- {'ip_address': '192.168.1.45'}]
+ pairs = [
+ {'ip_address': '192.168.1.123'},
+ {'ip_address': '192.168.1.45'},
+ ]
arglist = [
- '--network', self._port.network_id,
- '--allowed-address', 'ip-address=192.168.1.123',
- '--allowed-address', 'ip-address=192.168.1.45',
+ '--network',
+ self._port.network_id,
+ '--allowed-address',
+ 'ip-address=192.168.1.123',
+ '--allowed-address',
+ 'ip-address=192.168.1.45',
'test-port',
]
verifylist = [
('network', self._port.network_id),
('enable', True),
- ('allowed_address_pairs', [{'ip-address': '192.168.1.123'},
- {'ip-address': '192.168.1.45'}]),
+ (
+ 'allowed_address_pairs',
+ [
+ {'ip-address': '192.168.1.123'},
+ {'ip-address': '192.168.1.45'},
+ ],
+ ),
('name', 'test-port'),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_port.assert_called_once_with(**{
- 'admin_state_up': True,
- 'network_id': self._port.network_id,
- 'allowed_address_pairs': pairs,
- 'name': 'test-port',
- })
+ self.network.create_port.assert_called_once_with(
+ **{
+ 'admin_state_up': True,
+ 'network_id': self._port.network_id,
+ 'allowed_address_pairs': pairs,
+ 'name': 'test-port',
+ }
+ )
self.assertEqual(set(self.columns), set(columns))
self.assertCountEqual(self.data, data)
def test_create_port_with_allowed_address_pair(self):
- pairs = [{'ip_address': '192.168.1.123',
- 'mac_address': 'aa:aa:aa:aa:aa:aa'},
- {'ip_address': '192.168.1.45',
- 'mac_address': 'aa:aa:aa:aa:aa:b1'}]
+ pairs = [
+ {
+ 'ip_address': '192.168.1.123',
+ 'mac_address': 'aa:aa:aa:aa:aa:aa',
+ },
+ {'ip_address': '192.168.1.45', 'mac_address': 'aa:aa:aa:aa:aa:b1'},
+ ]
arglist = [
- '--network', self._port.network_id,
+ '--network',
+ self._port.network_id,
'--allowed-address',
'ip-address=192.168.1.123,mac-address=aa:aa:aa:aa:aa:aa',
'--allowed-address',
@@ -459,22 +537,33 @@ class TestCreatePort(TestPort):
verifylist = [
('network', self._port.network_id),
('enable', True),
- ('allowed_address_pairs', [{'ip-address': '192.168.1.123',
- 'mac-address': 'aa:aa:aa:aa:aa:aa'},
- {'ip-address': '192.168.1.45',
- 'mac-address': 'aa:aa:aa:aa:aa:b1'}]),
+ (
+ 'allowed_address_pairs',
+ [
+ {
+ 'ip-address': '192.168.1.123',
+ 'mac-address': 'aa:aa:aa:aa:aa:aa',
+ },
+ {
+ 'ip-address': '192.168.1.45',
+ 'mac-address': 'aa:aa:aa:aa:aa:b1',
+ },
+ ],
+ ),
('name', 'test-port'),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_port.assert_called_once_with(**{
- 'admin_state_up': True,
- 'network_id': self._port.network_id,
- 'allowed_address_pairs': pairs,
- 'name': 'test-port',
- })
+ self.network.create_port.assert_called_once_with(
+ **{
+ 'admin_state_up': True,
+ 'network_id': self._port.network_id,
+ 'allowed_address_pairs': pairs,
+ 'name': 'test-port',
+ }
+ )
self.assertEqual(set(self.columns), set(columns))
self.assertCountEqual(self.data, data)
@@ -483,38 +572,49 @@ class TestCreatePort(TestPort):
qos_policy = network_fakes.FakeNetworkQosPolicy.create_one_qos_policy()
self.network.find_qos_policy = mock.Mock(return_value=qos_policy)
arglist = [
- '--network', self._port.network_id,
- '--qos-policy', qos_policy.id,
+ '--network',
+ self._port.network_id,
+ '--qos-policy',
+ qos_policy.id,
'test-port',
]
verifylist = [
- ('network', self._port.network_id,),
+ (
+ 'network',
+ self._port.network_id,
+ ),
('enable', True),
('qos_policy', qos_policy.id),
('name', 'test-port'),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_port.assert_called_once_with(**{
- 'admin_state_up': True,
- 'network_id': self._port.network_id,
- 'qos_policy_id': qos_policy.id,
- 'name': 'test-port',
- })
+ self.network.create_port.assert_called_once_with(
+ **{
+ 'admin_state_up': True,
+ 'network_id': self._port.network_id,
+ 'qos_policy_id': qos_policy.id,
+ 'name': 'test-port',
+ }
+ )
self.assertEqual(set(self.columns), set(columns))
self.assertCountEqual(self.data, data)
def test_create_port_security_enabled(self):
arglist = [
- '--network', self._port.network_id,
+ '--network',
+ self._port.network_id,
'--enable-port-security',
'test-port',
]
verifylist = [
- ('network', self._port.network_id,),
+ (
+ 'network',
+ self._port.network_id,
+ ),
('enable', True),
('enable_port_security', True),
('name', 'test-port'),
@@ -524,21 +624,27 @@ class TestCreatePort(TestPort):
self.cmd.take_action(parsed_args)
- self.network.create_port.assert_called_once_with(**{
- 'admin_state_up': True,
- 'network_id': self._port.network_id,
- 'port_security_enabled': True,
- 'name': 'test-port',
- })
+ self.network.create_port.assert_called_once_with(
+ **{
+ 'admin_state_up': True,
+ 'network_id': self._port.network_id,
+ 'port_security_enabled': True,
+ 'name': 'test-port',
+ }
+ )
def test_create_port_security_disabled(self):
arglist = [
- '--network', self._port.network_id,
+ '--network',
+ self._port.network_id,
'--disable-port-security',
'test-port',
]
verifylist = [
- ('network', self._port.network_id,),
+ (
+ 'network',
+ self._port.network_id,
+ ),
('enable', True),
('disable_port_security', True),
('name', 'test-port'),
@@ -548,16 +654,19 @@ class TestCreatePort(TestPort):
self.cmd.take_action(parsed_args)
- self.network.create_port.assert_called_once_with(**{
- 'admin_state_up': True,
- 'network_id': self._port.network_id,
- 'port_security_enabled': False,
- 'name': 'test-port',
- })
+ self.network.create_port.assert_called_once_with(
+ **{
+ 'admin_state_up': True,
+ 'network_id': self._port.network_id,
+ 'port_security_enabled': False,
+ 'name': 'test-port',
+ }
+ )
def _test_create_with_tag(self, add_tags=True, add_tags_in_post=True):
arglist = [
- '--network', self._port.network_id,
+ '--network',
+ self._port.network_id,
'test-port',
]
if add_tags:
@@ -565,7 +674,10 @@ class TestCreatePort(TestPort):
else:
arglist += ['--no-tag']
verifylist = [
- ('network', self._port.network_id,),
+ (
+ 'network',
+ self._port.network_id,
+ ),
('enable', True),
('name', 'test-port'),
]
@@ -577,7 +689,7 @@ class TestCreatePort(TestPort):
self.network.find_extension = mock.Mock(return_value=add_tags_in_post)
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
args = {
'admin_state_up': True,
@@ -598,18 +710,19 @@ class TestCreatePort(TestPort):
# tags list which is used to call create_port().
create_port_call_kwargs = self.network.create_port.call_args[1]
create_port_call_kwargs['tags'] = sorted(
- create_port_call_kwargs['tags'])
+ create_port_call_kwargs['tags']
+ )
self.assertDictEqual(args, create_port_call_kwargs)
else:
self.network.create_port.assert_called_once_with(
admin_state_up=True,
network_id=self._port.network_id,
- name='test-port'
+ name='test-port',
)
if add_tags:
self.network.set_tags.assert_called_once_with(
- self._port,
- tests_utils.CompareBySet(['red', 'blue']))
+ self._port, tests_utils.CompareBySet(['red', 'blue'])
+ )
else:
self.assertFalse(self.network.set_tags.called)
@@ -630,7 +743,8 @@ class TestCreatePort(TestPort):
def _test_create_with_uplink_status_propagation(self, enable=True):
arglist = [
- '--network', self._port.network_id,
+ '--network',
+ self._port.network_id,
'test-port',
]
if enable:
@@ -638,7 +752,10 @@ class TestCreatePort(TestPort):
else:
arglist += ['--disable-uplink-status-propagation']
verifylist = [
- ('network', self._port.network_id,),
+ (
+ 'network',
+ self._port.network_id,
+ ),
('name', 'test-port'),
]
if enable:
@@ -647,14 +764,16 @@ class TestCreatePort(TestPort):
verifylist.append(('disable_uplink_status_propagation', True))
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_port.assert_called_once_with(**{
- 'admin_state_up': True,
- 'network_id': self._port.network_id,
- 'propagate_uplink_status': enable,
- 'name': 'test-port',
- })
+ self.network.create_port.assert_called_once_with(
+ **{
+ 'admin_state_up': True,
+ 'network_id': self._port.network_id,
+ 'propagate_uplink_status': enable,
+ 'name': 'test-port',
+ }
+ )
self.assertEqual(set(self.columns), set(columns))
self.assertCountEqual(self.data, data)
@@ -666,33 +785,53 @@ class TestCreatePort(TestPort):
self._test_create_with_uplink_status_propagation(enable=False)
def test_create_port_with_extra_dhcp_option(self):
- extra_dhcp_options = [{'opt_name': 'classless-static-route',
- 'opt_value': '169.254.169.254/32,22.2.0.2,'
- '0.0.0.0/0,22.2.0.1',
- 'ip_version': '4'},
- {'opt_name': 'dns-server',
- 'opt_value': '240C::6666',
- 'ip_version': '6'}]
- arglist = [
- '--network', self._port.network_id,
- '--extra-dhcp-option', 'name=classless-static-route,'
- 'value=169.254.169.254/32,22.2.0.2,'
- '0.0.0.0/0,22.2.0.1,'
- 'ip-version=4',
- '--extra-dhcp-option', 'name=dns-server,value=240C::6666,'
- 'ip-version=6',
+ extra_dhcp_options = [
+ {
+ 'opt_name': 'classless-static-route',
+ 'opt_value': '169.254.169.254/32,22.2.0.2,'
+ '0.0.0.0/0,22.2.0.1',
+ 'ip_version': '4',
+ },
+ {
+ 'opt_name': 'dns-server',
+ 'opt_value': '240C::6666',
+ 'ip_version': '6',
+ },
+ ]
+ arglist = [
+ '--network',
+ self._port.network_id,
+ '--extra-dhcp-option',
+ 'name=classless-static-route,'
+ 'value=169.254.169.254/32,22.2.0.2,'
+ '0.0.0.0/0,22.2.0.1,'
+ 'ip-version=4',
+ '--extra-dhcp-option',
+ 'name=dns-server,value=240C::6666,' 'ip-version=6',
'test-port',
]
verifylist = [
- ('network', self._port.network_id,),
- ('extra_dhcp_options', [{'name': 'classless-static-route',
- 'value': '169.254.169.254/32,22.2.0.2,'
- '0.0.0.0/0,22.2.0.1',
- 'ip-version': '4'},
- {'name': 'dns-server',
- 'value': '240C::6666',
- 'ip-version': '6'}]),
+ (
+ 'network',
+ self._port.network_id,
+ ),
+ (
+ 'extra_dhcp_options',
+ [
+ {
+ 'name': 'classless-static-route',
+ 'value': '169.254.169.254/32,22.2.0.2,'
+ '0.0.0.0/0,22.2.0.1',
+ 'ip-version': '4',
+ },
+ {
+ 'name': 'dns-server',
+ 'value': '240C::6666',
+ 'ip-version': '6',
+ },
+ ],
+ ),
('name', 'test-port'),
]
@@ -700,16 +839,19 @@ class TestCreatePort(TestPort):
self.cmd.take_action(parsed_args)
- self.network.create_port.assert_called_once_with(**{
- 'admin_state_up': True,
- 'network_id': self._port.network_id,
- 'extra_dhcp_opts': extra_dhcp_options,
- 'name': 'test-port',
- })
+ self.network.create_port.assert_called_once_with(
+ **{
+ 'admin_state_up': True,
+ 'network_id': self._port.network_id,
+ 'extra_dhcp_opts': extra_dhcp_options,
+ 'name': 'test-port',
+ }
+ )
def _test_create_with_numa_affinity_policy(self, policy=None):
arglist = [
- '--network', self._port.network_id,
+ '--network',
+ self._port.network_id,
'test-port',
]
if policy:
@@ -717,7 +859,10 @@ class TestCreatePort(TestPort):
numa_affinity_policy = None if not policy else policy
verifylist = [
- ('network', self._port.network_id,),
+ (
+ 'network',
+ self._port.network_id,
+ ),
('name', 'test-port'),
]
if policy:
@@ -725,7 +870,7 @@ class TestCreatePort(TestPort):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
create_args = {
'admin_state_up': True,
@@ -753,20 +898,28 @@ class TestCreatePort(TestPort):
def test_create_with_device_profile(self):
arglist = [
- '--network', self._port.network_id,
- '--device-profile', 'cyborg_device_profile_1',
+ '--network',
+ self._port.network_id,
+ '--device-profile',
+ 'cyborg_device_profile_1',
'test-port',
]
verifylist = [
- ('network', self._port.network_id,),
- ('device_profile', self._port.device_profile,),
+ (
+ 'network',
+ self._port.network_id,
+ ),
+ (
+ 'device_profile',
+ self._port.device_profile,
+ ),
('name', 'test-port'),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
create_args = {
'admin_state_up': True,
@@ -780,7 +933,6 @@ class TestCreatePort(TestPort):
class TestDeletePort(TestPort):
-
# Ports to delete.
_ports = network_fakes.create_ports(count=2)
@@ -788,8 +940,7 @@ class TestDeletePort(TestPort):
super(TestDeletePort, self).setUp()
self.network.delete_port = mock.Mock(return_value=None)
- self.network.find_port = network_fakes.get_ports(
- ports=self._ports)
+ self.network.find_port = network_fakes.get_ports(ports=self._ports)
# Get the command object to test
self.cmd = port.DeletePort(self.app, self.namespace)
@@ -804,7 +955,8 @@ class TestDeletePort(TestPort):
result = self.cmd.take_action(parsed_args)
self.network.find_port.assert_called_once_with(
- self._ports[0].name, ignore_missing=False)
+ self._ports[0].name, ignore_missing=False
+ )
self.network.delete_port.assert_called_once_with(self._ports[0])
self.assertIsNone(result)
@@ -833,15 +985,12 @@ class TestDeletePort(TestPort):
'unexist_port',
]
verifylist = [
- ('port',
- [self._ports[0].name, 'unexist_port']),
+ ('port', [self._ports[0].name, 'unexist_port']),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
find_mock_result = [self._ports[0], exceptions.CommandError]
- self.network.find_port = (
- mock.Mock(side_effect=find_mock_result)
- )
+ self.network.find_port = mock.Mock(side_effect=find_mock_result)
try:
self.cmd.take_action(parsed_args)
@@ -850,16 +999,15 @@ class TestDeletePort(TestPort):
self.assertEqual('1 of 2 ports failed to delete.', str(e))
self.network.find_port.assert_any_call(
- self._ports[0].name, ignore_missing=False)
+ self._ports[0].name, ignore_missing=False
+ )
self.network.find_port.assert_any_call(
- 'unexist_port', ignore_missing=False)
- self.network.delete_port.assert_called_once_with(
- self._ports[0]
+ 'unexist_port', ignore_missing=False
)
+ self.network.delete_port.assert_called_once_with(self._ports[0])
class TestListPort(TestPort):
-
_ports = network_fakes.create_ports(count=3)
columns = (
@@ -883,26 +1031,30 @@ class TestListPort(TestPort):
data = []
for prt in _ports:
- data.append((
- prt.id,
- prt.name,
- prt.mac_address,
- format_columns.ListDictColumn(prt.fixed_ips),
- prt.status,
- ))
+ data.append(
+ (
+ prt.id,
+ prt.name,
+ prt.mac_address,
+ format_columns.ListDictColumn(prt.fixed_ips),
+ prt.status,
+ )
+ )
data_long = []
for prt in _ports:
- data_long.append((
- prt.id,
- prt.name,
- prt.mac_address,
- format_columns.ListDictColumn(prt.fixed_ips),
- prt.status,
- format_columns.ListColumn(prt.security_group_ids),
- prt.device_owner,
- format_columns.ListColumn(prt.tags),
- ))
+ data_long.append(
+ (
+ prt.id,
+ prt.name,
+ prt.mac_address,
+ format_columns.ListDictColumn(prt.fixed_ips),
+ prt.status,
+ format_columns.ListColumn(prt.security_group_ids),
+ prt.device_owner,
+ format_columns.ListColumn(prt.tags),
+ )
+ )
def setUp(self):
super(TestListPort, self).setUp()
@@ -910,12 +1062,16 @@ class TestListPort(TestPort):
# Get the command object to test
self.cmd = port.ListPort(self.app, self.namespace)
self.network.ports = mock.Mock(return_value=self._ports)
- fake_router = network_fakes.FakeRouter.create_one_router({
- 'id': 'fake-router-id',
- })
- fake_network = network_fakes.create_one_network({
- 'id': 'fake-network-id',
- })
+ fake_router = network_fakes.FakeRouter.create_one_router(
+ {
+ 'id': 'fake-router-id',
+ }
+ )
+ fake_network = network_fakes.create_one_network(
+ {
+ 'id': 'fake-network-id',
+ }
+ )
self.network.find_router = mock.Mock(return_value=fake_router)
self.network.find_network = mock.Mock(return_value=fake_network)
self.app.client_manager.compute = mock.Mock()
@@ -929,27 +1085,29 @@ class TestListPort(TestPort):
columns, data = self.cmd.take_action(parsed_args)
self.network.ports.assert_called_once_with(
- fields=LIST_FIELDS_TO_RETRIEVE)
+ fields=LIST_FIELDS_TO_RETRIEVE
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
def test_port_list_router_opt(self):
arglist = [
- '--router', 'fake-router-name',
+ '--router',
+ 'fake-router-name',
]
- verifylist = [
- ('router', 'fake-router-name')
- ]
+ verifylist = [('router', 'fake-router-name')]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.ports.assert_called_once_with(**{
- 'device_id': 'fake-router-id',
- 'fields': LIST_FIELDS_TO_RETRIEVE,
- })
+ self.network.ports.assert_called_once_with(
+ **{
+ 'device_id': 'fake-router-id',
+ 'fields': LIST_FIELDS_TO_RETRIEVE,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
@@ -959,7 +1117,8 @@ class TestListPort(TestPort):
mock_find.return_value = fake_server
arglist = [
- '--server', 'fake-server-name',
+ '--server',
+ 'fake-server-name',
]
verifylist = [
('server', 'fake-server-name'),
@@ -968,160 +1127,173 @@ class TestListPort(TestPort):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
self.network.ports.assert_called_once_with(
- device_id=fake_server.id,
- fields=LIST_FIELDS_TO_RETRIEVE)
+ device_id=fake_server.id, fields=LIST_FIELDS_TO_RETRIEVE
+ )
mock_find.assert_called_once_with(mock.ANY, 'fake-server-name')
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
def test_port_list_device_id_opt(self):
arglist = [
- '--device-id', self._ports[0].device_id,
+ '--device-id',
+ self._ports[0].device_id,
]
- verifylist = [
- ('device_id', self._ports[0].device_id)
- ]
+ verifylist = [('device_id', self._ports[0].device_id)]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.ports.assert_called_once_with(**{
- 'device_id': self._ports[0].device_id,
- 'fields': LIST_FIELDS_TO_RETRIEVE,
- })
+ self.network.ports.assert_called_once_with(
+ **{
+ 'device_id': self._ports[0].device_id,
+ 'fields': LIST_FIELDS_TO_RETRIEVE,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
def test_port_list_device_owner_opt(self):
arglist = [
- '--device-owner', self._ports[0].device_owner,
+ '--device-owner',
+ self._ports[0].device_owner,
]
- verifylist = [
- ('device_owner', self._ports[0].device_owner)
- ]
+ verifylist = [('device_owner', self._ports[0].device_owner)]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.ports.assert_called_once_with(**{
- 'device_owner': self._ports[0].device_owner,
- 'fields': LIST_FIELDS_TO_RETRIEVE,
- })
+ self.network.ports.assert_called_once_with(
+ **{
+ 'device_owner': self._ports[0].device_owner,
+ 'fields': LIST_FIELDS_TO_RETRIEVE,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
def test_port_list_all_opt(self):
arglist = [
- '--device-owner', self._ports[0].device_owner,
- '--router', 'fake-router-name',
- '--network', 'fake-network-name',
- '--mac-address', self._ports[0].mac_address,
+ '--device-owner',
+ self._ports[0].device_owner,
+ '--router',
+ 'fake-router-name',
+ '--network',
+ 'fake-network-name',
+ '--mac-address',
+ self._ports[0].mac_address,
]
verifylist = [
('device_owner', self._ports[0].device_owner),
('router', 'fake-router-name'),
('network', 'fake-network-name'),
- ('mac_address', self._ports[0].mac_address)
+ ('mac_address', self._ports[0].mac_address),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.ports.assert_called_once_with(**{
- 'device_owner': self._ports[0].device_owner,
- 'device_id': 'fake-router-id',
- 'network_id': 'fake-network-id',
- 'mac_address': self._ports[0].mac_address,
- 'fields': LIST_FIELDS_TO_RETRIEVE,
- })
+ self.network.ports.assert_called_once_with(
+ **{
+ 'device_owner': self._ports[0].device_owner,
+ 'device_id': 'fake-router-id',
+ 'network_id': 'fake-network-id',
+ 'mac_address': self._ports[0].mac_address,
+ 'fields': LIST_FIELDS_TO_RETRIEVE,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
def test_port_list_mac_address_opt(self):
arglist = [
- '--mac-address', self._ports[0].mac_address,
+ '--mac-address',
+ self._ports[0].mac_address,
]
- verifylist = [
- ('mac_address', self._ports[0].mac_address)
- ]
+ verifylist = [('mac_address', self._ports[0].mac_address)]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.ports.assert_called_once_with(**{
- 'mac_address': self._ports[0].mac_address,
- 'fields': LIST_FIELDS_TO_RETRIEVE,
- })
+ self.network.ports.assert_called_once_with(
+ **{
+ 'mac_address': self._ports[0].mac_address,
+ 'fields': LIST_FIELDS_TO_RETRIEVE,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
def test_port_list_fixed_ip_opt_ip_address(self):
ip_address = self._ports[0].fixed_ips[0]['ip_address']
arglist = [
- '--fixed-ip', "ip-address=%s" % ip_address,
- ]
- verifylist = [
- ('fixed_ip', [{'ip-address': ip_address}])
+ '--fixed-ip',
+ "ip-address=%s" % ip_address,
]
+ verifylist = [('fixed_ip', [{'ip-address': ip_address}])]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.ports.assert_called_once_with(**{
- 'fixed_ips': ['ip_address=%s' % ip_address],
- 'fields': LIST_FIELDS_TO_RETRIEVE,
- })
+ self.network.ports.assert_called_once_with(
+ **{
+ 'fixed_ips': ['ip_address=%s' % ip_address],
+ 'fields': LIST_FIELDS_TO_RETRIEVE,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
def test_port_list_fixed_ip_opt_ip_address_substr(self):
ip_address_ss = self._ports[0].fixed_ips[0]['ip_address'][:-1]
arglist = [
- '--fixed-ip', "ip-substring=%s" % ip_address_ss,
- ]
- verifylist = [
- ('fixed_ip', [{'ip-substring': ip_address_ss}])
+ '--fixed-ip',
+ "ip-substring=%s" % ip_address_ss,
]
+ verifylist = [('fixed_ip', [{'ip-substring': ip_address_ss}])]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.ports.assert_called_once_with(**{
- 'fixed_ips': ['ip_address_substr=%s' % ip_address_ss],
- 'fields': LIST_FIELDS_TO_RETRIEVE,
- })
+ self.network.ports.assert_called_once_with(
+ **{
+ 'fixed_ips': ['ip_address_substr=%s' % ip_address_ss],
+ 'fields': LIST_FIELDS_TO_RETRIEVE,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
def test_port_list_fixed_ip_opt_subnet_id(self):
subnet_id = self._ports[0].fixed_ips[0]['subnet_id']
arglist = [
- '--fixed-ip', "subnet=%s" % subnet_id,
- ]
- verifylist = [
- ('fixed_ip', [{'subnet': subnet_id}])
+ '--fixed-ip',
+ "subnet=%s" % subnet_id,
]
+ verifylist = [('fixed_ip', [{'subnet': subnet_id}])]
self.fake_subnet = network_fakes.FakeSubnet.create_one_subnet(
- {'id': subnet_id})
+ {'id': subnet_id}
+ )
self.network.find_subnet = mock.Mock(return_value=self.fake_subnet)
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.ports.assert_called_once_with(**{
- 'fixed_ips': ['subnet_id=%s' % subnet_id],
- 'fields': LIST_FIELDS_TO_RETRIEVE,
- })
+ self.network.ports.assert_called_once_with(
+ **{
+ 'fixed_ips': ['subnet_id=%s' % subnet_id],
+ 'fields': LIST_FIELDS_TO_RETRIEVE,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
@@ -1129,25 +1301,29 @@ class TestListPort(TestPort):
subnet_id = self._ports[0].fixed_ips[0]['subnet_id']
ip_address = self._ports[0].fixed_ips[0]['ip_address']
arglist = [
- '--fixed-ip', "subnet=%s,ip-address=%s" % (subnet_id,
- ip_address)
+ '--fixed-ip',
+ "subnet=%s,ip-address=%s" % (subnet_id, ip_address),
]
verifylist = [
- ('fixed_ip', [{'subnet': subnet_id,
- 'ip-address': ip_address}])
+ ('fixed_ip', [{'subnet': subnet_id, 'ip-address': ip_address}])
]
self.fake_subnet = network_fakes.FakeSubnet.create_one_subnet(
- {'id': subnet_id})
+ {'id': subnet_id}
+ )
self.network.find_subnet = mock.Mock(return_value=self.fake_subnet)
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.ports.assert_called_once_with(**{
- 'fixed_ips': ['subnet_id=%s' % subnet_id,
- 'ip_address=%s' % ip_address],
- 'fields': LIST_FIELDS_TO_RETRIEVE,
- })
+ self.network.ports.assert_called_once_with(
+ **{
+ 'fixed_ips': [
+ 'subnet_id=%s' % subnet_id,
+ 'ip_address=%s' % ip_address,
+ ],
+ 'fields': LIST_FIELDS_TO_RETRIEVE,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
@@ -1155,27 +1331,34 @@ class TestListPort(TestPort):
subnet_id = self._ports[0].fixed_ips[0]['subnet_id']
ip_address = self._ports[0].fixed_ips[0]['ip_address']
arglist = [
- '--fixed-ip', "subnet=%s" % subnet_id,
- '--fixed-ip', "ip-address=%s" % ip_address,
+ '--fixed-ip',
+ "subnet=%s" % subnet_id,
+ '--fixed-ip',
+ "ip-address=%s" % ip_address,
]
verifylist = [
- ('fixed_ip', [{'subnet': subnet_id},
- {'ip-address': ip_address}])
+ ('fixed_ip', [{'subnet': subnet_id}, {'ip-address': ip_address}])
]
- self.fake_subnet = network_fakes.FakeSubnet.create_one_subnet({
- 'id': subnet_id,
- 'fields': LIST_FIELDS_TO_RETRIEVE,
- })
+ self.fake_subnet = network_fakes.FakeSubnet.create_one_subnet(
+ {
+ 'id': subnet_id,
+ 'fields': LIST_FIELDS_TO_RETRIEVE,
+ }
+ )
self.network.find_subnet = mock.Mock(return_value=self.fake_subnet)
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.ports.assert_called_once_with(**{
- 'fixed_ips': ['subnet_id=%s' % subnet_id,
- 'ip_address=%s' % ip_address],
- 'fields': LIST_FIELDS_TO_RETRIEVE,
- })
+ self.network.ports.assert_called_once_with(
+ **{
+ 'fixed_ips': [
+ 'subnet_id=%s' % subnet_id,
+ 'ip_address=%s' % ip_address,
+ ],
+ 'fields': LIST_FIELDS_TO_RETRIEVE,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
@@ -1193,13 +1376,15 @@ class TestListPort(TestPort):
columns, data = self.cmd.take_action(parsed_args)
self.network.ports.assert_called_once_with(
- fields=LIST_FIELDS_TO_RETRIEVE + LIST_FIELDS_TO_RETRIEVE_LONG)
+ fields=LIST_FIELDS_TO_RETRIEVE + LIST_FIELDS_TO_RETRIEVE_LONG
+ )
self.assertEqual(self.columns_long, columns)
self.assertCountEqual(self.data_long, list(data))
def test_port_list_host(self):
arglist = [
- '--host', 'foobar',
+ '--host',
+ 'foobar',
]
verifylist = [
('host', 'foobar'),
@@ -1220,7 +1405,8 @@ class TestListPort(TestPort):
project = identity_fakes.FakeProject.create_one_project()
self.projects_mock.get.return_value = project
arglist = [
- '--project', project.id,
+ '--project',
+ project.id,
]
verifylist = [
('project', project.id),
@@ -1241,8 +1427,10 @@ class TestListPort(TestPort):
project = identity_fakes.FakeProject.create_one_project()
self.projects_mock.get.return_value = project
arglist = [
- '--project', project.id,
- '--project-domain', project.domain_id,
+ '--project',
+ project.id,
+ '--project-domain',
+ project.domain_id,
]
verifylist = [
('project', project.id),
@@ -1263,7 +1451,8 @@ class TestListPort(TestPort):
def test_port_list_name(self):
test_name = "fakename"
arglist = [
- '--name', test_name,
+ '--name',
+ test_name,
]
verifylist = [
('name', test_name),
@@ -1282,10 +1471,14 @@ class TestListPort(TestPort):
def test_list_with_tag_options(self):
arglist = [
- '--tags', 'red,blue',
- '--any-tags', 'red,green',
- '--not-tags', 'orange,yellow',
- '--not-any-tags', 'black,white',
+ '--tags',
+ 'red,blue',
+ '--any-tags',
+ 'red,green',
+ '--not-tags',
+ 'orange,yellow',
+ '--not-any-tags',
+ 'black,white',
]
verifylist = [
('tags', ['red', 'blue']),
@@ -1297,19 +1490,23 @@ class TestListPort(TestPort):
columns, data = self.cmd.take_action(parsed_args)
self.network.ports.assert_called_once_with(
- **{'tags': 'red,blue',
- 'any_tags': 'red,green',
- 'not_tags': 'orange,yellow',
- 'not_any_tags': 'black,white',
- 'fields': LIST_FIELDS_TO_RETRIEVE}
+ **{
+ 'tags': 'red,blue',
+ 'any_tags': 'red,green',
+ 'not_tags': 'orange,yellow',
+ 'not_any_tags': 'black,white',
+ 'fields': LIST_FIELDS_TO_RETRIEVE,
+ }
)
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
def test_port_list_security_group(self):
arglist = [
- '--security-group', 'sg-id1',
- '--security-group', 'sg-id2',
+ '--security-group',
+ 'sg-id1',
+ '--security-group',
+ 'sg-id2',
]
verifylist = [
('security_groups', ['sg-id1', 'sg-id2']),
@@ -1328,7 +1525,6 @@ class TestListPort(TestPort):
class TestSetPort(TestPort):
-
_port = network_fakes.create_one_port({'tags': ['green', 'red']})
def setUp(self):
@@ -1358,10 +1554,12 @@ class TestSetPort(TestPort):
def test_set_port_fixed_ip(self):
_testport = network_fakes.create_one_port(
- {'fixed_ips': [{'ip_address': '0.0.0.1'}]})
+ {'fixed_ips': [{'ip_address': '0.0.0.1'}]}
+ )
self.network.find_port = mock.Mock(return_value=_testport)
arglist = [
- '--fixed-ip', 'ip-address=10.0.0.12',
+ '--fixed-ip',
+ 'ip-address=10.0.0.12',
_testport.name,
]
verifylist = [
@@ -1382,16 +1580,18 @@ class TestSetPort(TestPort):
def test_set_port_fixed_ip_clear(self):
_testport = network_fakes.create_one_port(
- {'fixed_ips': [{'ip_address': '0.0.0.1'}]})
+ {'fixed_ips': [{'ip_address': '0.0.0.1'}]}
+ )
self.network.find_port = mock.Mock(return_value=_testport)
arglist = [
- '--fixed-ip', 'ip-address=10.0.0.12',
+ '--fixed-ip',
+ 'ip-address=10.0.0.12',
'--no-fixed-ip',
_testport.name,
]
verifylist = [
('fixed_ip', [{'ip-address': '10.0.0.12'}]),
- ('no_fixed_ip', True)
+ ('no_fixed_ip', True),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
@@ -1406,7 +1606,8 @@ class TestSetPort(TestPort):
def test_set_port_dns_name(self):
arglist = [
- '--dns-name', '8.8.8.8',
+ '--dns-name',
+ '8.8.8.8',
self._port.name,
]
verifylist = [
@@ -1425,32 +1626,35 @@ class TestSetPort(TestPort):
def test_set_port_overwrite_binding_profile(self):
_testport = network_fakes.create_one_port(
- {'binding_profile': {'lok_i': 'visi_on'}})
+ {'binding_profile': {'lok_i': 'visi_on'}}
+ )
self.network.find_port = mock.Mock(return_value=_testport)
arglist = [
- '--binding-profile', 'lok_i=than_os',
+ '--binding-profile',
+ 'lok_i=than_os',
'--no-binding-profile',
_testport.name,
]
verifylist = [
('binding_profile', {'lok_i': 'than_os'}),
- ('no_binding_profile', True)
+ ('no_binding_profile', True),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
attrs = {
- 'binding:profile':
- {'lok_i': 'than_os'},
+ 'binding:profile': {'lok_i': 'than_os'},
}
self.network.update_port.assert_called_once_with(_testport, **attrs)
self.assertIsNone(result)
def test_overwrite_mac_address(self):
_testport = network_fakes.create_one_port(
- {'mac_address': '11:22:33:44:55:66'})
+ {'mac_address': '11:22:33:44:55:66'}
+ )
self.network.find_port = mock.Mock(return_value=_testport)
arglist = [
- '--mac-address', '66:55:44:33:22:11',
+ '--mac-address',
+ '66:55:44:33:22:11',
_testport.name,
]
verifylist = [
@@ -1491,12 +1695,17 @@ class TestSetPort(TestPort):
def test_set_port_that(self):
arglist = [
- '--description', 'newDescription',
+ '--description',
+ 'newDescription',
'--enable',
- '--vnic-type', 'macvtap',
- '--binding-profile', 'foo=bar',
- '--host', 'binding-host-id-xxxx',
- '--name', 'newName',
+ '--vnic-type',
+ 'macvtap',
+ '--binding-profile',
+ 'foo=bar',
+ '--host',
+ 'binding-host-id-xxxx',
+ '--name',
+ 'newName',
self._port.name,
]
verifylist = [
@@ -1525,30 +1734,38 @@ class TestSetPort(TestPort):
def test_set_port_invalid_json_binding_profile(self):
arglist = [
- '--binding-profile', '{"parent_name"}',
+ '--binding-profile',
+ '{"parent_name"}',
'test-port',
]
- self.assertRaises(argparse.ArgumentTypeError,
- self.check_parser,
- self.cmd,
- arglist,
- None)
+ self.assertRaises(
+ argparse.ArgumentTypeError,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ None,
+ )
def test_set_port_invalid_key_value_binding_profile(self):
arglist = [
- '--binding-profile', 'key',
+ '--binding-profile',
+ 'key',
'test-port',
]
- self.assertRaises(argparse.ArgumentTypeError,
- self.check_parser,
- self.cmd,
- arglist,
- None)
+ self.assertRaises(
+ argparse.ArgumentTypeError,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ None,
+ )
def test_set_port_mixed_binding_profile(self):
arglist = [
- '--binding-profile', 'foo=bar',
- '--binding-profile', '{"foo2": "bar2"}',
+ '--binding-profile',
+ 'foo=bar',
+ '--binding-profile',
+ '{"foo2": "bar2"}',
self._port.name,
]
verifylist = [
@@ -1569,7 +1786,8 @@ class TestSetPort(TestPort):
sg = network_fakes.FakeSecurityGroup.create_one_security_group()
self.network.find_security_group = mock.Mock(return_value=sg)
arglist = [
- '--security-group', sg.id,
+ '--security-group',
+ sg.id,
self._port.name,
]
verifylist = [
@@ -1591,11 +1809,14 @@ class TestSetPort(TestPort):
sg_3 = network_fakes.FakeSecurityGroup.create_one_security_group()
self.network.find_security_group = mock.Mock(side_effect=[sg_2, sg_3])
_testport = network_fakes.create_one_port(
- {'security_group_ids': [sg_1.id]})
+ {'security_group_ids': [sg_1.id]}
+ )
self.network.find_port = mock.Mock(return_value=_testport)
arglist = [
- '--security-group', sg_2.id,
- '--security-group', sg_3.id,
+ '--security-group',
+ sg_2.id,
+ '--security-group',
+ sg_3.id,
_testport.name,
]
verifylist = [
@@ -1633,17 +1854,19 @@ class TestSetPort(TestPort):
sg1 = network_fakes.FakeSecurityGroup.create_one_security_group()
sg2 = network_fakes.FakeSecurityGroup.create_one_security_group()
_testport = network_fakes.create_one_port(
- {'security_group_ids': [sg1.id]})
+ {'security_group_ids': [sg1.id]}
+ )
self.network.find_port = mock.Mock(return_value=_testport)
self.network.find_security_group = mock.Mock(return_value=sg2)
arglist = [
- '--security-group', sg2.id,
+ '--security-group',
+ sg2.id,
'--no-security-group',
_testport.name,
]
verifylist = [
('security_group', [sg2.id]),
- ('no_security_group', True)
+ ('no_security_group', True),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
@@ -1656,7 +1879,8 @@ class TestSetPort(TestPort):
def test_set_port_allowed_address_pair(self):
arglist = [
- '--allowed-address', 'ip-address=192.168.1.123',
+ '--allowed-address',
+ 'ip-address=192.168.1.123',
self._port.name,
]
verifylist = [
@@ -1675,10 +1899,12 @@ class TestSetPort(TestPort):
def test_set_port_append_allowed_address_pair(self):
_testport = network_fakes.create_one_port(
- {'allowed_address_pairs': [{'ip_address': '192.168.1.123'}]})
+ {'allowed_address_pairs': [{'ip_address': '192.168.1.123'}]}
+ )
self.network.find_port = mock.Mock(return_value=_testport)
arglist = [
- '--allowed-address', 'ip-address=192.168.1.45',
+ '--allowed-address',
+ 'ip-address=192.168.1.45',
_testport.name,
]
verifylist = [
@@ -1690,18 +1916,22 @@ class TestSetPort(TestPort):
result = self.cmd.take_action(parsed_args)
attrs = {
- 'allowed_address_pairs': [{'ip_address': '192.168.1.123'},
- {'ip_address': '192.168.1.45'}],
+ 'allowed_address_pairs': [
+ {'ip_address': '192.168.1.123'},
+ {'ip_address': '192.168.1.45'},
+ ],
}
self.network.update_port.assert_called_once_with(_testport, **attrs)
self.assertIsNone(result)
def test_set_port_overwrite_allowed_address_pair(self):
_testport = network_fakes.create_one_port(
- {'allowed_address_pairs': [{'ip_address': '192.168.1.123'}]})
+ {'allowed_address_pairs': [{'ip_address': '192.168.1.123'}]}
+ )
self.network.find_port = mock.Mock(return_value=_testport)
arglist = [
- '--allowed-address', 'ip-address=192.168.1.45',
+ '--allowed-address',
+ 'ip-address=192.168.1.45',
'--no-allowed-address',
_testport.name,
]
@@ -1741,12 +1971,12 @@ class TestSetPort(TestPort):
def test_set_port_extra_dhcp_option(self):
arglist = [
- '--extra-dhcp-option', 'name=foo,value=bar',
+ '--extra-dhcp-option',
+ 'name=foo,value=bar',
self._port.name,
]
verifylist = [
- ('extra_dhcp_options', [{'name': 'foo',
- 'value': 'bar'}]),
+ ('extra_dhcp_options', [{'name': 'foo', 'value': 'bar'}]),
('port', self._port.name),
]
@@ -1754,8 +1984,7 @@ class TestSetPort(TestPort):
result = self.cmd.take_action(parsed_args)
attrs = {
- 'extra_dhcp_opts': [{'opt_name': 'foo',
- 'opt_value': 'bar'}],
+ 'extra_dhcp_opts': [{'opt_name': 'foo', 'opt_value': 'bar'}],
}
self.network.update_port.assert_called_once_with(self._port, **attrs)
self.assertIsNone(result)
@@ -1767,16 +1996,22 @@ class TestSetPort(TestPort):
]
verifylist = [
('enable_port_security', True),
- ('port', self._port.id,)
+ (
+ 'port',
+ self._port.id,
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
self.cmd.take_action(parsed_args)
- self.network.update_port.assert_called_once_with(self._port, **{
- 'port_security_enabled': True,
- })
+ self.network.update_port.assert_called_once_with(
+ self._port,
+ **{
+ 'port_security_enabled': True,
+ }
+ )
def test_set_port_security_disabled(self):
arglist = [
@@ -1785,25 +2020,31 @@ class TestSetPort(TestPort):
]
verifylist = [
('disable_port_security', True),
- ('port', self._port.id,)
+ (
+ 'port',
+ self._port.id,
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
self.cmd.take_action(parsed_args)
- self.network.update_port.assert_called_once_with(self._port, **{
- 'port_security_enabled': False,
- })
+ self.network.update_port.assert_called_once_with(
+ self._port,
+ **{
+ 'port_security_enabled': False,
+ }
+ )
def test_set_port_with_qos(self):
qos_policy = network_fakes.FakeNetworkQosPolicy.create_one_qos_policy()
self.network.find_qos_policy = mock.Mock(return_value=qos_policy)
- _testport = network_fakes.create_one_port(
- {'qos_policy_id': None})
+ _testport = network_fakes.create_one_port({'qos_policy_id': None})
self.network.find_port = mock.Mock(return_value=_testport)
arglist = [
- '--qos-policy', qos_policy.id,
+ '--qos-policy',
+ qos_policy.id,
_testport.name,
]
verifylist = [
@@ -1821,11 +2062,11 @@ class TestSetPort(TestPort):
self.assertIsNone(result)
def test_set_port_data_plane_status(self):
- _testport = network_fakes.create_one_port(
- {'data_plane_status': None})
+ _testport = network_fakes.create_one_port({'data_plane_status': None})
self.network.find_port = mock.Mock(return_value=_testport)
arglist = [
- '--data-plane-status', 'ACTIVE',
+ '--data-plane-status',
+ 'ACTIVE',
_testport.name,
]
verifylist = [
@@ -1845,14 +2086,17 @@ class TestSetPort(TestPort):
def test_set_port_invalid_data_plane_status_value(self):
arglist = [
- '--data-plane-status', 'Spider-Man',
+ '--data-plane-status',
+ 'Spider-Man',
'test-port',
]
- self.assertRaises(tests_utils.ParserException,
- self.check_parser,
- self.cmd,
- arglist,
- None)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ None,
+ )
def _test_set_tags(self, with_tags=True):
if with_tags:
@@ -1864,16 +2108,15 @@ class TestSetPort(TestPort):
verifylist = [('no_tag', True)]
expected_args = []
arglist.append(self._port.name)
- verifylist.append(
- ('port', self._port.name))
+ verifylist.append(('port', self._port.name))
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.assertFalse(self.network.update_port.called)
self.network.set_tags.assert_called_once_with(
- self._port,
- tests_utils.CompareBySet(expected_args))
+ self._port, tests_utils.CompareBySet(expected_args)
+ )
self.assertIsNone(result)
def test_set_with_tags(self):
@@ -1889,7 +2132,10 @@ class TestSetPort(TestPort):
]
verifylist = [
('numa_policy_%s' % policy, True),
- ('port', self._port.id,)
+ (
+ 'port',
+ self._port.id,
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
@@ -1897,7 +2143,8 @@ class TestSetPort(TestPort):
self.cmd.take_action(parsed_args)
self.network.update_port.assert_called_once_with(
- self._port, **{'numa_affinity_policy': policy})
+ self._port, **{'numa_affinity_policy': policy}
+ )
def test_create_with_numa_affinity_policy_required(self):
self._test_create_with_numa_affinity_policy('required')
@@ -1910,7 +2157,6 @@ class TestSetPort(TestPort):
class TestShowPort(TestPort):
-
# The port to show.
_port = network_fakes.create_one_port()
columns, data = TestPort._get_common_cols_data(_port)
@@ -1927,8 +2173,13 @@ class TestShowPort(TestPort):
arglist = []
verifylist = []
- self.assertRaises(tests_utils.ParserException,
- self.check_parser, self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_show_all_options(self):
arglist = [
@@ -1942,25 +2193,38 @@ class TestShowPort(TestPort):
columns, data = self.cmd.take_action(parsed_args)
self.network.find_port.assert_called_once_with(
- self._port.name, ignore_missing=False)
+ self._port.name, ignore_missing=False
+ )
self.assertEqual(set(self.columns), set(columns))
self.assertCountEqual(self.data, data)
class TestUnsetPort(TestPort):
-
def setUp(self):
super(TestUnsetPort, self).setUp()
self._testport = network_fakes.create_one_port(
- {'fixed_ips': [{'subnet_id': '042eb10a-3a18-4658-ab-cf47c8d03152',
- 'ip_address': '0.0.0.1'},
- {'subnet_id': '042eb10a-3a18-4658-ab-cf47c8d03152',
- 'ip_address': '1.0.0.0'}],
- 'binding:profile': {'batman': 'Joker', 'Superman': 'LexLuthor'},
- 'tags': ['green', 'red'], })
+ {
+ 'fixed_ips': [
+ {
+ 'subnet_id': '042eb10a-3a18-4658-ab-cf47c8d03152',
+ 'ip_address': '0.0.0.1',
+ },
+ {
+ 'subnet_id': '042eb10a-3a18-4658-ab-cf47c8d03152',
+ 'ip_address': '1.0.0.0',
+ },
+ ],
+ 'binding:profile': {
+ 'batman': 'Joker',
+ 'Superman': 'LexLuthor',
+ },
+ 'tags': ['green', 'red'],
+ }
+ )
self.fake_subnet = network_fakes.FakeSubnet.create_one_subnet(
- {'id': '042eb10a-3a18-4658-ab-cf47c8d03152'})
+ {'id': '042eb10a-3a18-4658-ab-cf47c8d03152'}
+ )
self.network.find_subnet = mock.Mock(return_value=self.fake_subnet)
self.network.find_port = mock.Mock(return_value=self._testport)
self.network.update_port = mock.Mock(return_value=None)
@@ -1972,39 +2236,52 @@ class TestUnsetPort(TestPort):
arglist = [
'--fixed-ip',
'subnet=042eb10a-3a18-4658-ab-cf47c8d03152,ip-address=1.0.0.0',
- '--binding-profile', 'Superman',
+ '--binding-profile',
+ 'Superman',
'--qos-policy',
'--host',
self._testport.name,
]
verifylist = [
- ('fixed_ip', [{
- 'subnet': '042eb10a-3a18-4658-ab-cf47c8d03152',
- 'ip-address': '1.0.0.0'}]),
+ (
+ 'fixed_ip',
+ [
+ {
+ 'subnet': '042eb10a-3a18-4658-ab-cf47c8d03152',
+ 'ip-address': '1.0.0.0',
+ }
+ ],
+ ),
('binding_profile', ['Superman']),
('qos_policy', True),
- ('host', True)
+ ('host', True),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
attrs = {
- 'fixed_ips': [{
- 'subnet_id': '042eb10a-3a18-4658-ab-cf47c8d03152',
- 'ip_address': '0.0.0.1'}],
+ 'fixed_ips': [
+ {
+ 'subnet_id': '042eb10a-3a18-4658-ab-cf47c8d03152',
+ 'ip_address': '0.0.0.1',
+ }
+ ],
'binding:profile': {'batman': 'Joker'},
'qos_policy_id': None,
- 'binding:host_id': None
+ 'binding:host_id': None,
}
self.network.update_port.assert_called_once_with(
- self._testport, **attrs)
+ self._testport, **attrs
+ )
self.assertIsNone(result)
def test_unset_port_fixed_ip_not_existent(self):
arglist = [
- '--fixed-ip', 'ip-address=1.0.0.1',
- '--binding-profile', 'Superman',
+ '--fixed-ip',
+ 'ip-address=1.0.0.1',
+ '--binding-profile',
+ 'Superman',
self._testport.name,
]
verifylist = [
@@ -2013,14 +2290,16 @@ class TestUnsetPort(TestPort):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- self.assertRaises(exceptions.CommandError,
- self.cmd.take_action,
- parsed_args)
+ self.assertRaises(
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
def test_unset_port_binding_profile_not_existent(self):
arglist = [
- '--fixed-ip', 'ip-address=1.0.0.0',
- '--binding-profile', 'Neo',
+ '--fixed-ip',
+ 'ip-address=1.0.0.0',
+ '--binding-profile',
+ 'Neo',
self._testport.name,
]
verifylist = [
@@ -2029,19 +2308,21 @@ class TestUnsetPort(TestPort):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- self.assertRaises(exceptions.CommandError,
- self.cmd.take_action,
- parsed_args)
+ self.assertRaises(
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
def test_unset_security_group(self):
_fake_sg1 = network_fakes.FakeSecurityGroup.create_one_security_group()
_fake_sg2 = network_fakes.FakeSecurityGroup.create_one_security_group()
_fake_port = network_fakes.create_one_port(
- {'security_group_ids': [_fake_sg1.id, _fake_sg2.id]})
+ {'security_group_ids': [_fake_sg1.id, _fake_sg2.id]}
+ )
self.network.find_port = mock.Mock(return_value=_fake_port)
self.network.find_security_group = mock.Mock(return_value=_fake_sg2)
arglist = [
- '--security-group', _fake_sg2.id,
+ '--security-group',
+ _fake_sg2.id,
_fake_port.name,
]
verifylist = [
@@ -2051,21 +2332,20 @@ class TestUnsetPort(TestPort):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
- attrs = {
- 'security_group_ids': [_fake_sg1.id]
- }
- self.network.update_port.assert_called_once_with(
- _fake_port, **attrs)
+ attrs = {'security_group_ids': [_fake_sg1.id]}
+ self.network.update_port.assert_called_once_with(_fake_port, **attrs)
self.assertIsNone(result)
def test_unset_port_security_group_not_existent(self):
_fake_sg1 = network_fakes.FakeSecurityGroup.create_one_security_group()
_fake_sg2 = network_fakes.FakeSecurityGroup.create_one_security_group()
_fake_port = network_fakes.create_one_port(
- {'security_group_ids': [_fake_sg1.id]})
+ {'security_group_ids': [_fake_sg1.id]}
+ )
self.network.find_security_group = mock.Mock(return_value=_fake_sg2)
arglist = [
- '--security-group', _fake_sg2.id,
+ '--security-group',
+ _fake_sg2.id,
_fake_port.name,
]
verifylist = [
@@ -2073,16 +2353,18 @@ class TestUnsetPort(TestPort):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- self.assertRaises(exceptions.CommandError,
- self.cmd.take_action,
- parsed_args)
+ self.assertRaises(
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
def test_unset_port_allowed_address_pair(self):
_fake_port = network_fakes.create_one_port(
- {'allowed_address_pairs': [{'ip_address': '192.168.1.123'}]})
+ {'allowed_address_pairs': [{'ip_address': '192.168.1.123'}]}
+ )
self.network.find_port = mock.Mock(return_value=_fake_port)
arglist = [
- '--allowed-address', 'ip-address=192.168.1.123',
+ '--allowed-address',
+ 'ip-address=192.168.1.123',
_fake_port.name,
]
verifylist = [
@@ -2101,10 +2383,12 @@ class TestUnsetPort(TestPort):
def test_unset_port_allowed_address_pair_not_existent(self):
_fake_port = network_fakes.create_one_port(
- {'allowed_address_pairs': [{'ip_address': '192.168.1.123'}]})
+ {'allowed_address_pairs': [{'ip_address': '192.168.1.123'}]}
+ )
self.network.find_port = mock.Mock(return_value=_fake_port)
arglist = [
- '--allowed-address', 'ip-address=192.168.1.45',
+ '--allowed-address',
+ 'ip-address=192.168.1.45',
_fake_port.name,
]
verifylist = [
@@ -2112,13 +2396,14 @@ class TestUnsetPort(TestPort):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- self.assertRaises(exceptions.CommandError,
- self.cmd.take_action,
- parsed_args)
+ self.assertRaises(
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
def test_unset_port_data_plane_status(self):
_fake_port = network_fakes.create_one_port(
- {'data_plane_status': 'ACTIVE'})
+ {'data_plane_status': 'ACTIVE'}
+ )
self.network.find_port = mock.Mock(return_value=_fake_port)
arglist = [
'--data-plane-status',
@@ -2149,16 +2434,15 @@ class TestUnsetPort(TestPort):
verifylist = [('all_tag', True)]
expected_args = []
arglist.append(self._testport.name)
- verifylist.append(
- ('port', self._testport.name))
+ verifylist.append(('port', self._testport.name))
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.assertFalse(self.network.update_port.called)
self.network.set_tags.assert_called_once_with(
- self._testport,
- tests_utils.CompareBySet(expected_args))
+ self._testport, tests_utils.CompareBySet(expected_args)
+ )
self.assertIsNone(result)
def test_unset_with_tags(self):
@@ -2169,7 +2453,8 @@ class TestUnsetPort(TestPort):
def test_unset_numa_affinity_policy(self):
_fake_port = network_fakes.create_one_port(
- {'numa_affinity_policy': 'required'})
+ {'numa_affinity_policy': 'required'}
+ )
self.network.find_port = mock.Mock(return_value=_fake_port)
arglist = [
'--numa-policy',
diff --git a/openstackclient/tests/unit/network/v2/test_router.py b/openstackclient/tests/unit/network/v2/test_router.py
index fb9673cd..da7267af 100644
--- a/openstackclient/tests/unit/network/v2/test_router.py
+++ b/openstackclient/tests/unit/network/v2/test_router.py
@@ -24,7 +24,6 @@ from openstackclient.tests.unit import utils as tests_utils
class TestRouter(network_fakes.TestNetworkV2):
-
def setUp(self):
super(TestRouter, self).setUp()
@@ -34,11 +33,12 @@ class TestRouter(network_fakes.TestNetworkV2):
class TestAddPortToRouter(TestRouter):
- '''Add port to Router '''
+ '''Add port to Router'''
_port = network_fakes.create_one_port()
_router = network_fakes.FakeRouter.create_one_router(
- attrs={'port': _port.id})
+ attrs={'port': _port.id}
+ )
def setUp(self):
super(TestAddPortToRouter, self).setUp()
@@ -51,8 +51,13 @@ class TestAddPortToRouter(TestRouter):
arglist = []
verifylist = []
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_add_port_required_options(self):
arglist = [
@@ -68,16 +73,21 @@ class TestAddPortToRouter(TestRouter):
result = self.cmd.take_action(parsed_args)
self.network.add_interface_to_router.assert_called_with(
- self._router, **{'port_id': self._router.port, })
+ self._router,
+ **{
+ 'port_id': self._router.port,
+ }
+ )
self.assertIsNone(result)
class TestAddSubnetToRouter(TestRouter):
- '''Add subnet to Router '''
+ '''Add subnet to Router'''
_subnet = network_fakes.FakeSubnet.create_one_subnet()
_router = network_fakes.FakeRouter.create_one_router(
- attrs={'subnet': _subnet.id})
+ attrs={'subnet': _subnet.id}
+ )
def setUp(self):
super(TestAddSubnetToRouter, self).setUp()
@@ -90,8 +100,13 @@ class TestAddSubnetToRouter(TestRouter):
arglist = []
verifylist = []
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_add_subnet_required_options(self):
arglist = [
@@ -106,13 +121,13 @@ class TestAddSubnetToRouter(TestRouter):
result = self.cmd.take_action(parsed_args)
self.network.add_interface_to_router.assert_called_with(
- self._router, **{'subnet_id': self._router.subnet})
+ self._router, **{'subnet_id': self._router.subnet}
+ )
self.assertIsNone(result)
class TestCreateRouter(TestRouter):
-
# The new router created.
new_router = network_fakes.FakeRouter.create_one_router()
@@ -160,8 +175,13 @@ class TestCreateRouter(TestRouter):
arglist = []
verifylist = []
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
self.assertFalse(self.network.set_tags.called)
def test_create_default_options(self):
@@ -176,12 +196,14 @@ class TestCreateRouter(TestRouter):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_router.assert_called_once_with(**{
- 'admin_state_up': True,
- 'name': self.new_router.name,
- })
+ self.network.create_router.assert_called_once_with(
+ **{
+ 'admin_state_up': True,
+ 'name': self.new_router.name,
+ }
+ )
self.assertFalse(self.network.set_tags.called)
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, data)
@@ -193,9 +215,11 @@ class TestCreateRouter(TestRouter):
self.network.find_subnet = mock.Mock(return_value=_subnet)
arglist = [
self.new_router.name,
- '--external-gateway', _network.name,
+ '--external-gateway',
+ _network.name,
'--enable-snat',
- '--fixed-ip', 'ip-address=2001:db8::1'
+ '--fixed-ip',
+ 'ip-address=2001:db8::1',
]
verifylist = [
('name', self.new_router.name),
@@ -208,17 +232,19 @@ class TestCreateRouter(TestRouter):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_router.assert_called_once_with(**{
- 'admin_state_up': True,
- 'name': self.new_router.name,
- 'external_gateway_info': {
- 'network_id': _network.id,
- 'enable_snat': True,
- 'external_fixed_ips': [{'ip_address': '2001:db8::1'}],
- },
- })
+ self.network.create_router.assert_called_once_with(
+ **{
+ 'admin_state_up': True,
+ 'name': self.new_router.name,
+ 'external_gateway_info': {
+ 'network_id': _network.id,
+ 'enable_snat': True,
+ 'external_fixed_ips': [{'ip_address': '2001:db8::1'}],
+ },
+ }
+ )
self.assertFalse(self.network.set_tags.called)
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, data)
@@ -237,13 +263,15 @@ class TestCreateRouter(TestRouter):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_router.assert_called_once_with(**{
- 'admin_state_up': True,
- 'name': self.new_router.name,
- 'ha': ha,
- })
+ self.network.create_router.assert_called_once_with(
+ **{
+ 'admin_state_up': True,
+ 'name': self.new_router.name,
+ 'ha': ha,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, data)
@@ -266,13 +294,15 @@ class TestCreateRouter(TestRouter):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_router.assert_called_once_with(**{
- 'admin_state_up': True,
- 'name': self.new_router.name,
- 'distributed': distributed,
- })
+ self.network.create_router.assert_called_once_with(
+ **{
+ 'admin_state_up': True,
+ 'name': self.new_router.name,
+ 'distributed': distributed,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, data)
@@ -285,24 +315,28 @@ class TestCreateRouter(TestRouter):
def test_create_with_AZ_hints(self):
arglist = [
self.new_router.name,
- '--availability-zone-hint', 'fake-az',
- '--availability-zone-hint', 'fake-az2',
+ '--availability-zone-hint',
+ 'fake-az',
+ '--availability-zone-hint',
+ 'fake-az2',
]
verifylist = [
('name', self.new_router.name),
('availability_zone_hints', ['fake-az', 'fake-az2']),
('enable', True),
('distributed', False),
- ('ha', False)
+ ('ha', False),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
- self.network.create_router.assert_called_once_with(**{
- 'admin_state_up': True,
- 'name': self.new_router.name,
- 'availability_zone_hints': ['fake-az', 'fake-az2'],
- })
+ columns, data = self.cmd.take_action(parsed_args)
+ self.network.create_router.assert_called_once_with(
+ **{
+ 'admin_state_up': True,
+ 'name': self.new_router.name,
+ 'availability_zone_hints': ['fake-az', 'fake-az2'],
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, data)
@@ -325,16 +359,15 @@ class TestCreateRouter(TestRouter):
verifylist.append(('no_tag', True))
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
self.network.create_router.assert_called_once_with(
- name=self.new_router.name,
- admin_state_up=True
+ name=self.new_router.name, admin_state_up=True
)
if add_tags:
self.network.set_tags.assert_called_once_with(
- self.new_router,
- tests_utils.CompareBySet(['red', 'blue']))
+ self.new_router, tests_utils.CompareBySet(['red', 'blue'])
+ )
else:
self.assertFalse(self.network.set_tags.called)
self.assertEqual(self.columns, columns)
@@ -348,7 +381,6 @@ class TestCreateRouter(TestRouter):
class TestDeleteRouter(TestRouter):
-
# The routers to delete.
_routers = network_fakes.FakeRouter.create_routers(count=2)
@@ -357,8 +389,9 @@ class TestDeleteRouter(TestRouter):
self.network.delete_router = mock.Mock(return_value=None)
- self.network.find_router = (
- network_fakes.FakeRouter.get_routers(self._routers))
+ self.network.find_router = network_fakes.FakeRouter.get_routers(
+ self._routers
+ )
# Get the command object to test
self.cmd = router.DeleteRouter(self.app, self.namespace)
@@ -401,15 +434,12 @@ class TestDeleteRouter(TestRouter):
'unexist_router',
]
verifylist = [
- ('router',
- [self._routers[0].name, 'unexist_router']),
+ ('router', [self._routers[0].name, 'unexist_router']),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
find_mock_result = [self._routers[0], exceptions.CommandError]
- self.network.find_router = (
- mock.Mock(side_effect=find_mock_result)
- )
+ self.network.find_router = mock.Mock(side_effect=find_mock_result)
try:
self.cmd.take_action(parsed_args)
@@ -418,16 +448,15 @@ class TestDeleteRouter(TestRouter):
self.assertEqual('1 of 2 routers failed to delete.', str(e))
self.network.find_router.assert_any_call(
- self._routers[0].name, ignore_missing=False)
+ self._routers[0].name, ignore_missing=False
+ )
self.network.find_router.assert_any_call(
- 'unexist_router', ignore_missing=False)
- self.network.delete_router.assert_called_once_with(
- self._routers[0]
+ 'unexist_router', ignore_missing=False
)
+ self.network.delete_router.assert_called_once_with(self._routers[0])
class TestListRouter(TestRouter):
-
# The routers going to be listed up.
routers = network_fakes.FakeRouter.create_routers(count=3)
_extensions = network_fakes.FakeExtension.create_one_extension()
@@ -455,23 +484,27 @@ class TestListRouter(TestRouter):
data = []
for r in routers:
- data.append((
- r.id,
- r.name,
- r.status,
- router.AdminStateColumn(r.admin_state_up),
- r.project_id,
- r.distributed,
- r.ha,
- ))
+ data.append(
+ (
+ r.id,
+ r.name,
+ r.status,
+ router.AdminStateColumn(r.admin_state_up),
+ r.project_id,
+ r.distributed,
+ r.ha,
+ )
+ )
router_agent_data = []
for r in routers:
- router_agent_data.append((
- r.id,
- r.name,
- r.external_gateway_info,
- ))
+ router_agent_data.append(
+ (
+ r.id,
+ r.name,
+ r.external_gateway_info,
+ )
+ )
agents_columns = (
'ID',
@@ -483,7 +516,8 @@ class TestListRouter(TestRouter):
for i in range(0, len(routers)):
r = routers[i]
data_long.append(
- data[i] + (
+ data[i]
+ + (
router.RoutesColumn(r.routes),
router.RouterInfoColumn(r.external_gateway_info),
format_columns.ListColumn(r.availability_zones),
@@ -494,7 +528,8 @@ class TestListRouter(TestRouter):
for i in range(0, len(routers)):
r = routers[i]
data_long_no_az.append(
- data[i] + (
+ data[i]
+ + (
router.RoutesColumn(r.routes),
router.RouterInfoColumn(r.external_gateway_info),
format_columns.ListColumn(r.tags),
@@ -508,7 +543,8 @@ class TestListRouter(TestRouter):
self.cmd = router.ListRouter(self.app, self.namespace)
self.network.agent_hosted_routers = mock.Mock(
- return_value=self.routers)
+ return_value=self.routers
+ )
self.network.routers = mock.Mock(return_value=self.routers)
self.network.find_extension = mock.Mock(return_value=self._extensions)
self.network.find_router = mock.Mock(return_value=self.routers[0])
@@ -533,10 +569,9 @@ class TestListRouter(TestRouter):
self.assertCountEqual(self.data, list(data))
def test_router_list_no_ha_no_distributed(self):
- _routers = network_fakes.FakeRouter.create_routers({
- 'ha': None,
- 'distributed': None},
- count=3)
+ _routers = network_fakes.FakeRouter.create_routers(
+ {'ha': None, 'distributed': None}, count=3
+ )
arglist = []
verifylist = [
@@ -544,8 +579,7 @@ class TestListRouter(TestRouter):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- with mock.patch.object(
- self.network, "routers", return_value=_routers):
+ with mock.patch.object(self.network, "routers", return_value=_routers):
columns, data = self.cmd.take_action(parsed_args)
self.assertNotIn("is_distributed", columns)
@@ -593,7 +627,8 @@ class TestListRouter(TestRouter):
def test_list_name(self):
test_name = "fakename"
arglist = [
- '--name', test_name,
+ '--name',
+ test_name,
]
verifylist = [
('long', False),
@@ -602,9 +637,7 @@ class TestListRouter(TestRouter):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.routers.assert_called_once_with(
- **{'name': test_name}
- )
+ self.network.routers.assert_called_once_with(**{'name': test_name})
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
@@ -629,10 +662,7 @@ class TestListRouter(TestRouter):
arglist = [
'--disable',
]
- verifylist = [
- ('long', False),
- ('disable', True)
- ]
+ verifylist = [('long', False), ('disable', True)]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
@@ -647,7 +677,8 @@ class TestListRouter(TestRouter):
project = identity_fakes_v3.FakeProject.create_one_project()
self.projects_mock.get.return_value = project
arglist = [
- '--project', project.id,
+ '--project',
+ project.id,
]
verifylist = [
('project', project.id),
@@ -665,8 +696,10 @@ class TestListRouter(TestRouter):
project = identity_fakes_v3.FakeProject.create_one_project()
self.projects_mock.get.return_value = project
arglist = [
- '--project', project.id,
- '--project-domain', project.domain_id,
+ '--project',
+ project.id,
+ '--project-domain',
+ project.domain_id,
]
verifylist = [
('project', project.id),
@@ -688,33 +721,44 @@ class TestListRouter(TestRouter):
verifylist = []
# Missing required router ID should bail here
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_router_list_agents(self):
arglist = [
- '--agent', self._testagent.id,
+ '--agent',
+ self._testagent.id,
]
verifylist = [
('agent', self._testagent.id),
]
- attrs = {self._testagent.id, }
+ attrs = {
+ self._testagent.id,
+ }
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.agent_hosted_routers(
- *attrs)
+ self.network.agent_hosted_routers(*attrs)
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
def test_list_with_tag_options(self):
arglist = [
- '--tags', 'red,blue',
- '--any-tags', 'red,green',
- '--not-tags', 'orange,yellow',
- '--not-any-tags', 'black,white',
+ '--tags',
+ 'red,blue',
+ '--any-tags',
+ 'red,green',
+ '--not-tags',
+ 'orange,yellow',
+ '--not-any-tags',
+ 'black,white',
]
verifylist = [
('tags', ['red', 'blue']),
@@ -726,21 +770,24 @@ class TestListRouter(TestRouter):
columns, data = self.cmd.take_action(parsed_args)
self.network.routers.assert_called_once_with(
- **{'tags': 'red,blue',
- 'any_tags': 'red,green',
- 'not_tags': 'orange,yellow',
- 'not_any_tags': 'black,white'}
+ **{
+ 'tags': 'red,blue',
+ 'any_tags': 'red,green',
+ 'not_tags': 'orange,yellow',
+ 'not_any_tags': 'black,white',
+ }
)
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
class TestRemovePortFromRouter(TestRouter):
- '''Remove port from a Router '''
+ '''Remove port from a Router'''
_port = network_fakes.create_one_port()
_router = network_fakes.FakeRouter.create_one_router(
- attrs={'port': _port.id})
+ attrs={'port': _port.id}
+ )
def setUp(self):
super(TestRemovePortFromRouter, self).setUp()
@@ -753,8 +800,13 @@ class TestRemovePortFromRouter(TestRouter):
arglist = []
verifylist = []
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_remove_port_required_options(self):
arglist = [
@@ -770,16 +822,18 @@ class TestRemovePortFromRouter(TestRouter):
result = self.cmd.take_action(parsed_args)
self.network.remove_interface_from_router.assert_called_with(
- self._router, **{'port_id': self._router.port})
+ self._router, **{'port_id': self._router.port}
+ )
self.assertIsNone(result)
class TestRemoveSubnetFromRouter(TestRouter):
- '''Remove subnet from Router '''
+ '''Remove subnet from Router'''
_subnet = network_fakes.FakeSubnet.create_one_subnet()
_router = network_fakes.FakeRouter.create_one_router(
- attrs={'subnet': _subnet.id})
+ attrs={'subnet': _subnet.id}
+ )
def setUp(self):
super(TestRemoveSubnetFromRouter, self).setUp()
@@ -792,8 +846,13 @@ class TestRemoveSubnetFromRouter(TestRouter):
arglist = []
verifylist = []
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_remove_subnet_required_options(self):
arglist = [
@@ -808,18 +867,19 @@ class TestRemoveSubnetFromRouter(TestRouter):
result = self.cmd.take_action(parsed_args)
self.network.remove_interface_from_router.assert_called_with(
- self._router, **{'subnet_id': self._router.subnet})
+ self._router, **{'subnet_id': self._router.subnet}
+ )
self.assertIsNone(result)
class TestAddExtraRoutesToRouter(TestRouter):
-
_router = network_fakes.FakeRouter.create_one_router()
def setUp(self):
super(TestAddExtraRoutesToRouter, self).setUp()
self.network.add_extra_routes_to_router = mock.Mock(
- return_value=self._router)
+ return_value=self._router
+ )
self.cmd = router.AddExtraRoutesToRouter(self.app, self.namespace)
self.network.find_router = mock.Mock(return_value=self._router)
@@ -835,13 +895,15 @@ class TestAddExtraRoutesToRouter(TestRouter):
result = self.cmd.take_action(parsed_args)
self.network.add_extra_routes_to_router.assert_called_with(
- self._router, body={'router': {'routes': []}})
+ self._router, body={'router': {'routes': []}}
+ )
self.assertEqual(2, len(result))
def test_add_one_extra_route(self):
arglist = [
self._router.id,
- '--route', 'destination=dst1,gateway=gw1',
+ '--route',
+ 'destination=dst1,gateway=gw1',
]
verifylist = [
('router', self._router.id),
@@ -852,44 +914,61 @@ class TestAddExtraRoutesToRouter(TestRouter):
result = self.cmd.take_action(parsed_args)
self.network.add_extra_routes_to_router.assert_called_with(
- self._router, body={'router': {'routes': [
- {'destination': 'dst1', 'nexthop': 'gw1'},
- ]}})
+ self._router,
+ body={
+ 'router': {
+ 'routes': [
+ {'destination': 'dst1', 'nexthop': 'gw1'},
+ ]
+ }
+ },
+ )
self.assertEqual(2, len(result))
def test_add_multiple_extra_routes(self):
arglist = [
self._router.id,
- '--route', 'destination=dst1,gateway=gw1',
- '--route', 'destination=dst2,gateway=gw2',
+ '--route',
+ 'destination=dst1,gateway=gw1',
+ '--route',
+ 'destination=dst2,gateway=gw2',
]
verifylist = [
('router', self._router.id),
- ('routes', [
- {'destination': 'dst1', 'gateway': 'gw1'},
- {'destination': 'dst2', 'gateway': 'gw2'},
- ]),
+ (
+ 'routes',
+ [
+ {'destination': 'dst1', 'gateway': 'gw1'},
+ {'destination': 'dst2', 'gateway': 'gw2'},
+ ],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.network.add_extra_routes_to_router.assert_called_with(
- self._router, body={'router': {'routes': [
- {'destination': 'dst1', 'nexthop': 'gw1'},
- {'destination': 'dst2', 'nexthop': 'gw2'},
- ]}})
+ self._router,
+ body={
+ 'router': {
+ 'routes': [
+ {'destination': 'dst1', 'nexthop': 'gw1'},
+ {'destination': 'dst2', 'nexthop': 'gw2'},
+ ]
+ }
+ },
+ )
self.assertEqual(2, len(result))
class TestRemoveExtraRoutesFromRouter(TestRouter):
-
_router = network_fakes.FakeRouter.create_one_router()
def setUp(self):
super(TestRemoveExtraRoutesFromRouter, self).setUp()
self.network.remove_extra_routes_from_router = mock.Mock(
- return_value=self._router)
+ return_value=self._router
+ )
self.cmd = router.RemoveExtraRoutesFromRouter(self.app, self.namespace)
self.network.find_router = mock.Mock(return_value=self._router)
@@ -905,13 +984,15 @@ class TestRemoveExtraRoutesFromRouter(TestRouter):
result = self.cmd.take_action(parsed_args)
self.network.remove_extra_routes_from_router.assert_called_with(
- self._router, body={'router': {'routes': []}})
+ self._router, body={'router': {'routes': []}}
+ )
self.assertEqual(2, len(result))
def test_remove_one_extra_route(self):
arglist = [
self._router.id,
- '--route', 'destination=dst1,gateway=gw1',
+ '--route',
+ 'destination=dst1,gateway=gw1',
]
verifylist = [
('router', self._router.id),
@@ -922,45 +1003,60 @@ class TestRemoveExtraRoutesFromRouter(TestRouter):
result = self.cmd.take_action(parsed_args)
self.network.remove_extra_routes_from_router.assert_called_with(
- self._router, body={'router': {'routes': [
- {'destination': 'dst1', 'nexthop': 'gw1'},
- ]}})
+ self._router,
+ body={
+ 'router': {
+ 'routes': [
+ {'destination': 'dst1', 'nexthop': 'gw1'},
+ ]
+ }
+ },
+ )
self.assertEqual(2, len(result))
def test_remove_multiple_extra_routes(self):
arglist = [
self._router.id,
- '--route', 'destination=dst1,gateway=gw1',
- '--route', 'destination=dst2,gateway=gw2',
+ '--route',
+ 'destination=dst1,gateway=gw1',
+ '--route',
+ 'destination=dst2,gateway=gw2',
]
verifylist = [
('router', self._router.id),
- ('routes', [
- {'destination': 'dst1', 'gateway': 'gw1'},
- {'destination': 'dst2', 'gateway': 'gw2'},
- ]),
+ (
+ 'routes',
+ [
+ {'destination': 'dst1', 'gateway': 'gw1'},
+ {'destination': 'dst2', 'gateway': 'gw2'},
+ ],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.network.remove_extra_routes_from_router.assert_called_with(
- self._router, body={'router': {'routes': [
- {'destination': 'dst1', 'nexthop': 'gw1'},
- {'destination': 'dst2', 'nexthop': 'gw2'},
- ]}})
+ self._router,
+ body={
+ 'router': {
+ 'routes': [
+ {'destination': 'dst1', 'nexthop': 'gw1'},
+ {'destination': 'dst2', 'nexthop': 'gw2'},
+ ]
+ }
+ },
+ )
self.assertEqual(2, len(result))
class TestSetRouter(TestRouter):
-
# The router to set.
_default_route = {'destination': '10.20.20.0/24', 'nexthop': '10.20.30.1'}
_network = network_fakes.create_one_network()
_subnet = network_fakes.FakeSubnet.create_one_subnet()
_router = network_fakes.FakeRouter.create_one_router(
- attrs={'routes': [_default_route],
- 'tags': ['green', 'red']}
+ attrs={'routes': [_default_route], 'tags': ['green', 'red']}
)
def setUp(self):
@@ -979,9 +1075,11 @@ class TestSetRouter(TestRouter):
self._router.name,
'--enable',
'--distributed',
- '--name', 'noob',
+ '--name',
+ 'noob',
'--no-ha',
- '--description', 'router',
+ '--description',
+ 'router',
]
verifylist = [
('router', self._router.name),
@@ -1003,7 +1101,8 @@ class TestSetRouter(TestRouter):
'description': 'router',
}
self.network.update_router.assert_called_once_with(
- self._router, **attrs)
+ self._router, **attrs
+ )
self.assertIsNone(result)
def test_set_that(self):
@@ -1029,7 +1128,8 @@ class TestSetRouter(TestRouter):
'ha': True,
}
self.network.update_router.assert_called_once_with(
- self._router, **attrs)
+ self._router, **attrs
+ )
self.assertIsNone(result)
def test_set_distributed_centralized(self):
@@ -1044,29 +1144,35 @@ class TestSetRouter(TestRouter):
('distributed', False),
]
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_set_route(self):
arglist = [
self._router.name,
- '--route', 'destination=10.20.30.0/24,gateway=10.20.30.1',
+ '--route',
+ 'destination=10.20.30.0/24,gateway=10.20.30.1',
]
verifylist = [
('router', self._router.name),
- ('routes', [{'destination': '10.20.30.0/24',
- 'gateway': '10.20.30.1'}]),
+ (
+ 'routes',
+ [{'destination': '10.20.30.0/24', 'gateway': '10.20.30.1'}],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
- routes = [{'destination': '10.20.30.0/24',
- 'nexthop': '10.20.30.1'}]
- attrs = {
- 'routes': routes + self._router.routes
- }
+ routes = [{'destination': '10.20.30.0/24', 'nexthop': '10.20.30.1'}]
+ attrs = {'routes': routes + self._router.routes}
self.network.update_router.assert_called_once_with(
- self._router, **attrs)
+ self._router, **attrs
+ )
self.assertIsNone(result)
def test_set_no_route(self):
@@ -1086,33 +1192,39 @@ class TestSetRouter(TestRouter):
'routes': [],
}
self.network.update_router.assert_called_once_with(
- self._router, **attrs)
+ self._router, **attrs
+ )
self.assertIsNone(result)
def test_set_route_overwrite_route(self):
_testrouter = network_fakes.FakeRouter.create_one_router(
- {'routes': [{"destination": "10.0.0.2",
- "nexthop": "1.1.1.1"}]})
+ {'routes': [{"destination": "10.0.0.2", "nexthop": "1.1.1.1"}]}
+ )
self.network.find_router = mock.Mock(return_value=_testrouter)
arglist = [
_testrouter.name,
- '--route', 'destination=10.20.30.0/24,gateway=10.20.30.1',
+ '--route',
+ 'destination=10.20.30.0/24,gateway=10.20.30.1',
'--no-route',
]
verifylist = [
('router', _testrouter.name),
- ('routes', [{'destination': '10.20.30.0/24',
- 'gateway': '10.20.30.1'}]),
+ (
+ 'routes',
+ [{'destination': '10.20.30.0/24', 'gateway': '10.20.30.1'}],
+ ),
('no_route', True),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
attrs = {
- 'routes': [{'destination': '10.20.30.0/24',
- 'nexthop': '10.20.30.1'}]
+ 'routes': [
+ {'destination': '10.20.30.0/24', 'nexthop': '10.20.30.1'}
+ ]
}
self.network.update_router.assert_called_once_with(
- _testrouter, **attrs)
+ _testrouter, **attrs
+ )
self.assertIsNone(result)
def test_set_nothing(self):
@@ -1132,7 +1244,8 @@ class TestSetRouter(TestRouter):
def test_wrong_gateway_params(self):
arglist = [
- "--fixed-ip", "subnet='abc'",
+ "--fixed-ip",
+ "subnet='abc'",
self._router.id,
]
verifylist = [
@@ -1140,12 +1253,14 @@ class TestSetRouter(TestRouter):
('router', self._router.id),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- self.assertRaises(exceptions.CommandError,
- self.cmd.take_action, parsed_args)
+ self.assertRaises(
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
def test_set_gateway_network_only(self):
arglist = [
- "--external-gateway", self._network.id,
+ "--external-gateway",
+ self._network.id,
self._router.id,
]
verifylist = [
@@ -1156,14 +1271,17 @@ class TestSetRouter(TestRouter):
result = self.cmd.take_action(parsed_args)
self.network.update_router.assert_called_with(
- self._router, **{'external_gateway_info': {
- 'network_id': self._network.id}})
+ self._router,
+ **{'external_gateway_info': {'network_id': self._network.id}}
+ )
self.assertIsNone(result)
def test_set_gateway_options_subnet_only(self):
arglist = [
- "--external-gateway", self._network.id,
- "--fixed-ip", "subnet='abc'",
+ "--external-gateway",
+ self._network.id,
+ "--fixed-ip",
+ "subnet='abc'",
self._router.id,
'--enable-snat',
]
@@ -1177,17 +1295,27 @@ class TestSetRouter(TestRouter):
result = self.cmd.take_action(parsed_args)
self.network.update_router.assert_called_with(
- self._router, **{'external_gateway_info': {
- 'network_id': self._network.id,
- 'external_fixed_ips': [{
- 'subnet_id': self._subnet.id, }],
- 'enable_snat': True, }})
+ self._router,
+ **{
+ 'external_gateway_info': {
+ 'network_id': self._network.id,
+ 'external_fixed_ips': [
+ {
+ 'subnet_id': self._subnet.id,
+ }
+ ],
+ 'enable_snat': True,
+ }
+ }
+ )
self.assertIsNone(result)
def test_set_gateway_option_ipaddress_only(self):
arglist = [
- "--external-gateway", self._network.id,
- "--fixed-ip", "ip-address=10.0.1.1",
+ "--external-gateway",
+ self._network.id,
+ "--fixed-ip",
+ "ip-address=10.0.1.1",
self._router.id,
'--enable-snat',
]
@@ -1201,37 +1329,54 @@ class TestSetRouter(TestRouter):
result = self.cmd.take_action(parsed_args)
self.network.update_router.assert_called_with(
- self._router, **{'external_gateway_info': {
- 'network_id': self._network.id,
- 'external_fixed_ips': [{
- 'ip_address': "10.0.1.1", }],
- 'enable_snat': True, }})
+ self._router,
+ **{
+ 'external_gateway_info': {
+ 'network_id': self._network.id,
+ 'external_fixed_ips': [
+ {
+ 'ip_address': "10.0.1.1",
+ }
+ ],
+ 'enable_snat': True,
+ }
+ }
+ )
self.assertIsNone(result)
def test_set_gateway_options_subnet_ipaddress(self):
arglist = [
- "--external-gateway", self._network.id,
- "--fixed-ip", "subnet='abc',ip-address=10.0.1.1",
+ "--external-gateway",
+ self._network.id,
+ "--fixed-ip",
+ "subnet='abc',ip-address=10.0.1.1",
self._router.id,
'--enable-snat',
]
verifylist = [
('router', self._router.id),
('external_gateway', self._network.id),
- ('fixed_ip', [{'subnet': "'abc'",
- 'ip-address': "10.0.1.1"}]),
+ ('fixed_ip', [{'subnet': "'abc'", 'ip-address': "10.0.1.1"}]),
('enable_snat', True),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.network.update_router.assert_called_with(
- self._router, **{'external_gateway_info': {
- 'network_id': self._network.id,
- 'external_fixed_ips': [{
- 'subnet_id': self._subnet.id,
- 'ip_address': "10.0.1.1", }],
- 'enable_snat': True, }})
+ self._router,
+ **{
+ 'external_gateway_info': {
+ 'network_id': self._network.id,
+ 'external_fixed_ips': [
+ {
+ 'subnet_id': self._subnet.id,
+ 'ip_address': "10.0.1.1",
+ }
+ ],
+ 'enable_snat': True,
+ }
+ }
+ )
self.assertIsNone(result)
def _test_set_tags(self, with_tags=True):
@@ -1244,16 +1389,15 @@ class TestSetRouter(TestRouter):
verifylist = [('no_tag', True)]
expected_args = []
arglist.append(self._router.name)
- verifylist.append(
- ('router', self._router.name))
+ verifylist.append(('router', self._router.name))
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.assertFalse(self.network.update_router.called)
self.network.set_tags.assert_called_once_with(
- self._router,
- tests_utils.CompareBySet(expected_args))
+ self._router, tests_utils.CompareBySet(expected_args)
+ )
self.assertIsNone(result)
def test_set_with_tags(self):
@@ -1266,8 +1410,10 @@ class TestSetRouter(TestRouter):
qos_policy = network_fakes.FakeNetworkQosPolicy.create_one_qos_policy()
self.network.find_qos_policy = mock.Mock(return_value=qos_policy)
arglist = [
- "--external-gateway", self._network.id,
- "--qos-policy", qos_policy.id,
+ "--external-gateway",
+ self._network.id,
+ "--qos-policy",
+ qos_policy.id,
self._router.id,
]
verifylist = [
@@ -1279,14 +1425,20 @@ class TestSetRouter(TestRouter):
result = self.cmd.take_action(parsed_args)
self.network.update_router.assert_called_with(
- self._router, **{'external_gateway_info': {
- 'network_id': self._network.id,
- 'qos_policy_id': qos_policy.id, }})
+ self._router,
+ **{
+ 'external_gateway_info': {
+ 'network_id': self._network.id,
+ 'qos_policy_id': qos_policy.id,
+ }
+ }
+ )
self.assertIsNone(result)
def test_unset_gateway_ip_qos(self):
arglist = [
- "--external-gateway", self._network.id,
+ "--external-gateway",
+ self._network.id,
"--no-qos-policy",
self._router.id,
]
@@ -1299,17 +1451,24 @@ class TestSetRouter(TestRouter):
result = self.cmd.take_action(parsed_args)
self.network.update_router.assert_called_with(
- self._router, **{'external_gateway_info': {
- 'network_id': self._network.id,
- 'qos_policy_id': None, }})
+ self._router,
+ **{
+ 'external_gateway_info': {
+ 'network_id': self._network.id,
+ 'qos_policy_id': None,
+ }
+ }
+ )
self.assertIsNone(result)
def test_set_unset_gateway_ip_qos(self):
qos_policy = network_fakes.FakeNetworkQosPolicy.create_one_qos_policy()
self.network.find_qos_policy = mock.Mock(return_value=qos_policy)
arglist = [
- "--external-gateway", self._network.id,
- "--qos-policy", qos_policy.id,
+ "--external-gateway",
+ self._network.id,
+ "--qos-policy",
+ qos_policy.id,
"--no-qos-policy",
self._router.id,
]
@@ -1320,8 +1479,13 @@ class TestSetRouter(TestRouter):
('no_qos_policy', True),
]
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_set_gateway_ip_qos_no_gateway(self):
qos_policy = network_fakes.FakeNetworkQosPolicy.create_one_qos_policy()
@@ -1329,7 +1493,8 @@ class TestSetRouter(TestRouter):
router = network_fakes.FakeRouter.create_one_router()
self.network.find_router = mock.Mock(return_value=router)
arglist = [
- "--qos-policy", qos_policy.id,
+ "--qos-policy",
+ qos_policy.id,
router.id,
]
verifylist = [
@@ -1338,8 +1503,9 @@ class TestSetRouter(TestRouter):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- self.assertRaises(exceptions.CommandError,
- self.cmd.take_action, parsed_args)
+ self.assertRaises(
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
def test_unset_gateway_ip_qos_no_gateway(self):
qos_policy = network_fakes.FakeNetworkQosPolicy.create_one_qos_policy()
@@ -1355,23 +1521,28 @@ class TestSetRouter(TestRouter):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- self.assertRaises(exceptions.CommandError,
- self.cmd.take_action, parsed_args)
+ self.assertRaises(
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
class TestShowRouter(TestRouter):
-
# The router to set.
_router = network_fakes.FakeRouter.create_one_router()
- _port = network_fakes.create_one_port({
- 'device_owner': 'network:router_interface',
- 'device_id': _router.id
- })
- setattr(_router,
- 'interfaces_info',
- [{'port_id': _port.id,
- 'ip_address': _port.fixed_ips[0]['ip_address'],
- 'subnet_id': _port.fixed_ips[0]['subnet_id']}])
+ _port = network_fakes.create_one_port(
+ {'device_owner': 'network:router_interface', 'device_id': _router.id}
+ )
+ setattr(
+ _router,
+ 'interfaces_info',
+ [
+ {
+ 'port_id': _port.id,
+ 'ip_address': _port.fixed_ips[0]['ip_address'],
+ 'subnet_id': _port.fixed_ips[0]['subnet_id'],
+ }
+ ],
+ )
columns = (
'admin_state_up',
@@ -1419,8 +1590,13 @@ class TestShowRouter(TestRouter):
arglist = []
verifylist = []
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_show_all_options(self):
arglist = [
@@ -1434,17 +1610,16 @@ class TestShowRouter(TestRouter):
columns, data = self.cmd.take_action(parsed_args)
self.network.find_router.assert_called_once_with(
- self._router.name, ignore_missing=False)
- self.network.ports.assert_called_with(**{
- 'device_id': self._router.id
- })
+ self._router.name, ignore_missing=False
+ )
+ self.network.ports.assert_called_with(**{'device_id': self._router.id})
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, data)
def test_show_no_ha_no_distributed(self):
- _router = network_fakes.FakeRouter.create_one_router({
- 'ha': None,
- 'distributed': None})
+ _router = network_fakes.FakeRouter.create_one_router(
+ {'ha': None, 'distributed': None}
+ )
arglist = [
_router.name,
@@ -1455,7 +1630,8 @@ class TestShowRouter(TestRouter):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
with mock.patch.object(
- self.network, "find_router", return_value=_router):
+ self.network, "find_router", return_value=_router
+ ):
columns, data = self.cmd.take_action(parsed_args)
self.assertNotIn("is_distributed", columns)
@@ -1473,7 +1649,8 @@ class TestShowRouter(TestRouter):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
with mock.patch.object(
- self.network, "find_router", return_value=_router):
+ self.network, "find_router", return_value=_router
+ ):
columns, data = self.cmd.take_action(parsed_args)
self.assertIn("routes", columns)
@@ -1481,22 +1658,31 @@ class TestShowRouter(TestRouter):
class TestUnsetRouter(TestRouter):
-
def setUp(self):
super(TestUnsetRouter, self).setUp()
self.fake_network = network_fakes.create_one_network()
self.fake_qos_policy = (
- network_fakes.FakeNetworkQosPolicy.create_one_qos_policy())
+ network_fakes.FakeNetworkQosPolicy.create_one_qos_policy()
+ )
self._testrouter = network_fakes.FakeRouter.create_one_router(
- {'routes': [{"destination": "192.168.101.1/24",
- "nexthop": "172.24.4.3"},
- {"destination": "192.168.101.2/24",
- "nexthop": "172.24.4.3"}],
- 'tags': ['green', 'red'],
- 'external_gateway_info': {
- 'network_id': self.fake_network.id,
- 'qos_policy_id': self.fake_qos_policy.id
- }})
+ {
+ 'routes': [
+ {
+ "destination": "192.168.101.1/24",
+ "nexthop": "172.24.4.3",
+ },
+ {
+ "destination": "192.168.101.2/24",
+ "nexthop": "172.24.4.3",
+ },
+ ],
+ 'tags': ['green', 'red'],
+ 'external_gateway_info': {
+ 'network_id': self.fake_network.id,
+ 'qos_policy_id': self.fake_qos_policy.id,
+ },
+ }
+ )
self.fake_subnet = network_fakes.FakeSubnet.create_one_subnet()
self.network.find_router = mock.Mock(return_value=self._testrouter)
self.network.update_router = mock.Mock(return_value=None)
@@ -1506,38 +1692,47 @@ class TestUnsetRouter(TestRouter):
def test_unset_router_params(self):
arglist = [
- '--route', 'destination=192.168.101.1/24,gateway=172.24.4.3',
+ '--route',
+ 'destination=192.168.101.1/24,gateway=172.24.4.3',
self._testrouter.name,
]
verifylist = [
- ('routes', [
- {"destination": "192.168.101.1/24", "gateway": "172.24.4.3"}]),
+ (
+ 'routes',
+ [{"destination": "192.168.101.1/24", "gateway": "172.24.4.3"}],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
attrs = {
- 'routes': [{"destination": "192.168.101.2/24",
- "nexthop": "172.24.4.3"}],
+ 'routes': [
+ {"destination": "192.168.101.2/24", "nexthop": "172.24.4.3"}
+ ],
}
self.network.update_router.assert_called_once_with(
- self._testrouter, **attrs)
+ self._testrouter, **attrs
+ )
self.assertIsNone(result)
def test_unset_router_wrong_routes(self):
arglist = [
- '--route', 'destination=192.168.101.1/24,gateway=172.24.4.2',
+ '--route',
+ 'destination=192.168.101.1/24,gateway=172.24.4.2',
self._testrouter.name,
]
verifylist = [
- ('routes', [
- {"destination": "192.168.101.1/24", "gateway": "172.24.4.2"}]),
+ (
+ 'routes',
+ [{"destination": "192.168.101.1/24", "gateway": "172.24.4.2"}],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- self.assertRaises(exceptions.CommandError,
- self.cmd.take_action, parsed_args)
+ self.assertRaises(
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
def test_unset_router_external_gateway(self):
arglist = [
@@ -1549,7 +1744,8 @@ class TestUnsetRouter(TestRouter):
result = self.cmd.take_action(parsed_args)
attrs = {'external_gateway_info': {}}
self.network.update_router.assert_called_once_with(
- self._testrouter, **attrs)
+ self._testrouter, **attrs
+ )
self.assertIsNone(result)
def _test_unset_tags(self, with_tags=True):
@@ -1562,16 +1758,15 @@ class TestUnsetRouter(TestRouter):
verifylist = [('all_tag', True)]
expected_args = []
arglist.append(self._testrouter.name)
- verifylist.append(
- ('router', self._testrouter.name))
+ verifylist.append(('router', self._testrouter.name))
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.assertFalse(self.network.update_router.called)
self.network.set_tags.assert_called_once_with(
- self._testrouter,
- tests_utils.CompareBySet(expected_args))
+ self._testrouter, tests_utils.CompareBySet(expected_args)
+ )
self.assertIsNone(result)
def test_unset_with_tags(self):
@@ -1585,15 +1780,18 @@ class TestUnsetRouter(TestRouter):
'--qos-policy',
self._testrouter.name,
]
- verifylist = [
- ('qos_policy', True)
- ]
+ verifylist = [('qos_policy', True)]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
- attrs = {'external_gateway_info': {"network_id": self.fake_network.id,
- "qos_policy_id": None}}
+ attrs = {
+ 'external_gateway_info': {
+ "network_id": self.fake_network.id,
+ "qos_policy_id": None,
+ }
+ }
self.network.update_router.assert_called_once_with(
- self._testrouter, **attrs)
+ self._testrouter, **attrs
+ )
self.assertIsNone(result)
def test_unset_gateway_ip_qos_no_network(self):
@@ -1610,14 +1808,16 @@ class TestUnsetRouter(TestRouter):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- self.assertRaises(exceptions.CommandError,
- self.cmd.take_action, parsed_args)
+ self.assertRaises(
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
def test_unset_gateway_ip_qos_no_qos(self):
qos_policy = network_fakes.FakeNetworkQosPolicy.create_one_qos_policy()
self.network.find_qos_policy = mock.Mock(return_value=qos_policy)
router = network_fakes.FakeRouter.create_one_router(
- {"external_gateway_info": {"network_id": "fake-id"}})
+ {"external_gateway_info": {"network_id": "fake-id"}}
+ )
self.network.find_router = mock.Mock(return_value=router)
arglist = [
"--qos-policy",
@@ -1628,5 +1828,6 @@ class TestUnsetRouter(TestRouter):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- self.assertRaises(exceptions.CommandError,
- self.cmd.take_action, parsed_args)
+ self.assertRaises(
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
diff --git a/openstackclient/tests/unit/network/v2/test_security_group_compute.py b/openstackclient/tests/unit/network/v2/test_security_group_compute.py
index 4f1ddce5..22e8b71b 100644
--- a/openstackclient/tests/unit/network/v2/test_security_group_compute.py
+++ b/openstackclient/tests/unit/network/v2/test_security_group_compute.py
@@ -23,7 +23,6 @@ from openstackclient.tests.unit import utils as tests_utils
class TestSecurityGroupCompute(compute_fakes.TestComputev2):
-
def setUp(self):
super(TestSecurityGroupCompute, self).setUp()
@@ -31,17 +30,15 @@ class TestSecurityGroupCompute(compute_fakes.TestComputev2):
self.compute = self.app.client_manager.compute
-@mock.patch(
- 'openstackclient.api.compute_v2.APIv2.security_group_create'
-)
+@mock.patch('openstackclient.api.compute_v2.APIv2.security_group_create')
class TestCreateSecurityGroupCompute(TestSecurityGroupCompute):
-
project = identity_fakes.FakeProject.create_one_project()
domain = identity_fakes.FakeDomain.create_one_domain()
# The security group to be shown.
- _security_group = \
+ _security_group = (
compute_fakes.FakeSecurityGroup.create_one_security_group()
+ )
columns = (
'description',
@@ -68,8 +65,9 @@ class TestCreateSecurityGroupCompute(TestSecurityGroupCompute):
self.cmd = security_group.CreateSecurityGroup(self.app, None)
def test_security_group_create_no_options(self, sg_mock):
- self.assertRaises(tests_utils.ParserException,
- self.check_parser, self.cmd, [], [])
+ self.assertRaises(
+ tests_utils.ParserException, self.check_parser, self.cmd, [], []
+ )
def test_security_group_create_min_options(self, sg_mock):
sg_mock.return_value = self._security_group
@@ -93,7 +91,8 @@ class TestCreateSecurityGroupCompute(TestSecurityGroupCompute):
def test_security_group_create_all_options(self, sg_mock):
sg_mock.return_value = self._security_group
arglist = [
- '--description', self._security_group['description'],
+ '--description',
+ self._security_group['description'],
self._security_group['name'],
]
verifylist = [
@@ -112,14 +111,10 @@ class TestCreateSecurityGroupCompute(TestSecurityGroupCompute):
self.assertCountEqual(self.data, data)
-@mock.patch(
- 'openstackclient.api.compute_v2.APIv2.security_group_delete'
-)
+@mock.patch('openstackclient.api.compute_v2.APIv2.security_group_delete')
class TestDeleteSecurityGroupCompute(TestSecurityGroupCompute):
-
# The security groups to be deleted.
- _security_groups = \
- compute_fakes.FakeSecurityGroup.create_security_groups()
+ _security_groups = compute_fakes.FakeSecurityGroup.create_security_groups()
def setUp(self):
super(TestDeleteSecurityGroupCompute, self).setUp()
@@ -128,7 +123,8 @@ class TestDeleteSecurityGroupCompute(TestSecurityGroupCompute):
self.compute.api.security_group_find = (
compute_fakes.FakeSecurityGroup.get_security_groups(
- self._security_groups)
+ self._security_groups
+ )
)
# Get the command object to test
@@ -173,17 +169,19 @@ class TestDeleteSecurityGroupCompute(TestSecurityGroupCompute):
def test_security_group_multi_delete_with_exception(self, sg_mock):
sg_mock.return_value = mock.Mock(return_value=None)
- sg_mock.side_effect = ([
+ sg_mock.side_effect = [
mock.Mock(return_value=None),
exceptions.CommandError,
- ])
+ ]
arglist = [
self._security_groups[0]['id'],
'unexist_security_group',
]
verifylist = [
- ('group',
- [self._security_groups[0]['id'], 'unexist_security_group']),
+ (
+ 'group',
+ [self._security_groups[0]['id'], 'unexist_security_group'],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
@@ -197,14 +195,12 @@ class TestDeleteSecurityGroupCompute(TestSecurityGroupCompute):
sg_mock.assert_any_call('unexist_security_group')
-@mock.patch(
- 'openstackclient.api.compute_v2.APIv2.security_group_list'
-)
+@mock.patch('openstackclient.api.compute_v2.APIv2.security_group_list')
class TestListSecurityGroupCompute(TestSecurityGroupCompute):
-
# The security group to be listed.
- _security_groups = \
- compute_fakes.FakeSecurityGroup.create_security_groups(count=3)
+ _security_groups = compute_fakes.FakeSecurityGroup.create_security_groups(
+ count=3
+ )
columns = (
'ID',
@@ -220,19 +216,23 @@ class TestListSecurityGroupCompute(TestSecurityGroupCompute):
data = []
for grp in _security_groups:
- data.append((
- grp['id'],
- grp['name'],
- grp['description'],
- ))
+ data.append(
+ (
+ grp['id'],
+ grp['name'],
+ grp['description'],
+ )
+ )
data_all_projects = []
for grp in _security_groups:
- data_all_projects.append((
- grp['id'],
- grp['name'],
- grp['description'],
- grp['tenant_id'],
- ))
+ data_all_projects.append(
+ (
+ grp['id'],
+ grp['name'],
+ grp['description'],
+ grp['tenant_id'],
+ )
+ )
def setUp(self):
super(TestListSecurityGroupCompute, self).setUp()
@@ -275,14 +275,12 @@ class TestListSecurityGroupCompute(TestSecurityGroupCompute):
self.assertCountEqual(self.data_all_projects, list(data))
-@mock.patch(
- 'openstackclient.api.compute_v2.APIv2.security_group_set'
-)
+@mock.patch('openstackclient.api.compute_v2.APIv2.security_group_set')
class TestSetSecurityGroupCompute(TestSecurityGroupCompute):
-
# The security group to be set.
- _security_group = \
+ _security_group = (
compute_fakes.FakeSecurityGroup.create_one_security_group()
+ )
def setUp(self):
super(TestSetSecurityGroupCompute, self).setUp()
@@ -290,14 +288,16 @@ class TestSetSecurityGroupCompute(TestSecurityGroupCompute):
self.app.client_manager.network_endpoint_enabled = False
self.compute.api.security_group_find = mock.Mock(
- return_value=self._security_group)
+ return_value=self._security_group
+ )
# Get the command object to test
self.cmd = security_group.SetSecurityGroup(self.app, None)
def test_security_group_set_no_options(self, sg_mock):
- self.assertRaises(tests_utils.ParserException,
- self.check_parser, self.cmd, [], [])
+ self.assertRaises(
+ tests_utils.ParserException, self.check_parser, self.cmd, [], []
+ )
def test_security_group_set_no_updates(self, sg_mock):
sg_mock.return_value = mock.Mock(return_value=None)
@@ -323,8 +323,10 @@ class TestSetSecurityGroupCompute(TestSecurityGroupCompute):
new_name = 'new-' + self._security_group['name']
new_description = 'new-' + self._security_group['description']
arglist = [
- '--name', new_name,
- '--description', new_description,
+ '--name',
+ new_name,
+ '--description',
+ new_description,
self._security_group['name'],
]
verifylist = [
@@ -337,27 +339,24 @@ class TestSetSecurityGroupCompute(TestSecurityGroupCompute):
result = self.cmd.take_action(parsed_args)
sg_mock.assert_called_once_with(
- self._security_group,
- new_name,
- new_description
+ self._security_group, new_name, new_description
)
self.assertIsNone(result)
-@mock.patch(
- 'openstackclient.api.compute_v2.APIv2.security_group_find'
-)
+@mock.patch('openstackclient.api.compute_v2.APIv2.security_group_find')
class TestShowSecurityGroupCompute(TestSecurityGroupCompute):
-
# The security group rule to be shown with the group.
- _security_group_rule = \
+ _security_group_rule = (
compute_fakes.FakeSecurityGroupRule.create_one_security_group_rule()
+ )
# The security group to be shown.
- _security_group = \
+ _security_group = (
compute_fakes.FakeSecurityGroup.create_one_security_group(
attrs={'rules': [_security_group_rule]}
)
+ )
columns = (
'description',
@@ -384,8 +383,9 @@ class TestShowSecurityGroupCompute(TestSecurityGroupCompute):
self.cmd = security_group.ShowSecurityGroup(self.app, None)
def test_security_group_show_no_options(self, sg_mock):
- self.assertRaises(tests_utils.ParserException,
- self.check_parser, self.cmd, [], [])
+ self.assertRaises(
+ tests_utils.ParserException, self.check_parser, self.cmd, [], []
+ )
def test_security_group_show_all_options(self, sg_mock):
sg_mock.return_value = self._security_group
diff --git a/openstackclient/tests/unit/network/v2/test_security_group_network.py b/openstackclient/tests/unit/network/v2/test_security_group_network.py
index 95262bf1..f55a3998 100644
--- a/openstackclient/tests/unit/network/v2/test_security_group_network.py
+++ b/openstackclient/tests/unit/network/v2/test_security_group_network.py
@@ -23,7 +23,6 @@ from openstackclient.tests.unit import utils as tests_utils
class TestSecurityGroupNetwork(network_fakes.TestNetworkV2):
-
def setUp(self):
super(TestSecurityGroupNetwork, self).setUp()
@@ -36,12 +35,12 @@ class TestSecurityGroupNetwork(network_fakes.TestNetworkV2):
class TestCreateSecurityGroupNetwork(TestSecurityGroupNetwork):
-
project = identity_fakes.FakeProject.create_one_project()
domain = identity_fakes.FakeDomain.create_one_domain()
# The security group to be created.
_security_group = (
- network_fakes.FakeSecurityGroup.create_one_security_group())
+ network_fakes.FakeSecurityGroup.create_one_security_group()
+ )
columns = (
'description',
@@ -67,7 +66,8 @@ class TestCreateSecurityGroupNetwork(TestSecurityGroupNetwork):
super(TestCreateSecurityGroupNetwork, self).setUp()
self.network.create_security_group = mock.Mock(
- return_value=self._security_group)
+ return_value=self._security_group
+ )
self.projects_mock.get.return_value = self.project
self.domains_mock.get.return_value = self.domain
@@ -77,8 +77,9 @@ class TestCreateSecurityGroupNetwork(TestSecurityGroupNetwork):
self.cmd = security_group.CreateSecurityGroup(self.app, self.namespace)
def test_create_no_options(self):
- self.assertRaises(tests_utils.ParserException,
- self.check_parser, self.cmd, [], [])
+ self.assertRaises(
+ tests_utils.ParserException, self.check_parser, self.cmd, [], []
+ )
def test_create_min_options(self):
arglist = [
@@ -91,18 +92,23 @@ class TestCreateSecurityGroupNetwork(TestSecurityGroupNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_security_group.assert_called_once_with(**{
- 'description': self._security_group.name,
- 'name': self._security_group.name,
- })
+ self.network.create_security_group.assert_called_once_with(
+ **{
+ 'description': self._security_group.name,
+ 'name': self._security_group.name,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, data)
def test_create_all_options(self):
arglist = [
- '--description', self._security_group.description,
- '--project', self.project.name,
- '--project-domain', self.domain.name,
+ '--description',
+ self._security_group.description,
+ '--project',
+ self.project.name,
+ '--project-domain',
+ self.domain.name,
'--stateful',
self._security_group.name,
]
@@ -117,12 +123,14 @@ class TestCreateSecurityGroupNetwork(TestSecurityGroupNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_security_group.assert_called_once_with(**{
- 'description': self._security_group.description,
- 'stateful': self._security_group.stateful,
- 'name': self._security_group.name,
- 'project_id': self.project.id,
- })
+ self.network.create_security_group.assert_called_once_with(
+ **{
+ 'description': self._security_group.description,
+ 'stateful': self._security_group.stateful,
+ 'name': self._security_group.name,
+ 'project_id': self.project.id,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, data)
@@ -142,16 +150,18 @@ class TestCreateSecurityGroupNetwork(TestSecurityGroupNetwork):
verifylist.append(('no_tag', True))
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_security_group.assert_called_once_with(**{
- 'description': self._security_group.name,
- 'name': self._security_group.name,
- })
+ self.network.create_security_group.assert_called_once_with(
+ **{
+ 'description': self._security_group.name,
+ 'name': self._security_group.name,
+ }
+ )
if add_tags:
self.network.set_tags.assert_called_once_with(
- self._security_group,
- tests_utils.CompareBySet(['red', 'blue']))
+ self._security_group, tests_utils.CompareBySet(['red', 'blue'])
+ )
else:
self.assertFalse(self.network.set_tags.called)
self.assertEqual(self.columns, columns)
@@ -165,10 +175,8 @@ class TestCreateSecurityGroupNetwork(TestSecurityGroupNetwork):
class TestDeleteSecurityGroupNetwork(TestSecurityGroupNetwork):
-
# The security groups to be deleted.
- _security_groups = \
- network_fakes.FakeSecurityGroup.create_security_groups()
+ _security_groups = network_fakes.FakeSecurityGroup.create_security_groups()
def setUp(self):
super(TestDeleteSecurityGroupNetwork, self).setUp()
@@ -177,7 +185,8 @@ class TestDeleteSecurityGroupNetwork(TestSecurityGroupNetwork):
self.network.find_security_group = (
network_fakes.FakeSecurityGroup.get_security_groups(
- self._security_groups)
+ self._security_groups
+ )
)
# Get the command object to test
@@ -195,7 +204,8 @@ class TestDeleteSecurityGroupNetwork(TestSecurityGroupNetwork):
result = self.cmd.take_action(parsed_args)
self.network.delete_security_group.assert_called_once_with(
- self._security_groups[0])
+ self._security_groups[0]
+ )
self.assertIsNone(result)
def test_multi_security_groups_delete(self):
@@ -223,14 +233,16 @@ class TestDeleteSecurityGroupNetwork(TestSecurityGroupNetwork):
'unexist_security_group',
]
verifylist = [
- ('group',
- [self._security_groups[0].name, 'unexist_security_group']),
+ (
+ 'group',
+ [self._security_groups[0].name, 'unexist_security_group'],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
find_mock_result = [self._security_groups[0], exceptions.CommandError]
- self.network.find_security_group = (
- mock.Mock(side_effect=find_mock_result)
+ self.network.find_security_group = mock.Mock(
+ side_effect=find_mock_result
)
try:
@@ -240,19 +252,21 @@ class TestDeleteSecurityGroupNetwork(TestSecurityGroupNetwork):
self.assertEqual('1 of 2 groups failed to delete.', str(e))
self.network.find_security_group.assert_any_call(
- self._security_groups[0].name, ignore_missing=False)
+ self._security_groups[0].name, ignore_missing=False
+ )
self.network.find_security_group.assert_any_call(
- 'unexist_security_group', ignore_missing=False)
+ 'unexist_security_group', ignore_missing=False
+ )
self.network.delete_security_group.assert_called_once_with(
self._security_groups[0]
)
class TestListSecurityGroupNetwork(TestSecurityGroupNetwork):
-
# The security group to be listed.
- _security_groups = \
- network_fakes.FakeSecurityGroup.create_security_groups(count=3)
+ _security_groups = network_fakes.FakeSecurityGroup.create_security_groups(
+ count=3
+ )
columns = (
'ID',
@@ -264,19 +278,22 @@ class TestListSecurityGroupNetwork(TestSecurityGroupNetwork):
data = []
for grp in _security_groups:
- data.append((
- grp.id,
- grp.name,
- grp.description,
- grp.project_id,
- grp.tags,
- ))
+ data.append(
+ (
+ grp.id,
+ grp.name,
+ grp.description,
+ grp.project_id,
+ grp.tags,
+ )
+ )
def setUp(self):
super(TestListSecurityGroupNetwork, self).setUp()
self.network.security_groups = mock.Mock(
- return_value=self._security_groups)
+ return_value=self._security_groups
+ )
# Get the command object to test
self.cmd = security_group.ListSecurityGroup(self.app, self.namespace)
@@ -291,7 +308,8 @@ class TestListSecurityGroupNetwork(TestSecurityGroupNetwork):
columns, data = self.cmd.take_action(parsed_args)
self.network.security_groups.assert_called_once_with(
- fields=security_group.ListSecurityGroup.FIELDS_TO_RETRIEVE)
+ fields=security_group.ListSecurityGroup.FIELDS_TO_RETRIEVE
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
@@ -307,7 +325,8 @@ class TestListSecurityGroupNetwork(TestSecurityGroupNetwork):
columns, data = self.cmd.take_action(parsed_args)
self.network.security_groups.assert_called_once_with(
- fields=security_group.ListSecurityGroup.FIELDS_TO_RETRIEVE)
+ fields=security_group.ListSecurityGroup.FIELDS_TO_RETRIEVE
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
@@ -315,7 +334,8 @@ class TestListSecurityGroupNetwork(TestSecurityGroupNetwork):
project = identity_fakes.FakeProject.create_one_project()
self.projects_mock.get.return_value = project
arglist = [
- '--project', project.id,
+ '--project',
+ project.id,
]
verifylist = [
('project', project.id),
@@ -325,7 +345,8 @@ class TestListSecurityGroupNetwork(TestSecurityGroupNetwork):
columns, data = self.cmd.take_action(parsed_args)
filters = {
'project_id': project.id,
- 'fields': security_group.ListSecurityGroup.FIELDS_TO_RETRIEVE}
+ 'fields': security_group.ListSecurityGroup.FIELDS_TO_RETRIEVE,
+ }
self.network.security_groups.assert_called_once_with(**filters)
self.assertEqual(self.columns, columns)
@@ -335,8 +356,10 @@ class TestListSecurityGroupNetwork(TestSecurityGroupNetwork):
project = identity_fakes.FakeProject.create_one_project()
self.projects_mock.get.return_value = project
arglist = [
- '--project', project.id,
- '--project-domain', project.domain_id,
+ '--project',
+ project.id,
+ '--project-domain',
+ project.domain_id,
]
verifylist = [
('project', project.id),
@@ -347,7 +370,8 @@ class TestListSecurityGroupNetwork(TestSecurityGroupNetwork):
columns, data = self.cmd.take_action(parsed_args)
filters = {
'project_id': project.id,
- 'fields': security_group.ListSecurityGroup.FIELDS_TO_RETRIEVE}
+ 'fields': security_group.ListSecurityGroup.FIELDS_TO_RETRIEVE,
+ }
self.network.security_groups.assert_called_once_with(**filters)
self.assertEqual(self.columns, columns)
@@ -355,10 +379,14 @@ class TestListSecurityGroupNetwork(TestSecurityGroupNetwork):
def test_list_with_tag_options(self):
arglist = [
- '--tags', 'red,blue',
- '--any-tags', 'red,green',
- '--not-tags', 'orange,yellow',
- '--not-any-tags', 'black,white',
+ '--tags',
+ 'red,blue',
+ '--any-tags',
+ 'red,green',
+ '--not-tags',
+ 'orange,yellow',
+ '--not-any-tags',
+ 'black,white',
]
verifylist = [
('tags', ['red', 'blue']),
@@ -370,22 +398,25 @@ class TestListSecurityGroupNetwork(TestSecurityGroupNetwork):
columns, data = self.cmd.take_action(parsed_args)
self.network.security_groups.assert_called_once_with(
- **{'tags': 'red,blue',
- 'any_tags': 'red,green',
- 'not_tags': 'orange,yellow',
- 'not_any_tags': 'black,white',
- 'fields': security_group.ListSecurityGroup.FIELDS_TO_RETRIEVE}
+ **{
+ 'tags': 'red,blue',
+ 'any_tags': 'red,green',
+ 'not_tags': 'orange,yellow',
+ 'not_any_tags': 'black,white',
+ 'fields': security_group.ListSecurityGroup.FIELDS_TO_RETRIEVE,
+ }
)
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, list(data))
class TestSetSecurityGroupNetwork(TestSecurityGroupNetwork):
-
# The security group to be set.
_security_group = (
network_fakes.FakeSecurityGroup.create_one_security_group(
- attrs={'tags': ['green', 'red']}))
+ attrs={'tags': ['green', 'red']}
+ )
+ )
def setUp(self):
super(TestSetSecurityGroupNetwork, self).setUp()
@@ -393,15 +424,17 @@ class TestSetSecurityGroupNetwork(TestSecurityGroupNetwork):
self.network.update_security_group = mock.Mock(return_value=None)
self.network.find_security_group = mock.Mock(
- return_value=self._security_group)
+ return_value=self._security_group
+ )
self.network.set_tags = mock.Mock(return_value=None)
# Get the command object to test
self.cmd = security_group.SetSecurityGroup(self.app, self.namespace)
def test_set_no_options(self):
- self.assertRaises(tests_utils.ParserException,
- self.check_parser, self.cmd, [], [])
+ self.assertRaises(
+ tests_utils.ParserException, self.check_parser, self.cmd, [], []
+ )
def test_set_no_updates(self):
arglist = [
@@ -415,8 +448,7 @@ class TestSetSecurityGroupNetwork(TestSecurityGroupNetwork):
result = self.cmd.take_action(parsed_args)
self.network.update_security_group.assert_called_once_with(
- self._security_group,
- **{}
+ self._security_group, **{}
)
self.assertIsNone(result)
@@ -424,8 +456,10 @@ class TestSetSecurityGroupNetwork(TestSecurityGroupNetwork):
new_name = 'new-' + self._security_group.name
new_description = 'new-' + self._security_group.description
arglist = [
- '--name', new_name,
- '--description', new_description,
+ '--name',
+ new_name,
+ '--description',
+ new_description,
'--stateful',
self._security_group.name,
]
@@ -445,8 +479,7 @@ class TestSetSecurityGroupNetwork(TestSecurityGroupNetwork):
'stateful': True,
}
self.network.update_security_group.assert_called_once_with(
- self._security_group,
- **attrs
+ self._security_group, **attrs
)
self.assertIsNone(result)
@@ -460,16 +493,15 @@ class TestSetSecurityGroupNetwork(TestSecurityGroupNetwork):
verifylist = [('no_tag', True)]
expected_args = []
arglist.append(self._security_group.name)
- verifylist.append(
- ('group', self._security_group.name))
+ verifylist.append(('group', self._security_group.name))
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.assertTrue(self.network.update_security_group.called)
self.network.set_tags.assert_called_once_with(
- self._security_group,
- tests_utils.CompareBySet(expected_args))
+ self._security_group, tests_utils.CompareBySet(expected_args)
+ )
self.assertIsNone(result)
def test_set_with_tags(self):
@@ -480,16 +512,17 @@ class TestSetSecurityGroupNetwork(TestSecurityGroupNetwork):
class TestShowSecurityGroupNetwork(TestSecurityGroupNetwork):
-
# The security group rule to be shown with the group.
- _security_group_rule = \
+ _security_group_rule = (
network_fakes.FakeSecurityGroupRule.create_one_security_group_rule()
+ )
# The security group to be shown.
- _security_group = \
+ _security_group = (
network_fakes.FakeSecurityGroup.create_one_security_group(
attrs={'security_group_rules': [_security_group_rule._info]}
)
+ )
columns = (
'description',
@@ -507,7 +540,8 @@ class TestShowSecurityGroupNetwork(TestSecurityGroupNetwork):
_security_group.name,
_security_group.project_id,
security_group.NetworkSecurityGroupRulesColumn(
- [_security_group_rule._info]),
+ [_security_group_rule._info]
+ ),
_security_group.stateful,
_security_group.tags,
)
@@ -516,14 +550,16 @@ class TestShowSecurityGroupNetwork(TestSecurityGroupNetwork):
super(TestShowSecurityGroupNetwork, self).setUp()
self.network.find_security_group = mock.Mock(
- return_value=self._security_group)
+ return_value=self._security_group
+ )
# Get the command object to test
self.cmd = security_group.ShowSecurityGroup(self.app, self.namespace)
def test_show_no_options(self):
- self.assertRaises(tests_utils.ParserException,
- self.check_parser, self.cmd, [], [])
+ self.assertRaises(
+ tests_utils.ParserException, self.check_parser, self.cmd, [], []
+ )
def test_show_all_options(self):
arglist = [
@@ -537,17 +573,19 @@ class TestShowSecurityGroupNetwork(TestSecurityGroupNetwork):
columns, data = self.cmd.take_action(parsed_args)
self.network.find_security_group.assert_called_once_with(
- self._security_group.id, ignore_missing=False)
+ self._security_group.id, ignore_missing=False
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, data)
class TestUnsetSecurityGroupNetwork(TestSecurityGroupNetwork):
-
# The security group to be unset.
_security_group = (
network_fakes.FakeSecurityGroup.create_one_security_group(
- attrs={'tags': ['green', 'red']}))
+ attrs={'tags': ['green', 'red']}
+ )
+ )
def setUp(self):
super(TestUnsetSecurityGroupNetwork, self).setUp()
@@ -555,15 +593,17 @@ class TestUnsetSecurityGroupNetwork(TestSecurityGroupNetwork):
self.network.update_security_group = mock.Mock(return_value=None)
self.network.find_security_group = mock.Mock(
- return_value=self._security_group)
+ return_value=self._security_group
+ )
self.network.set_tags = mock.Mock(return_value=None)
# Get the command object to test
self.cmd = security_group.UnsetSecurityGroup(self.app, self.namespace)
def test_set_no_options(self):
- self.assertRaises(tests_utils.ParserException,
- self.check_parser, self.cmd, [], [])
+ self.assertRaises(
+ tests_utils.ParserException, self.check_parser, self.cmd, [], []
+ )
def test_set_no_updates(self):
arglist = [
@@ -590,16 +630,15 @@ class TestUnsetSecurityGroupNetwork(TestSecurityGroupNetwork):
verifylist = [('all_tag', True)]
expected_args = []
arglist.append(self._security_group.name)
- verifylist.append(
- ('group', self._security_group.name))
+ verifylist.append(('group', self._security_group.name))
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.assertFalse(self.network.update_security_group.called)
self.network.set_tags.assert_called_once_with(
- self._security_group,
- tests_utils.CompareBySet(expected_args))
+ self._security_group, tests_utils.CompareBySet(expected_args)
+ )
self.assertIsNone(result)
def test_unset_with_tags(self):
diff --git a/openstackclient/tests/unit/network/v2/test_security_group_rule_compute.py b/openstackclient/tests/unit/network/v2/test_security_group_rule_compute.py
index b7e38afb..ea4adce0 100644
--- a/openstackclient/tests/unit/network/v2/test_security_group_rule_compute.py
+++ b/openstackclient/tests/unit/network/v2/test_security_group_rule_compute.py
@@ -24,7 +24,6 @@ from openstackclient.tests.unit import utils as tests_utils
class TestSecurityGroupRuleCompute(compute_fakes.TestComputev2):
-
def setUp(self):
super(TestSecurityGroupRuleCompute, self).setUp()
@@ -32,11 +31,8 @@ class TestSecurityGroupRuleCompute(compute_fakes.TestComputev2):
self.compute = self.app.client_manager.compute
-@mock.patch(
- 'openstackclient.api.compute_v2.APIv2.security_group_rule_create'
-)
+@mock.patch('openstackclient.api.compute_v2.APIv2.security_group_rule_create')
class TestCreateSecurityGroupRuleCompute(TestSecurityGroupRuleCompute):
-
project = identity_fakes.FakeProject.create_one_project()
domain = identity_fakes.FakeDomain.create_one_domain()
@@ -44,16 +40,22 @@ class TestCreateSecurityGroupRuleCompute(TestSecurityGroupRuleCompute):
_security_group_rule = None
# The security group that will contain the rule created.
- _security_group = \
+ _security_group = (
compute_fakes.FakeSecurityGroup.create_one_security_group()
+ )
def _setup_security_group_rule(self, attrs=None):
- self._security_group_rule = \
+ self._security_group_rule = (
compute_fakes.FakeSecurityGroupRule.create_one_security_group_rule(
- attrs)
- expected_columns, expected_data = \
- security_group_rule._format_security_group_rule_show(
- self._security_group_rule)
+ attrs
+ )
+ )
+ (
+ expected_columns,
+ expected_data,
+ ) = security_group_rule._format_security_group_rule_show(
+ self._security_group_rule
+ )
return expected_columns, expected_data
def setUp(self):
@@ -69,60 +71,100 @@ class TestCreateSecurityGroupRuleCompute(TestSecurityGroupRuleCompute):
self.cmd = security_group_rule.CreateSecurityGroupRule(self.app, None)
def test_security_group_rule_create_no_options(self, sgr_mock):
- self.assertRaises(tests_utils.ParserException,
- self.check_parser, self.cmd, [], [])
+ self.assertRaises(
+ tests_utils.ParserException, self.check_parser, self.cmd, [], []
+ )
def test_security_group_rule_create_all_remote_options(self, sgr_mock):
arglist = [
- '--remote-ip', '10.10.0.0/24',
- '--remote-group', self._security_group['id'],
+ '--remote-ip',
+ '10.10.0.0/24',
+ '--remote-group',
+ self._security_group['id'],
self._security_group['id'],
]
- self.assertRaises(tests_utils.ParserException,
- self.check_parser, self.cmd, arglist, [])
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ [],
+ )
def test_security_group_rule_create_bad_protocol(self, sgr_mock):
arglist = [
- '--protocol', 'foo',
+ '--protocol',
+ 'foo',
self._security_group['id'],
]
- self.assertRaises(tests_utils.ParserException,
- self.check_parser, self.cmd, arglist, [])
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ [],
+ )
def test_security_group_rule_create_all_protocol_options(self, sgr_mock):
arglist = [
- '--protocol', 'tcp',
- '--proto', 'tcp',
+ '--protocol',
+ 'tcp',
+ '--proto',
+ 'tcp',
self._security_group['id'],
]
- self.assertRaises(tests_utils.ParserException,
- self.check_parser, self.cmd, arglist, [])
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ [],
+ )
def test_security_group_rule_create_network_options(self, sgr_mock):
arglist = [
'--ingress',
- '--ethertype', 'IPv4',
- '--icmp-type', '3',
- '--icmp-code', '11',
- '--project', self.project.name,
- '--project-domain', self.domain.name,
+ '--ethertype',
+ 'IPv4',
+ '--icmp-type',
+ '3',
+ '--icmp-code',
+ '11',
+ '--project',
+ self.project.name,
+ '--project-domain',
+ self.domain.name,
self._security_group['id'],
]
- self.assertRaises(tests_utils.ParserException,
- self.check_parser, self.cmd, arglist, [])
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ [],
+ )
def test_security_group_rule_create_default_rule(self, sgr_mock):
expected_columns, expected_data = self._setup_security_group_rule()
sgr_mock.return_value = self._security_group_rule
- dst_port = str(self._security_group_rule['from_port']) + ':' + \
- str(self._security_group_rule['to_port'])
+ dst_port = (
+ str(self._security_group_rule['from_port'])
+ + ':'
+ + str(self._security_group_rule['to_port'])
+ )
arglist = [
- '--dst-port', dst_port,
+ '--dst-port',
+ dst_port,
self._security_group['id'],
]
verifylist = [
- ('dst_port', (self._security_group_rule['from_port'],
- self._security_group_rule['to_port'])),
+ (
+ 'dst_port',
+ (
+ self._security_group_rule['from_port'],
+ self._security_group_rule['to_port'],
+ ),
+ ),
('group', self._security_group['id']),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
@@ -143,20 +185,29 @@ class TestCreateSecurityGroupRuleCompute(TestSecurityGroupRuleCompute):
self.assertEqual(expected_data, data)
def test_security_group_rule_create_remote_group(self, sgr_mock):
- expected_columns, expected_data = self._setup_security_group_rule({
- 'from_port': 22,
- 'to_port': 22,
- 'group': {'name': self._security_group['name']},
- })
+ expected_columns, expected_data = self._setup_security_group_rule(
+ {
+ 'from_port': 22,
+ 'to_port': 22,
+ 'group': {'name': self._security_group['name']},
+ }
+ )
sgr_mock.return_value = self._security_group_rule
arglist = [
- '--dst-port', str(self._security_group_rule['from_port']),
- '--remote-group', self._security_group['name'],
+ '--dst-port',
+ str(self._security_group_rule['from_port']),
+ '--remote-group',
+ self._security_group['name'],
self._security_group['id'],
]
verifylist = [
- ('dst_port', (self._security_group_rule['from_port'],
- self._security_group_rule['to_port'])),
+ (
+ 'dst_port',
+ (
+ self._security_group_rule['from_port'],
+ self._security_group_rule['to_port'],
+ ),
+ ),
('remote_group', self._security_group['name']),
('group', self._security_group['id']),
]
@@ -178,16 +229,20 @@ class TestCreateSecurityGroupRuleCompute(TestSecurityGroupRuleCompute):
self.assertEqual(expected_data, data)
def test_security_group_rule_create_remote_ip(self, sgr_mock):
- expected_columns, expected_data = self._setup_security_group_rule({
- 'ip_protocol': 'icmp',
- 'from_port': -1,
- 'to_port': -1,
- 'ip_range': {'cidr': '10.0.2.0/24'},
- })
+ expected_columns, expected_data = self._setup_security_group_rule(
+ {
+ 'ip_protocol': 'icmp',
+ 'from_port': -1,
+ 'to_port': -1,
+ 'ip_range': {'cidr': '10.0.2.0/24'},
+ }
+ )
sgr_mock.return_value = self._security_group_rule
arglist = [
- '--protocol', self._security_group_rule['ip_protocol'],
- '--remote-ip', self._security_group_rule['ip_range']['cidr'],
+ '--protocol',
+ self._security_group_rule['ip_protocol'],
+ '--remote-ip',
+ self._security_group_rule['ip_range']['cidr'],
self._security_group['id'],
]
verifylist = [
@@ -213,16 +268,20 @@ class TestCreateSecurityGroupRuleCompute(TestSecurityGroupRuleCompute):
self.assertEqual(expected_data, data)
def test_security_group_rule_create_proto_option(self, sgr_mock):
- expected_columns, expected_data = self._setup_security_group_rule({
- 'ip_protocol': 'icmp',
- 'from_port': -1,
- 'to_port': -1,
- 'ip_range': {'cidr': '10.0.2.0/24'},
- })
+ expected_columns, expected_data = self._setup_security_group_rule(
+ {
+ 'ip_protocol': 'icmp',
+ 'from_port': -1,
+ 'to_port': -1,
+ 'ip_range': {'cidr': '10.0.2.0/24'},
+ }
+ )
sgr_mock.return_value = self._security_group_rule
arglist = [
- '--proto', self._security_group_rule['ip_protocol'],
- '--remote-ip', self._security_group_rule['ip_range']['cidr'],
+ '--proto',
+ self._security_group_rule['ip_protocol'],
+ '--remote-ip',
+ self._security_group_rule['ip_range']['cidr'],
self._security_group['id'],
]
verifylist = [
@@ -249,15 +308,14 @@ class TestCreateSecurityGroupRuleCompute(TestSecurityGroupRuleCompute):
self.assertEqual(expected_data, data)
-@mock.patch(
- 'openstackclient.api.compute_v2.APIv2.security_group_rule_delete'
-)
+@mock.patch('openstackclient.api.compute_v2.APIv2.security_group_rule_delete')
class TestDeleteSecurityGroupRuleCompute(TestSecurityGroupRuleCompute):
-
# The security group rule to be deleted.
- _security_group_rules = \
+ _security_group_rules = (
compute_fakes.FakeSecurityGroupRule.create_security_group_rules(
- count=2)
+ count=2
+ )
+ )
def setUp(self):
super(TestDeleteSecurityGroupRuleCompute, self).setUp()
@@ -278,8 +336,7 @@ class TestDeleteSecurityGroupRuleCompute(TestSecurityGroupRuleCompute):
result = self.cmd.take_action(parsed_args)
- sgr_mock.assert_called_once_with(
- self._security_group_rules[0]['id'])
+ sgr_mock.assert_called_once_with(self._security_group_rules[0]['id'])
self.assertIsNone(result)
def test_security_group_rule_delete_multi(self, sgr_mock):
@@ -307,8 +364,7 @@ class TestDeleteSecurityGroupRuleCompute(TestSecurityGroupRuleCompute):
'unexist_rule',
]
verifylist = [
- ('rule',
- [self._security_group_rules[0]['id'], 'unexist_rule']),
+ ('rule', [self._security_group_rules[0]['id'], 'unexist_rule']),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
@@ -321,36 +377,40 @@ class TestDeleteSecurityGroupRuleCompute(TestSecurityGroupRuleCompute):
except exceptions.CommandError as e:
self.assertEqual('1 of 2 rules failed to delete.', str(e))
- sgr_mock.assert_any_call(
- self._security_group_rules[0]['id'])
- sgr_mock.assert_any_call(
- 'unexist_rule')
+ sgr_mock.assert_any_call(self._security_group_rules[0]['id'])
+ sgr_mock.assert_any_call('unexist_rule')
class TestListSecurityGroupRuleCompute(TestSecurityGroupRuleCompute):
-
# The security group to hold the rules.
- _security_group = \
+ _security_group = (
compute_fakes.FakeSecurityGroup.create_one_security_group()
+ )
# The security group rule to be listed.
- _security_group_rule_tcp = \
- compute_fakes.FakeSecurityGroupRule.create_one_security_group_rule({
- 'ip_protocol': 'tcp',
- 'ethertype': 'IPv4',
- 'from_port': 80,
- 'to_port': 80,
- 'group': {'name': _security_group['name']},
- })
- _security_group_rule_icmp = \
- compute_fakes.FakeSecurityGroupRule.create_one_security_group_rule({
- 'ip_protocol': 'icmp',
- 'ethertype': 'IPv4',
- 'from_port': -1,
- 'to_port': -1,
- 'ip_range': {'cidr': '10.0.2.0/24'},
- 'group': {'name': _security_group['name']},
- })
+ _security_group_rule_tcp = (
+ compute_fakes.FakeSecurityGroupRule.create_one_security_group_rule(
+ {
+ 'ip_protocol': 'tcp',
+ 'ethertype': 'IPv4',
+ 'from_port': 80,
+ 'to_port': 80,
+ 'group': {'name': _security_group['name']},
+ }
+ )
+ )
+ _security_group_rule_icmp = (
+ compute_fakes.FakeSecurityGroupRule.create_one_security_group_rule(
+ {
+ 'ip_protocol': 'icmp',
+ 'ethertype': 'IPv4',
+ 'from_port': -1,
+ 'to_port': -1,
+ 'ip_range': {'cidr': '10.0.2.0/24'},
+ 'group': {'name': _security_group['name']},
+ }
+ )
+ )
_security_group['rules'] = [
_security_group_rule_tcp,
_security_group_rule_icmp,
@@ -365,8 +425,9 @@ class TestListSecurityGroupRuleCompute(TestSecurityGroupRuleCompute):
'Direction',
'Remote Security Group',
)
- expected_columns_no_group = \
- expected_columns_with_group + ('Security Group',)
+ expected_columns_no_group = expected_columns_with_group + (
+ 'Security Group',
+ )
expected_data_with_group = []
expected_data_no_group = []
@@ -382,8 +443,9 @@ class TestListSecurityGroupRuleCompute(TestSecurityGroupRuleCompute):
rule['port_range'],
rule['remote_security_group'],
)
- expected_rule_no_group = expected_rule_with_group + \
- (_security_group_rule['parent_group_id'],)
+ expected_rule_no_group = expected_rule_with_group + (
+ _security_group_rule['parent_group_id'],
+ )
expected_data_with_group.append(expected_rule_with_group)
expected_data_no_group.append(expected_rule_no_group)
@@ -462,14 +524,14 @@ class TestListSecurityGroupRuleCompute(TestSecurityGroupRuleCompute):
class TestShowSecurityGroupRuleCompute(TestSecurityGroupRuleCompute):
-
# The security group rule to be shown.
- _security_group_rule = \
+ _security_group_rule = (
compute_fakes.FakeSecurityGroupRule.create_one_security_group_rule()
+ )
- columns, data = \
- security_group_rule._format_security_group_rule_show(
- _security_group_rule)
+ columns, data = security_group_rule._format_security_group_rule_show(
+ _security_group_rule
+ )
def setUp(self):
super(TestShowSecurityGroupRuleCompute, self).setUp()
@@ -487,8 +549,9 @@ class TestShowSecurityGroupRuleCompute(TestSecurityGroupRuleCompute):
self.cmd = security_group_rule.ShowSecurityGroupRule(self.app, None)
def test_security_group_rule_show_no_options(self):
- self.assertRaises(tests_utils.ParserException,
- self.check_parser, self.cmd, [], [])
+ self.assertRaises(
+ tests_utils.ParserException, self.check_parser, self.cmd, [], []
+ )
def test_security_group_rule_show_all_options(self):
arglist = [
diff --git a/openstackclient/tests/unit/network/v2/test_security_group_rule_network.py b/openstackclient/tests/unit/network/v2/test_security_group_rule_network.py
index 3c90f281..070851f5 100644
--- a/openstackclient/tests/unit/network/v2/test_security_group_rule_network.py
+++ b/openstackclient/tests/unit/network/v2/test_security_group_rule_network.py
@@ -23,7 +23,6 @@ from openstackclient.tests.unit import utils as tests_utils
class TestSecurityGroupRuleNetwork(network_fakes.TestNetworkV2):
-
def setUp(self):
super(TestSecurityGroupRuleNetwork, self).setUp()
@@ -36,15 +35,15 @@ class TestSecurityGroupRuleNetwork(network_fakes.TestNetworkV2):
class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
-
project = identity_fakes.FakeProject.create_one_project()
domain = identity_fakes.FakeDomain.create_one_domain()
# The security group rule to be created.
_security_group_rule = None
# The security group that will contain the rule created.
- _security_group = \
+ _security_group = (
network_fakes.FakeSecurityGroup.create_one_security_group()
+ )
# The address group to be used in security group rules
_address_group = network_fakes.create_one_address_group()
@@ -67,11 +66,14 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
expected_data = None
def _setup_security_group_rule(self, attrs=None):
- self._security_group_rule = \
+ self._security_group_rule = (
network_fakes.FakeSecurityGroupRule.create_one_security_group_rule(
- attrs)
+ attrs
+ )
+ )
self.network.create_security_group_rule = mock.Mock(
- return_value=self._security_group_rule)
+ return_value=self._security_group_rule
+ )
self.expected_data = (
self._security_group_rule.description,
self._security_group_rule.direction,
@@ -91,43 +93,62 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
super(TestCreateSecurityGroupRuleNetwork, self).setUp()
self.network.find_security_group = mock.Mock(
- return_value=self._security_group)
+ return_value=self._security_group
+ )
self.network.find_address_group = mock.Mock(
- return_value=self._address_group)
+ return_value=self._address_group
+ )
self.projects_mock.get.return_value = self.project
self.domains_mock.get.return_value = self.domain
# Get the command object to test
self.cmd = security_group_rule.CreateSecurityGroupRule(
- self.app, self.namespace)
+ self.app, self.namespace
+ )
def test_create_no_options(self):
- self.assertRaises(tests_utils.ParserException,
- self.check_parser, self.cmd, [], [])
+ self.assertRaises(
+ tests_utils.ParserException, self.check_parser, self.cmd, [], []
+ )
def test_create_all_remote_options(self):
arglist = [
- '--remote-ip', '10.10.0.0/24',
- '--remote-group', self._security_group.id,
- '--remote-address-group', self._address_group.id,
+ '--remote-ip',
+ '10.10.0.0/24',
+ '--remote-group',
+ self._security_group.id,
+ '--remote-address-group',
+ self._address_group.id,
self._security_group.id,
]
- self.assertRaises(tests_utils.ParserException,
- self.check_parser, self.cmd, arglist, [])
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ [],
+ )
def test_create_bad_ethertype(self):
arglist = [
- '--ethertype', 'foo',
+ '--ethertype',
+ 'foo',
self._security_group.id,
]
- self.assertRaises(tests_utils.ParserException,
- self.check_parser, self.cmd, arglist, [])
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ [],
+ )
def test_lowercase_ethertype(self):
arglist = [
- '--ethertype', 'ipv4',
+ '--ethertype',
+ 'ipv4',
self._security_group.id,
]
parsed_args = self.check_parser(self.cmd, arglist, [])
@@ -135,7 +156,8 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
def test_lowercase_v6_ethertype(self):
arglist = [
- '--ethertype', 'ipv6',
+ '--ethertype',
+ 'ipv6',
self._security_group.id,
]
parsed_args = self.check_parser(self.cmd, arglist, [])
@@ -143,7 +165,8 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
def test_proper_case_ethertype(self):
arglist = [
- '--ethertype', 'IPv6',
+ '--ethertype',
+ 'IPv6',
self._security_group.id,
]
parsed_args = self.check_parser(self.cmd, arglist, [])
@@ -151,18 +174,28 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
def test_create_all_protocol_options(self):
arglist = [
- '--protocol', 'tcp',
- '--proto', 'tcp',
+ '--protocol',
+ 'tcp',
+ '--proto',
+ 'tcp',
self._security_group.id,
]
- self.assertRaises(tests_utils.ParserException,
- self.check_parser, self.cmd, arglist, [])
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ [],
+ )
def test_create_all_port_range_options(self):
arglist = [
- '--dst-port', '80:80',
- '--icmp-type', '3',
- '--icmp-code', '1',
+ '--dst-port',
+ '80:80',
+ '--icmp-type',
+ '3',
+ '--icmp-code',
+ '1',
self._security_group.id,
]
verifylist = [
@@ -172,49 +205,65 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
('group', self._security_group.id),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- self.assertRaises(exceptions.CommandError, self.cmd.take_action,
- parsed_args)
+ self.assertRaises(
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
def test_create_default_rule(self):
- self._setup_security_group_rule({
- 'protocol': 'tcp',
- 'port_range_max': 443,
- 'port_range_min': 443,
- })
+ self._setup_security_group_rule(
+ {
+ 'protocol': 'tcp',
+ 'port_range_max': 443,
+ 'port_range_min': 443,
+ }
+ )
arglist = [
- '--protocol', 'tcp',
- '--dst-port', str(self._security_group_rule.port_range_min),
+ '--protocol',
+ 'tcp',
+ '--dst-port',
+ str(self._security_group_rule.port_range_min),
self._security_group.id,
]
verifylist = [
- ('dst_port', (self._security_group_rule.port_range_min,
- self._security_group_rule.port_range_max)),
+ (
+ 'dst_port',
+ (
+ self._security_group_rule.port_range_min,
+ self._security_group_rule.port_range_max,
+ ),
+ ),
('group', self._security_group.id),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_security_group_rule.assert_called_once_with(**{
- 'direction': self._security_group_rule.direction,
- 'ethertype': self._security_group_rule.ether_type,
- 'port_range_max': self._security_group_rule.port_range_max,
- 'port_range_min': self._security_group_rule.port_range_min,
- 'protocol': self._security_group_rule.protocol,
- 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
- 'security_group_id': self._security_group.id,
- })
+ self.network.create_security_group_rule.assert_called_once_with(
+ **{
+ 'direction': self._security_group_rule.direction,
+ 'ethertype': self._security_group_rule.ether_type,
+ 'port_range_max': self._security_group_rule.port_range_max,
+ 'port_range_min': self._security_group_rule.port_range_min,
+ 'protocol': self._security_group_rule.protocol,
+ 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
+ 'security_group_id': self._security_group.id,
+ }
+ )
self.assertEqual(self.expected_columns, columns)
self.assertEqual(self.expected_data, data)
def test_create_proto_option(self):
- self._setup_security_group_rule({
- 'protocol': 'icmp',
- 'remote_ip_prefix': '10.0.2.0/24',
- })
+ self._setup_security_group_rule(
+ {
+ 'protocol': 'icmp',
+ 'remote_ip_prefix': '10.0.2.0/24',
+ }
+ )
arglist = [
- '--proto', self._security_group_rule.protocol,
- '--remote-ip', self._security_group_rule.remote_ip_prefix,
+ '--proto',
+ self._security_group_rule.protocol,
+ '--remote-ip',
+ self._security_group_rule.remote_ip_prefix,
self._security_group.id,
]
verifylist = [
@@ -227,24 +276,30 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_security_group_rule.assert_called_once_with(**{
- 'direction': self._security_group_rule.direction,
- 'ethertype': self._security_group_rule.ether_type,
- 'protocol': self._security_group_rule.protocol,
- 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
- 'security_group_id': self._security_group.id,
- })
+ self.network.create_security_group_rule.assert_called_once_with(
+ **{
+ 'direction': self._security_group_rule.direction,
+ 'ethertype': self._security_group_rule.ether_type,
+ 'protocol': self._security_group_rule.protocol,
+ 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
+ 'security_group_id': self._security_group.id,
+ }
+ )
self.assertEqual(self.expected_columns, columns)
self.assertEqual(self.expected_data, data)
def test_create_protocol_any(self):
- self._setup_security_group_rule({
- 'protocol': None,
- 'remote_ip_prefix': '10.0.2.0/24',
- })
+ self._setup_security_group_rule(
+ {
+ 'protocol': None,
+ 'remote_ip_prefix': '10.0.2.0/24',
+ }
+ )
arglist = [
- '--proto', 'any',
- '--remote-ip', self._security_group_rule.remote_ip_prefix,
+ '--proto',
+ 'any',
+ '--remote-ip',
+ self._security_group_rule.remote_ip_prefix,
self._security_group.id,
]
verifylist = [
@@ -257,24 +312,30 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_security_group_rule.assert_called_once_with(**{
- 'direction': self._security_group_rule.direction,
- 'ethertype': self._security_group_rule.ether_type,
- 'protocol': self._security_group_rule.protocol,
- 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
- 'security_group_id': self._security_group.id,
- })
+ self.network.create_security_group_rule.assert_called_once_with(
+ **{
+ 'direction': self._security_group_rule.direction,
+ 'ethertype': self._security_group_rule.ether_type,
+ 'protocol': self._security_group_rule.protocol,
+ 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
+ 'security_group_id': self._security_group.id,
+ }
+ )
self.assertEqual(self.expected_columns, columns)
self.assertEqual(self.expected_data, data)
def test_create_remote_address_group(self):
- self._setup_security_group_rule({
- 'protocol': 'icmp',
- 'remote_address_group_id': self._address_group.id,
- })
+ self._setup_security_group_rule(
+ {
+ 'protocol': 'icmp',
+ 'remote_address_group_id': self._address_group.id,
+ }
+ )
arglist = [
- '--protocol', 'icmp',
- '--remote-address-group', self._address_group.name,
+ '--protocol',
+ 'icmp',
+ '--remote-address-group',
+ self._address_group.name,
self._security_group.id,
]
verifylist = [
@@ -285,32 +346,44 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_security_group_rule.assert_called_once_with(**{
- 'direction': self._security_group_rule.direction,
- 'ethertype': self._security_group_rule.ether_type,
- 'protocol': self._security_group_rule.protocol,
- 'remote_address_group_id': self._address_group.id,
- 'security_group_id': self._security_group.id,
- })
+ self.network.create_security_group_rule.assert_called_once_with(
+ **{
+ 'direction': self._security_group_rule.direction,
+ 'ethertype': self._security_group_rule.ether_type,
+ 'protocol': self._security_group_rule.protocol,
+ 'remote_address_group_id': self._address_group.id,
+ 'security_group_id': self._security_group.id,
+ }
+ )
self.assertEqual(self.expected_columns, columns)
self.assertEqual(self.expected_data, data)
def test_create_remote_group(self):
- self._setup_security_group_rule({
- 'protocol': 'tcp',
- 'port_range_max': 22,
- 'port_range_min': 22,
- })
+ self._setup_security_group_rule(
+ {
+ 'protocol': 'tcp',
+ 'port_range_max': 22,
+ 'port_range_min': 22,
+ }
+ )
arglist = [
- '--protocol', 'tcp',
- '--dst-port', str(self._security_group_rule.port_range_min),
+ '--protocol',
+ 'tcp',
+ '--dst-port',
+ str(self._security_group_rule.port_range_min),
'--ingress',
- '--remote-group', self._security_group.name,
+ '--remote-group',
+ self._security_group.name,
self._security_group.id,
]
verifylist = [
- ('dst_port', (self._security_group_rule.port_range_min,
- self._security_group_rule.port_range_max)),
+ (
+ 'dst_port',
+ (
+ self._security_group_rule.port_range_min,
+ self._security_group_rule.port_range_max,
+ ),
+ ),
('ingress', True),
('remote_group', self._security_group.name),
('group', self._security_group.id),
@@ -319,25 +392,30 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_security_group_rule.assert_called_once_with(**{
- 'direction': self._security_group_rule.direction,
- 'ethertype': self._security_group_rule.ether_type,
- 'port_range_max': self._security_group_rule.port_range_max,
- 'port_range_min': self._security_group_rule.port_range_min,
- 'protocol': self._security_group_rule.protocol,
- 'remote_group_id': self._security_group.id,
- 'security_group_id': self._security_group.id,
- })
+ self.network.create_security_group_rule.assert_called_once_with(
+ **{
+ 'direction': self._security_group_rule.direction,
+ 'ethertype': self._security_group_rule.ether_type,
+ 'port_range_max': self._security_group_rule.port_range_max,
+ 'port_range_min': self._security_group_rule.port_range_min,
+ 'protocol': self._security_group_rule.protocol,
+ 'remote_group_id': self._security_group.id,
+ 'security_group_id': self._security_group.id,
+ }
+ )
self.assertEqual(self.expected_columns, columns)
self.assertEqual(self.expected_data, data)
def test_create_source_group(self):
- self._setup_security_group_rule({
- 'remote_group_id': self._security_group.id,
- })
+ self._setup_security_group_rule(
+ {
+ 'remote_group_id': self._security_group.id,
+ }
+ )
arglist = [
'--ingress',
- '--remote-group', self._security_group.name,
+ '--remote-group',
+ self._security_group.name,
self._security_group.id,
]
verifylist = [
@@ -349,24 +427,30 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_security_group_rule.assert_called_once_with(**{
- 'direction': self._security_group_rule.direction,
- 'ethertype': self._security_group_rule.ether_type,
- 'protocol': self._security_group_rule.protocol,
- 'remote_group_id': self._security_group_rule.remote_group_id,
- 'security_group_id': self._security_group.id,
- })
+ self.network.create_security_group_rule.assert_called_once_with(
+ **{
+ 'direction': self._security_group_rule.direction,
+ 'ethertype': self._security_group_rule.ether_type,
+ 'protocol': self._security_group_rule.protocol,
+ 'remote_group_id': self._security_group_rule.remote_group_id,
+ 'security_group_id': self._security_group.id,
+ }
+ )
self.assertEqual(self.expected_columns, columns)
self.assertEqual(self.expected_data, data)
def test_create_source_ip(self):
- self._setup_security_group_rule({
- 'protocol': 'icmp',
- 'remote_ip_prefix': '10.0.2.0/24',
- })
+ self._setup_security_group_rule(
+ {
+ 'protocol': 'icmp',
+ 'remote_ip_prefix': '10.0.2.0/24',
+ }
+ )
arglist = [
- '--protocol', self._security_group_rule.protocol,
- '--remote-ip', self._security_group_rule.remote_ip_prefix,
+ '--protocol',
+ self._security_group_rule.protocol,
+ '--remote-ip',
+ self._security_group_rule.remote_ip_prefix,
self._security_group.id,
]
verifylist = [
@@ -378,24 +462,30 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_security_group_rule.assert_called_once_with(**{
- 'direction': self._security_group_rule.direction,
- 'ethertype': self._security_group_rule.ether_type,
- 'protocol': self._security_group_rule.protocol,
- 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
- 'security_group_id': self._security_group.id,
- })
+ self.network.create_security_group_rule.assert_called_once_with(
+ **{
+ 'direction': self._security_group_rule.direction,
+ 'ethertype': self._security_group_rule.ether_type,
+ 'protocol': self._security_group_rule.protocol,
+ 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
+ 'security_group_id': self._security_group.id,
+ }
+ )
self.assertEqual(self.expected_columns, columns)
self.assertEqual(self.expected_data, data)
def test_create_remote_ip(self):
- self._setup_security_group_rule({
- 'protocol': 'icmp',
- 'remote_ip_prefix': '10.0.2.0/24',
- })
+ self._setup_security_group_rule(
+ {
+ 'protocol': 'icmp',
+ 'remote_ip_prefix': '10.0.2.0/24',
+ }
+ )
arglist = [
- '--protocol', self._security_group_rule.protocol,
- '--remote-ip', self._security_group_rule.remote_ip_prefix,
+ '--protocol',
+ self._security_group_rule.protocol,
+ '--remote-ip',
+ self._security_group_rule.remote_ip_prefix,
self._security_group.id,
]
verifylist = [
@@ -407,38 +497,52 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_security_group_rule.assert_called_once_with(**{
- 'direction': self._security_group_rule.direction,
- 'ethertype': self._security_group_rule.ether_type,
- 'protocol': self._security_group_rule.protocol,
- 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
- 'security_group_id': self._security_group.id,
- })
+ self.network.create_security_group_rule.assert_called_once_with(
+ **{
+ 'direction': self._security_group_rule.direction,
+ 'ethertype': self._security_group_rule.ether_type,
+ 'protocol': self._security_group_rule.protocol,
+ 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
+ 'security_group_id': self._security_group.id,
+ }
+ )
self.assertEqual(self.expected_columns, columns)
self.assertEqual(self.expected_data, data)
def test_create_network_options(self):
- self._setup_security_group_rule({
- 'direction': 'egress',
- 'ether_type': 'IPv6',
- 'port_range_max': 443,
- 'port_range_min': 443,
- 'protocol': '6',
- 'remote_group_id': None,
- 'remote_ip_prefix': '::/0',
- })
+ self._setup_security_group_rule(
+ {
+ 'direction': 'egress',
+ 'ether_type': 'IPv6',
+ 'port_range_max': 443,
+ 'port_range_min': 443,
+ 'protocol': '6',
+ 'remote_group_id': None,
+ 'remote_ip_prefix': '::/0',
+ }
+ )
arglist = [
- '--dst-port', str(self._security_group_rule.port_range_min),
+ '--dst-port',
+ str(self._security_group_rule.port_range_min),
'--egress',
- '--ethertype', self._security_group_rule.ether_type,
- '--project', self.project.name,
- '--project-domain', self.domain.name,
- '--protocol', self._security_group_rule.protocol,
+ '--ethertype',
+ self._security_group_rule.ether_type,
+ '--project',
+ self.project.name,
+ '--project-domain',
+ self.domain.name,
+ '--protocol',
+ self._security_group_rule.protocol,
self._security_group.id,
]
verifylist = [
- ('dst_port', (self._security_group_rule.port_range_min,
- self._security_group_rule.port_range_max)),
+ (
+ 'dst_port',
+ (
+ self._security_group_rule.port_range_min,
+ self._security_group_rule.port_range_max,
+ ),
+ ),
('egress', True),
('ethertype', self._security_group_rule.ether_type),
('project', self.project.name),
@@ -450,23 +554,27 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_security_group_rule.assert_called_once_with(**{
- 'direction': self._security_group_rule.direction,
- 'ethertype': self._security_group_rule.ether_type,
- 'port_range_max': self._security_group_rule.port_range_max,
- 'port_range_min': self._security_group_rule.port_range_min,
- 'protocol': self._security_group_rule.protocol,
- 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
- 'security_group_id': self._security_group.id,
- 'project_id': self.project.id,
- })
+ self.network.create_security_group_rule.assert_called_once_with(
+ **{
+ 'direction': self._security_group_rule.direction,
+ 'ethertype': self._security_group_rule.ether_type,
+ 'port_range_max': self._security_group_rule.port_range_max,
+ 'port_range_min': self._security_group_rule.port_range_min,
+ 'protocol': self._security_group_rule.protocol,
+ 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
+ 'security_group_id': self._security_group.id,
+ 'project_id': self.project.id,
+ }
+ )
self.assertEqual(self.expected_columns, columns)
self.assertEqual(self.expected_data, data)
def test_create_tcp_with_icmp_type(self):
arglist = [
- '--protocol', 'tcp',
- '--icmp-type', '15',
+ '--protocol',
+ 'tcp',
+ '--icmp-type',
+ '15',
self._security_group.id,
]
verifylist = [
@@ -475,13 +583,16 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
('group', self._security_group.id),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- self.assertRaises(exceptions.CommandError, self.cmd.take_action,
- parsed_args)
+ self.assertRaises(
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
def test_create_icmp_code(self):
arglist = [
- '--protocol', '1',
- '--icmp-code', '1',
+ '--protocol',
+ '1',
+ '--icmp-code',
+ '1',
self._security_group.id,
]
verifylist = [
@@ -490,20 +601,26 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
('group', self._security_group.id),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- self.assertRaises(exceptions.CommandError, self.cmd.take_action,
- parsed_args)
+ self.assertRaises(
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
def test_create_icmp_code_zero(self):
- self._setup_security_group_rule({
- 'port_range_min': 15,
- 'port_range_max': 0,
- 'protocol': 'icmp',
- 'remote_ip_prefix': '0.0.0.0/0',
- })
+ self._setup_security_group_rule(
+ {
+ 'port_range_min': 15,
+ 'port_range_max': 0,
+ 'protocol': 'icmp',
+ 'remote_ip_prefix': '0.0.0.0/0',
+ }
+ )
arglist = [
- '--protocol', self._security_group_rule.protocol,
- '--icmp-type', str(self._security_group_rule.port_range_min),
- '--icmp-code', str(self._security_group_rule.port_range_max),
+ '--protocol',
+ self._security_group_rule.protocol,
+ '--icmp-type',
+ str(self._security_group_rule.port_range_min),
+ '--icmp-code',
+ str(self._security_group_rule.port_range_max),
self._security_group.id,
]
verifylist = [
@@ -518,16 +635,21 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
self.assertEqual(self.expected_data, data)
def test_create_icmp_code_greater_than_zero(self):
- self._setup_security_group_rule({
- 'port_range_min': 15,
- 'port_range_max': 18,
- 'protocol': 'icmp',
- 'remote_ip_prefix': '0.0.0.0/0',
- })
+ self._setup_security_group_rule(
+ {
+ 'port_range_min': 15,
+ 'port_range_max': 18,
+ 'protocol': 'icmp',
+ 'remote_ip_prefix': '0.0.0.0/0',
+ }
+ )
arglist = [
- '--protocol', self._security_group_rule.protocol,
- '--icmp-type', str(self._security_group_rule.port_range_min),
- '--icmp-code', str(self._security_group_rule.port_range_max),
+ '--protocol',
+ self._security_group_rule.protocol,
+ '--icmp-type',
+ str(self._security_group_rule.port_range_min),
+ '--icmp-code',
+ str(self._security_group_rule.port_range_max),
self._security_group.id,
]
verifylist = [
@@ -542,16 +664,21 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
self.assertEqual(self.expected_data, data)
def test_create_icmp_code_negative_value(self):
- self._setup_security_group_rule({
- 'port_range_min': 15,
- 'port_range_max': None,
- 'protocol': 'icmp',
- 'remote_ip_prefix': '0.0.0.0/0',
- })
+ self._setup_security_group_rule(
+ {
+ 'port_range_min': 15,
+ 'port_range_max': None,
+ 'protocol': 'icmp',
+ 'remote_ip_prefix': '0.0.0.0/0',
+ }
+ )
arglist = [
- '--protocol', self._security_group_rule.protocol,
- '--icmp-type', str(self._security_group_rule.port_range_min),
- '--icmp-code', '-2',
+ '--protocol',
+ self._security_group_rule.protocol,
+ '--icmp-type',
+ str(self._security_group_rule.port_range_min),
+ '--icmp-code',
+ '-2',
self._security_group.id,
]
verifylist = [
@@ -566,14 +693,18 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
self.assertEqual(self.expected_data, data)
def test_create_icmp_type(self):
- self._setup_security_group_rule({
- 'port_range_min': 15,
- 'protocol': 'icmp',
- 'remote_ip_prefix': '0.0.0.0/0',
- })
+ self._setup_security_group_rule(
+ {
+ 'port_range_min': 15,
+ 'protocol': 'icmp',
+ 'remote_ip_prefix': '0.0.0.0/0',
+ }
+ )
arglist = [
- '--icmp-type', str(self._security_group_rule.port_range_min),
- '--protocol', self._security_group_rule.protocol,
+ '--icmp-type',
+ str(self._security_group_rule.port_range_min),
+ '--protocol',
+ self._security_group_rule.protocol,
self._security_group.id,
]
verifylist = [
@@ -587,26 +718,32 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_security_group_rule.assert_called_once_with(**{
- 'direction': self._security_group_rule.direction,
- 'ethertype': self._security_group_rule.ether_type,
- 'port_range_min': self._security_group_rule.port_range_min,
- 'protocol': self._security_group_rule.protocol,
- 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
- 'security_group_id': self._security_group.id,
- })
+ self.network.create_security_group_rule.assert_called_once_with(
+ **{
+ 'direction': self._security_group_rule.direction,
+ 'ethertype': self._security_group_rule.ether_type,
+ 'port_range_min': self._security_group_rule.port_range_min,
+ 'protocol': self._security_group_rule.protocol,
+ 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
+ 'security_group_id': self._security_group.id,
+ }
+ )
self.assertEqual(self.expected_columns, columns)
self.assertEqual(self.expected_data, data)
def test_create_icmp_type_zero(self):
- self._setup_security_group_rule({
- 'port_range_min': 0,
- 'protocol': 'icmp',
- 'remote_ip_prefix': '0.0.0.0/0',
- })
+ self._setup_security_group_rule(
+ {
+ 'port_range_min': 0,
+ 'protocol': 'icmp',
+ 'remote_ip_prefix': '0.0.0.0/0',
+ }
+ )
arglist = [
- '--icmp-type', str(self._security_group_rule.port_range_min),
- '--protocol', self._security_group_rule.protocol,
+ '--icmp-type',
+ str(self._security_group_rule.port_range_min),
+ '--protocol',
+ self._security_group_rule.protocol,
self._security_group.id,
]
verifylist = [
@@ -620,26 +757,32 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_security_group_rule.assert_called_once_with(**{
- 'direction': self._security_group_rule.direction,
- 'ethertype': self._security_group_rule.ether_type,
- 'port_range_min': self._security_group_rule.port_range_min,
- 'protocol': self._security_group_rule.protocol,
- 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
- 'security_group_id': self._security_group.id,
- })
+ self.network.create_security_group_rule.assert_called_once_with(
+ **{
+ 'direction': self._security_group_rule.direction,
+ 'ethertype': self._security_group_rule.ether_type,
+ 'port_range_min': self._security_group_rule.port_range_min,
+ 'protocol': self._security_group_rule.protocol,
+ 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
+ 'security_group_id': self._security_group.id,
+ }
+ )
self.assertEqual(self.expected_columns, columns)
self.assertEqual(self.expected_data, data)
def test_create_icmp_type_greater_than_zero(self):
- self._setup_security_group_rule({
- 'port_range_min': 13, # timestamp
- 'protocol': 'icmp',
- 'remote_ip_prefix': '0.0.0.0/0',
- })
+ self._setup_security_group_rule(
+ {
+ 'port_range_min': 13, # timestamp
+ 'protocol': 'icmp',
+ 'remote_ip_prefix': '0.0.0.0/0',
+ }
+ )
arglist = [
- '--icmp-type', str(self._security_group_rule.port_range_min),
- '--protocol', self._security_group_rule.protocol,
+ '--icmp-type',
+ str(self._security_group_rule.port_range_min),
+ '--protocol',
+ self._security_group_rule.protocol,
self._security_group.id,
]
verifylist = [
@@ -653,26 +796,32 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_security_group_rule.assert_called_once_with(**{
- 'direction': self._security_group_rule.direction,
- 'ethertype': self._security_group_rule.ether_type,
- 'port_range_min': self._security_group_rule.port_range_min,
- 'protocol': self._security_group_rule.protocol,
- 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
- 'security_group_id': self._security_group.id,
- })
+ self.network.create_security_group_rule.assert_called_once_with(
+ **{
+ 'direction': self._security_group_rule.direction,
+ 'ethertype': self._security_group_rule.ether_type,
+ 'port_range_min': self._security_group_rule.port_range_min,
+ 'protocol': self._security_group_rule.protocol,
+ 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
+ 'security_group_id': self._security_group.id,
+ }
+ )
self.assertEqual(self.expected_columns, columns)
self.assertEqual(self.expected_data, data)
def test_create_icmp_type_negative_value(self):
- self._setup_security_group_rule({
- 'port_range_min': None, # timestamp
- 'protocol': 'icmp',
- 'remote_ip_prefix': '0.0.0.0/0',
- })
+ self._setup_security_group_rule(
+ {
+ 'port_range_min': None, # timestamp
+ 'protocol': 'icmp',
+ 'remote_ip_prefix': '0.0.0.0/0',
+ }
+ )
arglist = [
- '--icmp-type', '-13',
- '--protocol', self._security_group_rule.protocol,
+ '--icmp-type',
+ '-13',
+ '--protocol',
+ self._security_group_rule.protocol,
self._security_group.id,
]
verifylist = [
@@ -686,28 +835,35 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_security_group_rule.assert_called_once_with(**{
- 'direction': self._security_group_rule.direction,
- 'ethertype': self._security_group_rule.ether_type,
- 'protocol': self._security_group_rule.protocol,
- 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
- 'security_group_id': self._security_group.id,
- })
+ self.network.create_security_group_rule.assert_called_once_with(
+ **{
+ 'direction': self._security_group_rule.direction,
+ 'ethertype': self._security_group_rule.ether_type,
+ 'protocol': self._security_group_rule.protocol,
+ 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
+ 'security_group_id': self._security_group.id,
+ }
+ )
self.assertEqual(self.expected_columns, columns)
self.assertEqual(self.expected_data, data)
def test_create_ipv6_icmp_type_code(self):
- self._setup_security_group_rule({
- 'ether_type': 'IPv6',
- 'port_range_min': 139,
- 'port_range_max': 2,
- 'protocol': 'ipv6-icmp',
- 'remote_ip_prefix': '::/0',
- })
+ self._setup_security_group_rule(
+ {
+ 'ether_type': 'IPv6',
+ 'port_range_min': 139,
+ 'port_range_max': 2,
+ 'protocol': 'ipv6-icmp',
+ 'remote_ip_prefix': '::/0',
+ }
+ )
arglist = [
- '--icmp-type', str(self._security_group_rule.port_range_min),
- '--icmp-code', str(self._security_group_rule.port_range_max),
- '--protocol', self._security_group_rule.protocol,
+ '--icmp-type',
+ str(self._security_group_rule.port_range_min),
+ '--icmp-code',
+ str(self._security_group_rule.port_range_max),
+ '--protocol',
+ self._security_group_rule.protocol,
self._security_group.id,
]
verifylist = [
@@ -721,28 +877,34 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_security_group_rule.assert_called_once_with(**{
- 'direction': self._security_group_rule.direction,
- 'ethertype': self._security_group_rule.ether_type,
- 'port_range_min': self._security_group_rule.port_range_min,
- 'port_range_max': self._security_group_rule.port_range_max,
- 'protocol': self._security_group_rule.protocol,
- 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
- 'security_group_id': self._security_group.id,
- })
+ self.network.create_security_group_rule.assert_called_once_with(
+ **{
+ 'direction': self._security_group_rule.direction,
+ 'ethertype': self._security_group_rule.ether_type,
+ 'port_range_min': self._security_group_rule.port_range_min,
+ 'port_range_max': self._security_group_rule.port_range_max,
+ 'protocol': self._security_group_rule.protocol,
+ 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
+ 'security_group_id': self._security_group.id,
+ }
+ )
self.assertEqual(self.expected_columns, columns)
self.assertEqual(self.expected_data, data)
def test_create_icmpv6_type(self):
- self._setup_security_group_rule({
- 'ether_type': 'IPv6',
- 'port_range_min': 139,
- 'protocol': 'icmpv6',
- 'remote_ip_prefix': '::/0',
- })
+ self._setup_security_group_rule(
+ {
+ 'ether_type': 'IPv6',
+ 'port_range_min': 139,
+ 'protocol': 'icmpv6',
+ 'remote_ip_prefix': '::/0',
+ }
+ )
arglist = [
- '--icmp-type', str(self._security_group_rule.port_range_min),
- '--protocol', self._security_group_rule.protocol,
+ '--icmp-type',
+ str(self._security_group_rule.port_range_min),
+ '--protocol',
+ self._security_group_rule.protocol,
self._security_group.id,
]
verifylist = [
@@ -756,23 +918,28 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_security_group_rule.assert_called_once_with(**{
- 'direction': self._security_group_rule.direction,
- 'ethertype': self._security_group_rule.ether_type,
- 'port_range_min': self._security_group_rule.port_range_min,
- 'protocol': self._security_group_rule.protocol,
- 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
- 'security_group_id': self._security_group.id,
- })
+ self.network.create_security_group_rule.assert_called_once_with(
+ **{
+ 'direction': self._security_group_rule.direction,
+ 'ethertype': self._security_group_rule.ether_type,
+ 'port_range_min': self._security_group_rule.port_range_min,
+ 'protocol': self._security_group_rule.protocol,
+ 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
+ 'security_group_id': self._security_group.id,
+ }
+ )
self.assertEqual(self.expected_columns, columns)
self.assertEqual(self.expected_data, data)
def test_create_with_description(self):
- self._setup_security_group_rule({
- 'description': 'Setting SGR',
- })
+ self._setup_security_group_rule(
+ {
+ 'description': 'Setting SGR',
+ }
+ )
arglist = [
- '--description', self._security_group_rule.description,
+ '--description',
+ self._security_group_rule.description,
self._security_group.id,
]
verifylist = [
@@ -781,26 +948,29 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_security_group_rule.assert_called_once_with(**{
- 'description': self._security_group_rule.description,
- 'direction': self._security_group_rule.direction,
- 'ethertype': self._security_group_rule.ether_type,
- 'protocol': self._security_group_rule.protocol,
- 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
- 'security_group_id': self._security_group.id,
- })
+ self.network.create_security_group_rule.assert_called_once_with(
+ **{
+ 'description': self._security_group_rule.description,
+ 'direction': self._security_group_rule.direction,
+ 'ethertype': self._security_group_rule.ether_type,
+ 'protocol': self._security_group_rule.protocol,
+ 'remote_ip_prefix': self._security_group_rule.remote_ip_prefix,
+ 'security_group_id': self._security_group.id,
+ }
+ )
self.assertEqual(self.expected_columns, columns)
self.assertEqual(self.expected_data, data)
class TestDeleteSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
-
# The security group rules to be deleted.
- _security_group_rules = \
+ _security_group_rules = (
network_fakes.FakeSecurityGroupRule.create_security_group_rules(
- count=2)
+ count=2
+ )
+ )
def setUp(self):
super(TestDeleteSecurityGroupRuleNetwork, self).setUp()
@@ -809,12 +979,14 @@ class TestDeleteSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
self.network.find_security_group_rule = (
network_fakes.FakeSecurityGroupRule.get_security_group_rules(
- self._security_group_rules)
+ self._security_group_rules
+ )
)
# Get the command object to test
self.cmd = security_group_rule.DeleteSecurityGroupRule(
- self.app, self.namespace)
+ self.app, self.namespace
+ )
def test_security_group_rule_delete(self):
arglist = [
@@ -828,7 +1000,8 @@ class TestDeleteSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
result = self.cmd.take_action(parsed_args)
self.network.delete_security_group_rule.assert_called_once_with(
- self._security_group_rules[0])
+ self._security_group_rules[0]
+ )
self.assertIsNone(result)
def test_multi_security_group_rules_delete(self):
@@ -856,15 +1029,16 @@ class TestDeleteSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
'unexist_rule',
]
verifylist = [
- ('rule',
- [self._security_group_rules[0].id, 'unexist_rule']),
+ ('rule', [self._security_group_rules[0].id, 'unexist_rule']),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
find_mock_result = [
- self._security_group_rules[0], exceptions.CommandError]
- self.network.find_security_group_rule = (
- mock.Mock(side_effect=find_mock_result)
+ self._security_group_rules[0],
+ exceptions.CommandError,
+ ]
+ self.network.find_security_group_rule = mock.Mock(
+ side_effect=find_mock_result
)
try:
@@ -874,38 +1048,50 @@ class TestDeleteSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
self.assertEqual('1 of 2 rules failed to delete.', str(e))
self.network.find_security_group_rule.assert_any_call(
- self._security_group_rules[0].id, ignore_missing=False)
+ self._security_group_rules[0].id, ignore_missing=False
+ )
self.network.find_security_group_rule.assert_any_call(
- 'unexist_rule', ignore_missing=False)
+ 'unexist_rule', ignore_missing=False
+ )
self.network.delete_security_group_rule.assert_called_once_with(
self._security_group_rules[0]
)
class TestListSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
-
# The security group to hold the rules.
- _security_group = \
+ _security_group = (
network_fakes.FakeSecurityGroup.create_one_security_group()
+ )
# The security group rule to be listed.
- _security_group_rule_tcp = \
- network_fakes.FakeSecurityGroupRule.create_one_security_group_rule({
- 'protocol': 'tcp',
- 'port_range_max': 80,
- 'port_range_min': 80,
- 'security_group_id': _security_group.id,
- })
- _security_group_rule_icmp = \
- network_fakes.FakeSecurityGroupRule.create_one_security_group_rule({
- 'protocol': 'icmp',
- 'remote_ip_prefix': '10.0.2.0/24',
- 'security_group_id': _security_group.id,
- })
- _security_group.security_group_rules = [_security_group_rule_tcp._info,
- _security_group_rule_icmp._info]
- _security_group_rules = [_security_group_rule_tcp,
- _security_group_rule_icmp]
+ _security_group_rule_tcp = (
+ network_fakes.FakeSecurityGroupRule.create_one_security_group_rule(
+ {
+ 'protocol': 'tcp',
+ 'port_range_max': 80,
+ 'port_range_min': 80,
+ 'security_group_id': _security_group.id,
+ }
+ )
+ )
+ _security_group_rule_icmp = (
+ network_fakes.FakeSecurityGroupRule.create_one_security_group_rule(
+ {
+ 'protocol': 'icmp',
+ 'remote_ip_prefix': '10.0.2.0/24',
+ 'security_group_id': _security_group.id,
+ }
+ )
+ )
+ _security_group.security_group_rules = [
+ _security_group_rule_tcp._info,
+ _security_group_rule_icmp._info,
+ ]
+ _security_group_rules = [
+ _security_group_rule_tcp,
+ _security_group_rule_icmp,
+ ]
expected_columns_with_group = (
'ID',
@@ -932,41 +1118,50 @@ class TestListSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
expected_data_with_group = []
expected_data_no_group = []
for _security_group_rule in _security_group_rules:
- expected_data_with_group.append((
- _security_group_rule.id,
- _security_group_rule.protocol,
- _security_group_rule.ether_type,
- _security_group_rule.remote_ip_prefix,
- security_group_rule._format_network_port_range(
- _security_group_rule),
- _security_group_rule.direction,
- _security_group_rule.remote_group_id,
- _security_group_rule.remote_address_group_id,
- ))
- expected_data_no_group.append((
- _security_group_rule.id,
- _security_group_rule.protocol,
- _security_group_rule.ether_type,
- _security_group_rule.remote_ip_prefix,
- security_group_rule._format_network_port_range(
- _security_group_rule),
- _security_group_rule.direction,
- _security_group_rule.remote_group_id,
- _security_group_rule.remote_address_group_id,
- _security_group_rule.security_group_id,
- ))
+ expected_data_with_group.append(
+ (
+ _security_group_rule.id,
+ _security_group_rule.protocol,
+ _security_group_rule.ether_type,
+ _security_group_rule.remote_ip_prefix,
+ security_group_rule._format_network_port_range(
+ _security_group_rule
+ ),
+ _security_group_rule.direction,
+ _security_group_rule.remote_group_id,
+ _security_group_rule.remote_address_group_id,
+ )
+ )
+ expected_data_no_group.append(
+ (
+ _security_group_rule.id,
+ _security_group_rule.protocol,
+ _security_group_rule.ether_type,
+ _security_group_rule.remote_ip_prefix,
+ security_group_rule._format_network_port_range(
+ _security_group_rule
+ ),
+ _security_group_rule.direction,
+ _security_group_rule.remote_group_id,
+ _security_group_rule.remote_address_group_id,
+ _security_group_rule.security_group_id,
+ )
+ )
def setUp(self):
super(TestListSecurityGroupRuleNetwork, self).setUp()
self.network.find_security_group = mock.Mock(
- return_value=self._security_group)
+ return_value=self._security_group
+ )
self.network.security_group_rules = mock.Mock(
- return_value=self._security_group_rules)
+ return_value=self._security_group_rules
+ )
# Get the command object to test
self.cmd = security_group_rule.ListSecurityGroupRule(
- self.app, self.namespace)
+ self.app, self.namespace
+ )
def test_list_default(self):
self._security_group_rule_tcp.port_range_min = 80
@@ -990,9 +1185,11 @@ class TestListSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.security_group_rules.assert_called_once_with(**{
- 'security_group_id': self._security_group.id,
- })
+ self.network.security_group_rules.assert_called_once_with(
+ **{
+ 'security_group_id': self._security_group.id,
+ }
+ )
self.assertEqual(self.expected_columns_with_group, columns)
self.assertEqual(self.expected_data_with_group, list(data))
@@ -1015,7 +1212,8 @@ class TestListSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
def test_list_with_protocol(self):
self._security_group_rule_tcp.port_range_min = 80
arglist = [
- '--protocol', 'tcp',
+ '--protocol',
+ 'tcp',
]
verifylist = [
('protocol', 'tcp'),
@@ -1024,9 +1222,11 @@ class TestListSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.security_group_rules.assert_called_once_with(**{
- 'protocol': 'tcp',
- })
+ self.network.security_group_rules.assert_called_once_with(
+ **{
+ 'protocol': 'tcp',
+ }
+ )
self.assertEqual(self.expected_columns_no_group, columns)
self.assertEqual(self.expected_data_no_group, list(data))
@@ -1042,9 +1242,11 @@ class TestListSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.security_group_rules.assert_called_once_with(**{
- 'direction': 'ingress',
- })
+ self.network.security_group_rules.assert_called_once_with(
+ **{
+ 'direction': 'ingress',
+ }
+ )
self.assertEqual(self.expected_columns_no_group, columns)
self.assertEqual(self.expected_data_no_group, list(data))
@@ -1060,18 +1262,20 @@ class TestListSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
columns, data = self.cmd.take_action(parsed_args)
- self.network.security_group_rules.assert_called_once_with(**{
- 'direction': 'egress',
- })
+ self.network.security_group_rules.assert_called_once_with(
+ **{
+ 'direction': 'egress',
+ }
+ )
self.assertEqual(self.expected_columns_no_group, columns)
self.assertEqual(self.expected_data_no_group, list(data))
class TestShowSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
-
# The security group rule to be shown.
- _security_group_rule = \
+ _security_group_rule = (
network_fakes.FakeSecurityGroupRule.create_one_security_group_rule()
+ )
columns = (
'description',
@@ -1107,15 +1311,18 @@ class TestShowSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
super(TestShowSecurityGroupRuleNetwork, self).setUp()
self.network.find_security_group_rule = mock.Mock(
- return_value=self._security_group_rule)
+ return_value=self._security_group_rule
+ )
# Get the command object to test
self.cmd = security_group_rule.ShowSecurityGroupRule(
- self.app, self.namespace)
+ self.app, self.namespace
+ )
def test_show_no_options(self):
- self.assertRaises(tests_utils.ParserException,
- self.check_parser, self.cmd, [], [])
+ self.assertRaises(
+ tests_utils.ParserException, self.check_parser, self.cmd, [], []
+ )
def test_show_all_options(self):
arglist = [
@@ -1129,6 +1336,7 @@ class TestShowSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
columns, data = self.cmd.take_action(parsed_args)
self.network.find_security_group_rule.assert_called_once_with(
- self._security_group_rule.id, ignore_missing=False)
+ self._security_group_rule.id, ignore_missing=False
+ )
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, data)
diff --git a/openstackclient/tests/unit/network/v2/test_subnet.py b/openstackclient/tests/unit/network/v2/test_subnet.py
index 7aaa583d..45677f81 100644
--- a/openstackclient/tests/unit/network/v2/test_subnet.py
+++ b/openstackclient/tests/unit/network/v2/test_subnet.py
@@ -24,7 +24,6 @@ from openstackclient.tests.unit import utils as tests_utils
class TestSubnet(network_fakes.TestNetworkV2):
-
def setUp(self):
super(TestSubnet, self).setUp()
@@ -37,7 +36,6 @@ class TestSubnet(network_fakes.TestNetworkV2):
class TestCreateSubnet(TestSubnet):
-
def _init_subnet_variables(self):
self.project = identity_fakes_v3.FakeProject.create_one_project()
self.domain = identity_fakes_v3.FakeDomain.create_one_domain()
@@ -49,22 +47,24 @@ class TestCreateSubnet(TestSubnet):
)
# Subnet pool to be used to create a subnet from a pool
- self._subnet_pool = \
+ self._subnet_pool = (
network_fakes.FakeSubnetPool.create_one_subnet_pool()
+ )
# An IPv4 subnet to be created using a specific subnet pool
self._subnet_from_pool = network_fakes.FakeSubnet.create_one_subnet(
attrs={
'project_id': self.project.id,
'subnetpool_id': self._subnet_pool.id,
- 'dns_nameservers': ['8.8.8.8',
- '8.8.4.4'],
- 'host_routes': [{'destination': '10.20.20.0/24',
- 'nexthop': '10.20.20.1'},
- {'destination': '10.30.30.0/24',
- 'nexthop': '10.30.30.1'}],
- 'service_types': ['network:router_gateway',
- 'network:floatingip_agent_gateway'],
+ 'dns_nameservers': ['8.8.8.8', '8.8.4.4'],
+ 'host_routes': [
+ {'destination': '10.20.20.0/24', 'nexthop': '10.20.20.1'},
+ {'destination': '10.30.30.0/24', 'nexthop': '10.30.30.1'},
+ ],
+ 'service_types': [
+ 'network:router_gateway',
+ 'network:floatingip_agent_gateway',
+ ],
}
)
@@ -74,23 +74,39 @@ class TestCreateSubnet(TestSubnet):
'project_id': self.project.id,
'cidr': 'fe80:0:0:a00a::/64',
'enable_dhcp': True,
- 'dns_nameservers': ['fe80:27ff:a00a:f00f::ffff',
- 'fe80:37ff:a00a:f00f::ffff'],
- 'allocation_pools': [{'start': 'fe80::a00a:0:c0de:0:100',
- 'end': 'fe80::a00a:0:c0de:0:f000'},
- {'start': 'fe80::a00a:0:c0de:1:100',
- 'end': 'fe80::a00a:0:c0de:1:f000'}],
- 'host_routes': [{'destination': 'fe80:27ff:a00a:f00f::/64',
- 'nexthop': 'fe80:27ff:a00a:f00f::1'},
- {'destination': 'fe80:37ff:a00a:f00f::/64',
- 'nexthop': 'fe80:37ff:a00a:f00f::1'}],
+ 'dns_nameservers': [
+ 'fe80:27ff:a00a:f00f::ffff',
+ 'fe80:37ff:a00a:f00f::ffff',
+ ],
+ 'allocation_pools': [
+ {
+ 'start': 'fe80::a00a:0:c0de:0:100',
+ 'end': 'fe80::a00a:0:c0de:0:f000',
+ },
+ {
+ 'start': 'fe80::a00a:0:c0de:1:100',
+ 'end': 'fe80::a00a:0:c0de:1:f000',
+ },
+ ],
+ 'host_routes': [
+ {
+ 'destination': 'fe80:27ff:a00a:f00f::/64',
+ 'nexthop': 'fe80:27ff:a00a:f00f::1',
+ },
+ {
+ 'destination': 'fe80:37ff:a00a:f00f::/64',
+ 'nexthop': 'fe80:37ff:a00a:f00f::1',
+ },
+ ],
'ip_version': 6,
'gateway_ip': 'fe80::a00a:0:c0de:0:1',
'ipv6_address_mode': 'slaac',
'ipv6_ra_mode': 'slaac',
'subnetpool_id': 'None',
- 'service_types': ['network:router_gateway',
- 'network:floatingip_agent_gateway'],
+ 'service_types': [
+ 'network:router_gateway',
+ 'network:floatingip_agent_gateway',
+ ],
}
)
@@ -102,12 +118,11 @@ class TestCreateSubnet(TestSubnet):
)
# The network segment to be returned from find_segment
- self._network_segment = \
- network_fakes.create_one_network_segment(
- attrs={
- 'network_id': self._subnet.network_id,
- }
- )
+ self._network_segment = network_fakes.create_one_network_segment(
+ attrs={
+ 'network_id': self._subnet.network_id,
+ }
+ )
self.columns = (
'allocation_pools',
@@ -153,7 +168,8 @@ class TestCreateSubnet(TestSubnet):
self.data_subnet_pool = (
subnet_v2.AllocationPoolsColumn(
- self._subnet_from_pool.allocation_pools),
+ self._subnet_from_pool.allocation_pools
+ ),
self._subnet_from_pool.cidr,
self._subnet_from_pool.description,
format_columns.ListColumn(self._subnet_from_pool.dns_nameservers),
@@ -175,7 +191,8 @@ class TestCreateSubnet(TestSubnet):
self.data_ipv6 = (
subnet_v2.AllocationPoolsColumn(
- self._subnet_ipv6.allocation_pools),
+ self._subnet_ipv6.allocation_pools
+ ),
self._subnet_ipv6.cidr,
self._subnet_ipv6.description,
format_columns.ListColumn(self._subnet_ipv6.dns_nameservers),
@@ -222,8 +239,13 @@ class TestCreateSubnet(TestSubnet):
# Testing that a call without the required argument will fail and
# throw a "ParserExecption"
- self.assertRaises(tests_utils.ParserException,
- self.check_parser, self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
self.assertFalse(self.network.create_subnet.called)
self.assertFalse(self.network.set_tags.called)
@@ -232,8 +254,10 @@ class TestCreateSubnet(TestSubnet):
self._network.id = self._subnet.network_id
arglist = [
- "--subnet-range", self._subnet.cidr,
- "--network", self._subnet.network_id,
+ "--subnet-range",
+ self._subnet.cidr,
+ "--network",
+ self._subnet.network_id,
self._subnet.name,
]
verifylist = [
@@ -247,12 +271,14 @@ class TestCreateSubnet(TestSubnet):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_subnet.assert_called_once_with(**{
- 'cidr': self._subnet.cidr,
- 'ip_version': self._subnet.ip_version,
- 'name': self._subnet.name,
- 'network_id': self._subnet.network_id,
- })
+ self.network.create_subnet.assert_called_once_with(
+ **{
+ 'cidr': self._subnet.cidr,
+ 'ip_version': self._subnet.ip_version,
+ 'name': self._subnet.name,
+ 'network_id': self._subnet.network_id,
+ }
+ )
self.assertFalse(self.network.set_tags.called)
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, data)
@@ -265,11 +291,16 @@ class TestCreateSubnet(TestSubnet):
arglist = [
self._subnet_from_pool.name,
- "--subnet-pool", self._subnet_from_pool.subnetpool_id,
- "--prefix-length", '24',
- "--network", self._subnet_from_pool.network_id,
- "--ip-version", str(self._subnet_from_pool.ip_version),
- "--gateway", self._subnet_from_pool.gateway_ip,
+ "--subnet-pool",
+ self._subnet_from_pool.subnetpool_id,
+ "--prefix-length",
+ '24',
+ "--network",
+ self._subnet_from_pool.network_id,
+ "--ip-version",
+ str(self._subnet_from_pool.ip_version),
+ "--gateway",
+ self._subnet_from_pool.gateway_ip,
"--dhcp",
]
@@ -279,8 +310,12 @@ class TestCreateSubnet(TestSubnet):
for host_route in self._subnet_from_pool.host_routes:
arglist.append('--host-route')
- value = 'gateway=' + host_route.get('nexthop', '') + \
- ',destination=' + host_route.get('destination', '')
+ value = (
+ 'gateway='
+ + host_route.get('nexthop', '')
+ + ',destination='
+ + host_route.get('destination', '')
+ )
arglist.append(value)
for service_type in self._subnet_from_pool.service_types:
@@ -295,8 +330,12 @@ class TestCreateSubnet(TestSubnet):
('gateway', self._subnet_from_pool.gateway_ip),
('dns_nameservers', self._subnet_from_pool.dns_nameservers),
('dhcp', self._subnet_from_pool.enable_dhcp),
- ('host_routes', subnet_v2.convert_entries_to_gateway(
- self._subnet_from_pool.host_routes)),
+ (
+ 'host_routes',
+ subnet_v2.convert_entries_to_gateway(
+ self._subnet_from_pool.host_routes
+ ),
+ ),
('subnet_pool', self._subnet_from_pool.subnetpool_id),
('service_types', self._subnet_from_pool.service_types),
]
@@ -304,18 +343,20 @@ class TestCreateSubnet(TestSubnet):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_subnet.assert_called_once_with(**{
- 'dns_nameservers': self._subnet_from_pool.dns_nameservers,
- 'enable_dhcp': self._subnet_from_pool.enable_dhcp,
- 'gateway_ip': self._subnet_from_pool.gateway_ip,
- 'host_routes': self._subnet_from_pool.host_routes,
- 'ip_version': self._subnet_from_pool.ip_version,
- 'name': self._subnet_from_pool.name,
- 'network_id': self._subnet_from_pool.network_id,
- 'prefixlen': '24',
- 'subnetpool_id': self._subnet_from_pool.subnetpool_id,
- 'service_types': self._subnet_from_pool.service_types,
- })
+ self.network.create_subnet.assert_called_once_with(
+ **{
+ 'dns_nameservers': self._subnet_from_pool.dns_nameservers,
+ 'enable_dhcp': self._subnet_from_pool.enable_dhcp,
+ 'gateway_ip': self._subnet_from_pool.gateway_ip,
+ 'host_routes': self._subnet_from_pool.host_routes,
+ 'ip_version': self._subnet_from_pool.ip_version,
+ 'name': self._subnet_from_pool.name,
+ 'network_id': self._subnet_from_pool.network_id,
+ 'prefixlen': '24',
+ 'subnetpool_id': self._subnet_from_pool.subnetpool_id,
+ 'service_types': self._subnet_from_pool.service_types,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data_subnet_pool, data)
@@ -326,12 +367,18 @@ class TestCreateSubnet(TestSubnet):
arglist = [
self._subnet_ipv6.name,
- "--subnet-range", self._subnet_ipv6.cidr,
- "--network", self._subnet_ipv6.network_id,
- "--ip-version", str(self._subnet_ipv6.ip_version),
- "--ipv6-ra-mode", self._subnet_ipv6.ipv6_ra_mode,
- "--ipv6-address-mode", self._subnet_ipv6.ipv6_address_mode,
- "--gateway", self._subnet_ipv6.gateway_ip,
+ "--subnet-range",
+ self._subnet_ipv6.cidr,
+ "--network",
+ self._subnet_ipv6.network_id,
+ "--ip-version",
+ str(self._subnet_ipv6.ip_version),
+ "--ipv6-ra-mode",
+ self._subnet_ipv6.ipv6_ra_mode,
+ "--ipv6-address-mode",
+ self._subnet_ipv6.ipv6_address_mode,
+ "--gateway",
+ self._subnet_ipv6.gateway_ip,
"--dhcp",
]
@@ -341,14 +388,22 @@ class TestCreateSubnet(TestSubnet):
for host_route in self._subnet_ipv6.host_routes:
arglist.append('--host-route')
- value = 'gateway=' + host_route.get('nexthop', '') + \
- ',destination=' + host_route.get('destination', '')
+ value = (
+ 'gateway='
+ + host_route.get('nexthop', '')
+ + ',destination='
+ + host_route.get('destination', '')
+ )
arglist.append(value)
for pool in self._subnet_ipv6.allocation_pools:
arglist.append('--allocation-pool')
- value = 'start=' + pool.get('start', '') + \
- ',end=' + pool.get('end', '')
+ value = (
+ 'start='
+ + pool.get('start', '')
+ + ',end='
+ + pool.get('end', '')
+ )
arglist.append(value)
for service_type in self._subnet_ipv6.service_types:
@@ -365,8 +420,12 @@ class TestCreateSubnet(TestSubnet):
('gateway', self._subnet_ipv6.gateway_ip),
('dns_nameservers', self._subnet_ipv6.dns_nameservers),
('dhcp', self._subnet_ipv6.enable_dhcp),
- ('host_routes', subnet_v2.convert_entries_to_gateway(
- self._subnet_ipv6.host_routes)),
+ (
+ 'host_routes',
+ subnet_v2.convert_entries_to_gateway(
+ self._subnet_ipv6.host_routes
+ ),
+ ),
('allocation_pools', self._subnet_ipv6.allocation_pools),
('service_types', self._subnet_ipv6.service_types),
]
@@ -374,20 +433,22 @@ class TestCreateSubnet(TestSubnet):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_subnet.assert_called_once_with(**{
- 'cidr': self._subnet_ipv6.cidr,
- 'dns_nameservers': self._subnet_ipv6.dns_nameservers,
- 'enable_dhcp': self._subnet_ipv6.enable_dhcp,
- 'gateway_ip': self._subnet_ipv6.gateway_ip,
- 'host_routes': self._subnet_ipv6.host_routes,
- 'ip_version': self._subnet_ipv6.ip_version,
- 'ipv6_address_mode': self._subnet_ipv6.ipv6_address_mode,
- 'ipv6_ra_mode': self._subnet_ipv6.ipv6_ra_mode,
- 'name': self._subnet_ipv6.name,
- 'network_id': self._subnet_ipv6.network_id,
- 'allocation_pools': self._subnet_ipv6.allocation_pools,
- 'service_types': self._subnet_ipv6.service_types,
- })
+ self.network.create_subnet.assert_called_once_with(
+ **{
+ 'cidr': self._subnet_ipv6.cidr,
+ 'dns_nameservers': self._subnet_ipv6.dns_nameservers,
+ 'enable_dhcp': self._subnet_ipv6.enable_dhcp,
+ 'gateway_ip': self._subnet_ipv6.gateway_ip,
+ 'host_routes': self._subnet_ipv6.host_routes,
+ 'ip_version': self._subnet_ipv6.ip_version,
+ 'ipv6_address_mode': self._subnet_ipv6.ipv6_address_mode,
+ 'ipv6_ra_mode': self._subnet_ipv6.ipv6_ra_mode,
+ 'name': self._subnet_ipv6.name,
+ 'network_id': self._subnet_ipv6.network_id,
+ 'allocation_pools': self._subnet_ipv6.allocation_pools,
+ 'service_types': self._subnet_ipv6.service_types,
+ }
+ )
self.assertFalse(self.network.set_tags.called)
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data_ipv6, data)
@@ -397,9 +458,12 @@ class TestCreateSubnet(TestSubnet):
self._network.id = self._subnet.network_id
arglist = [
- "--subnet-range", self._subnet.cidr,
- "--network-segment", self._network_segment.id,
- "--network", self._subnet.network_id,
+ "--subnet-range",
+ self._subnet.cidr,
+ "--network-segment",
+ self._network_segment.id,
+ "--network",
+ self._subnet.network_id,
self._subnet.name,
]
verifylist = [
@@ -409,19 +473,20 @@ class TestCreateSubnet(TestSubnet):
('network', self._subnet.network_id),
('ip_version', self._subnet.ip_version),
('gateway', 'auto'),
-
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_subnet.assert_called_once_with(**{
- 'cidr': self._subnet.cidr,
- 'ip_version': self._subnet.ip_version,
- 'name': self._subnet.name,
- 'network_id': self._subnet.network_id,
- 'segment_id': self._network_segment.id,
- })
+ self.network.create_subnet.assert_called_once_with(
+ **{
+ 'cidr': self._subnet.cidr,
+ 'ip_version': self._subnet.ip_version,
+ 'name': self._subnet.name,
+ 'network_id': self._subnet.network_id,
+ 'segment_id': self._network_segment.id,
+ }
+ )
self.assertFalse(self.network.set_tags.called)
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, data)
@@ -431,9 +496,12 @@ class TestCreateSubnet(TestSubnet):
self._network.id = self._subnet.network_id
arglist = [
- "--subnet-range", self._subnet.cidr,
- "--network", self._subnet.network_id,
- "--description", self._subnet.description,
+ "--subnet-range",
+ self._subnet.cidr,
+ "--network",
+ self._subnet.network_id,
+ "--description",
+ self._subnet.description,
self._subnet.name,
]
verifylist = [
@@ -443,27 +511,30 @@ class TestCreateSubnet(TestSubnet):
('network', self._subnet.network_id),
('ip_version', self._subnet.ip_version),
('gateway', 'auto'),
-
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- self.network.create_subnet.assert_called_once_with(**{
- 'cidr': self._subnet.cidr,
- 'ip_version': self._subnet.ip_version,
- 'name': self._subnet.name,
- 'network_id': self._subnet.network_id,
- 'description': self._subnet.description,
- })
+ self.network.create_subnet.assert_called_once_with(
+ **{
+ 'cidr': self._subnet.cidr,
+ 'ip_version': self._subnet.ip_version,
+ 'name': self._subnet.name,
+ 'network_id': self._subnet.network_id,
+ 'description': self._subnet.description,
+ }
+ )
self.assertFalse(self.network.set_tags.called)
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, data)
def _test_create_with_dns(self, publish_dns=True):
arglist = [
- "--subnet-range", self._subnet.cidr,
- "--network", self._subnet.network_id,
+ "--subnet-range",
+ self._subnet.cidr,
+ "--network",
+ self._subnet.network_id,
self._subnet.name,
]
if publish_dns:
@@ -480,7 +551,7 @@ class TestCreateSubnet(TestSubnet):
verifylist.append(('dns_publish_fixed_ip', publish_dns))
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
self.network.create_subnet.assert_called_once_with(
cidr=self._subnet.cidr,
@@ -500,8 +571,10 @@ class TestCreateSubnet(TestSubnet):
def _test_create_with_tag(self, add_tags=True):
arglist = [
- "--subnet-range", self._subnet.cidr,
- "--network", self._subnet.network_id,
+ "--subnet-range",
+ self._subnet.cidr,
+ "--network",
+ self._subnet.network_id,
self._subnet.name,
]
if add_tags:
@@ -521,17 +594,18 @@ class TestCreateSubnet(TestSubnet):
verifylist.append(('no_tag', True))
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
self.network.create_subnet.assert_called_once_with(
cidr=self._subnet.cidr,
ip_version=self._subnet.ip_version,
name=self._subnet.name,
- network_id=self._subnet.network_id)
+ network_id=self._subnet.network_id,
+ )
if add_tags:
self.network.set_tags.assert_called_once_with(
- self._subnet,
- tests_utils.CompareBySet(['red', 'blue']))
+ self._subnet, tests_utils.CompareBySet(['red', 'blue'])
+ )
else:
self.assertFalse(self.network.set_tags.called)
self.assertEqual(self.columns, columns)
@@ -545,7 +619,6 @@ class TestCreateSubnet(TestSubnet):
class TestDeleteSubnet(TestSubnet):
-
# The subnets to delete.
_subnets = network_fakes.FakeSubnet.create_subnets(count=2)
@@ -554,8 +627,9 @@ class TestDeleteSubnet(TestSubnet):
self.network.delete_subnet = mock.Mock(return_value=None)
- self.network.find_subnet = (
- network_fakes.FakeSubnet.get_subnets(self._subnets))
+ self.network.find_subnet = network_fakes.FakeSubnet.get_subnets(
+ self._subnets
+ )
# Get the command object to test
self.cmd = subnet_v2.DeleteSubnet(self.app, self.namespace)
@@ -598,15 +672,12 @@ class TestDeleteSubnet(TestSubnet):
'unexist_subnet',
]
verifylist = [
- ('subnet',
- [self._subnets[0].name, 'unexist_subnet']),
+ ('subnet', [self._subnets[0].name, 'unexist_subnet']),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
find_mock_result = [self._subnets[0], exceptions.CommandError]
- self.network.find_subnet = (
- mock.Mock(side_effect=find_mock_result)
- )
+ self.network.find_subnet = mock.Mock(side_effect=find_mock_result)
try:
self.cmd.take_action(parsed_args)
@@ -615,12 +686,12 @@ class TestDeleteSubnet(TestSubnet):
self.assertEqual('1 of 2 subnets failed to delete.', str(e))
self.network.find_subnet.assert_any_call(
- self._subnets[0].name, ignore_missing=False)
+ self._subnets[0].name, ignore_missing=False
+ )
self.network.find_subnet.assert_any_call(
- 'unexist_subnet', ignore_missing=False)
- self.network.delete_subnet.assert_called_once_with(
- self._subnets[0]
+ 'unexist_subnet', ignore_missing=False
)
+ self.network.delete_subnet.assert_called_once_with(self._subnets[0])
class TestListSubnet(TestSubnet):
@@ -647,30 +718,34 @@ class TestListSubnet(TestSubnet):
data = []
for subnet in _subnet:
- data.append((
- subnet.id,
- subnet.name,
- subnet.network_id,
- subnet.cidr,
- ))
+ data.append(
+ (
+ subnet.id,
+ subnet.name,
+ subnet.network_id,
+ subnet.cidr,
+ )
+ )
data_long = []
for subnet in _subnet:
- data_long.append((
- subnet.id,
- subnet.name,
- subnet.network_id,
- subnet.cidr,
- subnet.project_id,
- subnet.enable_dhcp,
- format_columns.ListColumn(subnet.dns_nameservers),
- subnet_v2.AllocationPoolsColumn(subnet.allocation_pools),
- subnet_v2.HostRoutesColumn(subnet.host_routes),
- subnet.ip_version,
- subnet.gateway_ip,
- format_columns.ListColumn(subnet.service_types),
- format_columns.ListColumn(subnet.tags),
- ))
+ data_long.append(
+ (
+ subnet.id,
+ subnet.name,
+ subnet.network_id,
+ subnet.cidr,
+ subnet.project_id,
+ subnet.enable_dhcp,
+ format_columns.ListColumn(subnet.dns_nameservers),
+ subnet_v2.AllocationPoolsColumn(subnet.allocation_pools),
+ subnet_v2.HostRoutesColumn(subnet.host_routes),
+ subnet.ip_version,
+ subnet.gateway_ip,
+ format_columns.ListColumn(subnet.service_types),
+ format_columns.ListColumn(subnet.tags),
+ )
+ )
def setUp(self):
super(TestListSubnet, self).setUp()
@@ -710,7 +785,8 @@ class TestListSubnet(TestSubnet):
def test_subnet_list_ip_version(self):
arglist = [
- '--ip-version', str(4),
+ '--ip-version',
+ str(4),
]
verifylist = [
('ip_version', 4),
@@ -758,7 +834,8 @@ class TestListSubnet(TestSubnet):
def test_subnet_list_service_type(self):
arglist = [
- '--service-type', 'network:router_gateway',
+ '--service-type',
+ 'network:router_gateway',
]
verifylist = [
('service_types', ['network:router_gateway']),
@@ -775,7 +852,8 @@ class TestListSubnet(TestSubnet):
project = identity_fakes_v3.FakeProject.create_one_project()
self.projects_mock.get.return_value = project
arglist = [
- '--project', project.id,
+ '--project',
+ project.id,
]
verifylist = [
('project', project.id),
@@ -791,18 +869,26 @@ class TestListSubnet(TestSubnet):
def test_subnet_list_service_type_multiple(self):
arglist = [
- '--service-type', 'network:router_gateway',
- '--service-type', 'network:floatingip_agent_gateway',
+ '--service-type',
+ 'network:router_gateway',
+ '--service-type',
+ 'network:floatingip_agent_gateway',
]
verifylist = [
- ('service_types', ['network:router_gateway',
- 'network:floatingip_agent_gateway']),
+ (
+ 'service_types',
+ ['network:router_gateway', 'network:floatingip_agent_gateway'],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
columns, data = self.cmd.take_action(parsed_args)
- filters = {'service_types': ['network:router_gateway',
- 'network:floatingip_agent_gateway']}
+ filters = {
+ 'service_types': [
+ 'network:router_gateway',
+ 'network:floatingip_agent_gateway',
+ ]
+ }
self.network.subnets.assert_called_once_with(**filters)
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
@@ -811,8 +897,10 @@ class TestListSubnet(TestSubnet):
project = identity_fakes_v3.FakeProject.create_one_project()
self.projects_mock.get.return_value = project
arglist = [
- '--project', project.id,
- '--project-domain', project.domain_id,
+ '--project',
+ project.id,
+ '--project-domain',
+ project.domain_id,
]
verifylist = [
('project', project.id),
@@ -831,7 +919,8 @@ class TestListSubnet(TestSubnet):
network = network_fakes.create_one_network()
self.network.find_network = mock.Mock(return_value=network)
arglist = [
- '--network', network.id,
+ '--network',
+ network.id,
]
verifylist = [
('network', network.id),
@@ -849,7 +938,8 @@ class TestListSubnet(TestSubnet):
subnet = network_fakes.FakeSubnet.create_one_subnet()
self.network.find_network = mock.Mock(return_value=subnet)
arglist = [
- '--gateway', subnet.gateway_ip,
+ '--gateway',
+ subnet.gateway_ip,
]
verifylist = [
('gateway', subnet.gateway_ip),
@@ -867,7 +957,8 @@ class TestListSubnet(TestSubnet):
subnet = network_fakes.FakeSubnet.create_one_subnet()
self.network.find_network = mock.Mock(return_value=subnet)
arglist = [
- '--name', subnet.name,
+ '--name',
+ subnet.name,
]
verifylist = [
('name', subnet.name),
@@ -885,7 +976,8 @@ class TestListSubnet(TestSubnet):
subnet = network_fakes.FakeSubnet.create_one_subnet()
self.network.find_network = mock.Mock(return_value=subnet)
arglist = [
- '--subnet-range', subnet.cidr,
+ '--subnet-range',
+ subnet.cidr,
]
verifylist = [
('subnet_range', subnet.cidr),
@@ -902,11 +994,13 @@ class TestListSubnet(TestSubnet):
def test_subnet_list_subnetpool_by_name(self):
subnet_pool = network_fakes.FakeSubnetPool.create_one_subnet_pool()
subnet = network_fakes.FakeSubnet.create_one_subnet(
- {'subnetpool_id': subnet_pool.id})
+ {'subnetpool_id': subnet_pool.id}
+ )
self.network.find_network = mock.Mock(return_value=subnet)
self.network.find_subnet_pool = mock.Mock(return_value=subnet_pool)
arglist = [
- '--subnet-pool', subnet_pool.name,
+ '--subnet-pool',
+ subnet_pool.name,
]
verifylist = [
('subnet_pool', subnet_pool.name),
@@ -923,11 +1017,13 @@ class TestListSubnet(TestSubnet):
def test_subnet_list_subnetpool_by_id(self):
subnet_pool = network_fakes.FakeSubnetPool.create_one_subnet_pool()
subnet = network_fakes.FakeSubnet.create_one_subnet(
- {'subnetpool_id': subnet_pool.id})
+ {'subnetpool_id': subnet_pool.id}
+ )
self.network.find_network = mock.Mock(return_value=subnet)
self.network.find_subnet_pool = mock.Mock(return_value=subnet_pool)
arglist = [
- '--subnet-pool', subnet_pool.id,
+ '--subnet-pool',
+ subnet_pool.id,
]
verifylist = [
('subnet_pool', subnet_pool.id),
@@ -943,10 +1039,14 @@ class TestListSubnet(TestSubnet):
def test_list_with_tag_options(self):
arglist = [
- '--tags', 'red,blue',
- '--any-tags', 'red,green',
- '--not-tags', 'orange,yellow',
- '--not-any-tags', 'black,white',
+ '--tags',
+ 'red,blue',
+ '--any-tags',
+ 'red,green',
+ '--not-tags',
+ 'orange,yellow',
+ '--not-any-tags',
+ 'black,white',
]
verifylist = [
('tags', ['red', 'blue']),
@@ -958,19 +1058,21 @@ class TestListSubnet(TestSubnet):
columns, data = self.cmd.take_action(parsed_args)
self.network.subnets.assert_called_once_with(
- **{'tags': 'red,blue',
- 'any_tags': 'red,green',
- 'not_tags': 'orange,yellow',
- 'not_any_tags': 'black,white'}
+ **{
+ 'tags': 'red,blue',
+ 'any_tags': 'red,green',
+ 'not_tags': 'orange,yellow',
+ 'not_any_tags': 'black,white',
+ }
)
self.assertEqual(self.columns, columns)
self.assertEqual(self.data, list(data))
class TestSetSubnet(TestSubnet):
-
_subnet = network_fakes.FakeSubnet.create_one_subnet(
- {'tags': ['green', 'red']})
+ {'tags': ['green', 'red']}
+ )
def setUp(self):
super(TestSetSubnet, self).setUp()
@@ -981,9 +1083,11 @@ class TestSetSubnet(TestSubnet):
def test_set_this(self):
arglist = [
- "--name", "new_subnet",
+ "--name",
+ "new_subnet",
"--dhcp",
- "--gateway", self._subnet.gateway_ip,
+ "--gateway",
+ self._subnet.gateway_ip,
self._subnet.name,
]
verifylist = [
@@ -1005,9 +1109,11 @@ class TestSetSubnet(TestSubnet):
def test_set_that(self):
arglist = [
- "--name", "new_subnet",
+ "--name",
+ "new_subnet",
"--no-dhcp",
- "--gateway", "none",
+ "--gateway",
+ "none",
self._subnet.name,
]
verifylist = [
@@ -1028,7 +1134,9 @@ class TestSetSubnet(TestSubnet):
self.assertIsNone(result)
def test_set_nothing(self):
- arglist = [self._subnet.name, ]
+ arglist = [
+ self._subnet.name,
+ ]
verifylist = [('subnet', self._subnet.name)]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
@@ -1040,12 +1148,17 @@ class TestSetSubnet(TestSubnet):
def test_append_options(self):
_testsubnet = network_fakes.FakeSubnet.create_one_subnet(
- {'dns_nameservers': ["10.0.0.1"],
- 'service_types': ["network:router_gateway"]})
+ {
+ 'dns_nameservers': ["10.0.0.1"],
+ 'service_types': ["network:router_gateway"],
+ }
+ )
self.network.find_subnet = mock.Mock(return_value=_testsubnet)
arglist = [
- '--dns-nameserver', '10.0.0.2',
- '--service-type', 'network:floatingip_agent_gateway',
+ '--dns-nameserver',
+ '10.0.0.2',
+ '--service-type',
+ 'network:floatingip_agent_gateway',
_testsubnet.name,
]
verifylist = [
@@ -1056,18 +1169,23 @@ class TestSetSubnet(TestSubnet):
result = self.cmd.take_action(parsed_args)
attrs = {
'dns_nameservers': ['10.0.0.2', '10.0.0.1'],
- 'service_types': ['network:floatingip_agent_gateway',
- 'network:router_gateway'],
+ 'service_types': [
+ 'network:floatingip_agent_gateway',
+ 'network:router_gateway',
+ ],
}
self.network.update_subnet.assert_called_once_with(
- _testsubnet, **attrs)
+ _testsubnet, **attrs
+ )
self.assertIsNone(result)
def test_set_non_append_options(self):
arglist = [
- "--description", "new_description",
+ "--description",
+ "new_description",
"--dhcp",
- "--gateway", self._subnet.gateway_ip,
+ "--gateway",
+ self._subnet.gateway_ip,
self._subnet.name,
]
verifylist = [
@@ -1089,26 +1207,35 @@ class TestSetSubnet(TestSubnet):
def test_overwrite_options(self):
_testsubnet = network_fakes.FakeSubnet.create_one_subnet(
- {'host_routes': [{'destination': '10.20.20.0/24',
- 'nexthop': '10.20.20.1'}],
- 'allocation_pools': [{'start': '8.8.8.200',
- 'end': '8.8.8.250'}],
- 'dns_nameservers': ["10.0.0.1"], })
+ {
+ 'host_routes': [
+ {'destination': '10.20.20.0/24', 'nexthop': '10.20.20.1'}
+ ],
+ 'allocation_pools': [
+ {'start': '8.8.8.200', 'end': '8.8.8.250'}
+ ],
+ 'dns_nameservers': ["10.0.0.1"],
+ }
+ )
self.network.find_subnet = mock.Mock(return_value=_testsubnet)
arglist = [
- '--host-route', 'destination=10.30.30.30/24,gateway=10.30.30.1',
+ '--host-route',
+ 'destination=10.30.30.30/24,gateway=10.30.30.1',
'--no-host-route',
- '--allocation-pool', 'start=8.8.8.100,end=8.8.8.150',
+ '--allocation-pool',
+ 'start=8.8.8.100,end=8.8.8.150',
'--no-allocation-pool',
- '--dns-nameserver', '10.1.10.1',
+ '--dns-nameserver',
+ '10.1.10.1',
'--no-dns-nameservers',
_testsubnet.name,
]
verifylist = [
- ('host_routes', [{
- "destination": "10.30.30.30/24", "gateway": "10.30.30.1"}]),
- ('allocation_pools', [{
- 'start': '8.8.8.100', 'end': '8.8.8.150'}]),
+ (
+ 'host_routes',
+ [{"destination": "10.30.30.30/24", "gateway": "10.30.30.1"}],
+ ),
+ ('allocation_pools', [{'start': '8.8.8.100', 'end': '8.8.8.150'}]),
('dns_nameservers', ['10.1.10.1']),
('no_dns_nameservers', True),
('no_host_route', True),
@@ -1117,22 +1244,29 @@ class TestSetSubnet(TestSubnet):
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
attrs = {
- 'host_routes': [{
- "destination": "10.30.30.30/24", "nexthop": "10.30.30.1"}],
+ 'host_routes': [
+ {"destination": "10.30.30.30/24", "nexthop": "10.30.30.1"}
+ ],
'allocation_pools': [{'start': '8.8.8.100', 'end': '8.8.8.150'}],
'dns_nameservers': ["10.1.10.1"],
}
self.network.update_subnet.assert_called_once_with(
- _testsubnet, **attrs)
+ _testsubnet, **attrs
+ )
self.assertIsNone(result)
def test_clear_options(self):
_testsubnet = network_fakes.FakeSubnet.create_one_subnet(
- {'host_routes': [{'destination': '10.20.20.0/24',
- 'nexthop': '10.20.20.1'}],
- 'allocation_pools': [{'start': '8.8.8.200',
- 'end': '8.8.8.250'}],
- 'dns_nameservers': ['10.0.0.1'], })
+ {
+ 'host_routes': [
+ {'destination': '10.20.20.0/24', 'nexthop': '10.20.20.1'}
+ ],
+ 'allocation_pools': [
+ {'start': '8.8.8.200', 'end': '8.8.8.250'}
+ ],
+ 'dns_nameservers': ['10.0.0.1'],
+ }
+ )
self.network.find_subnet = mock.Mock(return_value=_testsubnet)
arglist = [
'--no-host-route',
@@ -1153,7 +1287,8 @@ class TestSetSubnet(TestSubnet):
'dns_nameservers': [],
}
self.network.update_subnet.assert_called_once_with(
- _testsubnet, **attrs)
+ _testsubnet, **attrs
+ )
self.assertIsNone(result)
def _test_set_tags(self, with_tags=True):
@@ -1166,16 +1301,15 @@ class TestSetSubnet(TestSubnet):
verifylist = [('no_tag', True)]
expected_args = []
arglist.append(self._subnet.name)
- verifylist.append(
- ('subnet', self._subnet.name))
+ verifylist.append(('subnet', self._subnet.name))
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.assertFalse(self.network.update_subnet.called)
self.network.set_tags.assert_called_once_with(
- self._subnet,
- tests_utils.CompareBySet(expected_args))
+ self._subnet, tests_utils.CompareBySet(expected_args)
+ )
self.assertIsNone(result)
def test_set_with_tags(self):
@@ -1187,15 +1321,21 @@ class TestSetSubnet(TestSubnet):
def test_set_segment(self):
_net = network_fakes.create_one_network()
_segment = network_fakes.create_one_network_segment(
- attrs={'network_id': _net.id})
+ attrs={'network_id': _net.id}
+ )
_subnet = network_fakes.FakeSubnet.create_one_subnet(
- {'host_routes': [{'destination': '10.20.20.0/24',
- 'nexthop': '10.20.20.1'}],
- 'allocation_pools': [{'start': '8.8.8.200',
- 'end': '8.8.8.250'}],
- 'dns_nameservers': ["10.0.0.1"],
- 'network_id': _net.id,
- 'segment_id': None})
+ {
+ 'host_routes': [
+ {'destination': '10.20.20.0/24', 'nexthop': '10.20.20.1'}
+ ],
+ 'allocation_pools': [
+ {'start': '8.8.8.200', 'end': '8.8.8.250'}
+ ],
+ 'dns_nameservers': ["10.0.0.1"],
+ 'network_id': _net.id,
+ 'segment_id': None,
+ }
+ )
self.network.find_subnet = mock.Mock(return_value=_subnet)
self.network.find_segment = mock.Mock(return_value=_segment)
arglist = ['--network-segment', _segment.id, _subnet.name]
@@ -1268,8 +1408,13 @@ class TestShowSubnet(TestSubnet):
# Testing that a call without the required argument will fail and
# throw a "ParserExecption"
- self.assertRaises(tests_utils.ParserException,
- self.check_parser, self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_show_all_options(self):
arglist = [
@@ -1283,31 +1428,35 @@ class TestShowSubnet(TestSubnet):
columns, data = self.cmd.take_action(parsed_args)
self.network.find_subnet.assert_called_once_with(
- self._subnet.name, ignore_missing=False)
+ self._subnet.name, ignore_missing=False
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, data)
class TestUnsetSubnet(TestSubnet):
-
def setUp(self):
super(TestUnsetSubnet, self).setUp()
self._testsubnet = network_fakes.FakeSubnet.create_one_subnet(
- {'dns_nameservers': ['8.8.8.8',
- '8.8.8.4'],
- 'host_routes': [{'destination': '10.20.20.0/24',
- 'nexthop': '10.20.20.1'},
- {'destination': '10.30.30.30/24',
- 'nexthop': '10.30.30.1'}],
- 'allocation_pools': [{'start': '8.8.8.100',
- 'end': '8.8.8.150'},
- {'start': '8.8.8.160',
- 'end': '8.8.8.170'}],
- 'service_types': ['network:router_gateway',
- 'network:floatingip_agent_gateway'],
- 'gateway_ip': 'fe80::a00a:0:c0de:0:1',
- 'tags': ['green', 'red'], })
+ {
+ 'dns_nameservers': ['8.8.8.8', '8.8.8.4'],
+ 'host_routes': [
+ {'destination': '10.20.20.0/24', 'nexthop': '10.20.20.1'},
+ {'destination': '10.30.30.30/24', 'nexthop': '10.30.30.1'},
+ ],
+ 'allocation_pools': [
+ {'start': '8.8.8.100', 'end': '8.8.8.150'},
+ {'start': '8.8.8.160', 'end': '8.8.8.170'},
+ ],
+ 'service_types': [
+ 'network:router_gateway',
+ 'network:floatingip_agent_gateway',
+ ],
+ 'gateway_ip': 'fe80::a00a:0:c0de:0:1',
+ 'tags': ['green', 'red'],
+ }
+ )
self.network.find_subnet = mock.Mock(return_value=self._testsubnet)
self.network.update_subnet = mock.Mock(return_value=None)
self.network.set_tags = mock.Mock(return_value=None)
@@ -1316,19 +1465,24 @@ class TestUnsetSubnet(TestSubnet):
def test_unset_subnet_params(self):
arglist = [
- '--dns-nameserver', '8.8.8.8',
- '--host-route', 'destination=10.30.30.30/24,gateway=10.30.30.1',
- '--allocation-pool', 'start=8.8.8.100,end=8.8.8.150',
- '--service-type', 'network:router_gateway',
+ '--dns-nameserver',
+ '8.8.8.8',
+ '--host-route',
+ 'destination=10.30.30.30/24,gateway=10.30.30.1',
+ '--allocation-pool',
+ 'start=8.8.8.100,end=8.8.8.150',
+ '--service-type',
+ 'network:router_gateway',
'--gateway',
self._testsubnet.name,
]
verifylist = [
('dns_nameservers', ['8.8.8.8']),
- ('host_routes', [{
- "destination": "10.30.30.30/24", "gateway": "10.30.30.1"}]),
- ('allocation_pools', [{
- 'start': '8.8.8.100', 'end': '8.8.8.150'}]),
+ (
+ 'host_routes',
+ [{"destination": "10.30.30.30/24", "gateway": "10.30.30.1"}],
+ ),
+ ('allocation_pools', [{'start': '8.8.8.100', 'end': '8.8.8.150'}]),
('service_types', ['network:router_gateway']),
('gateway', True),
]
@@ -1338,93 +1492,116 @@ class TestUnsetSubnet(TestSubnet):
attrs = {
'dns_nameservers': ['8.8.8.4'],
- 'host_routes': [{
- "destination": "10.20.20.0/24", "nexthop": "10.20.20.1"}],
+ 'host_routes': [
+ {"destination": "10.20.20.0/24", "nexthop": "10.20.20.1"}
+ ],
'allocation_pools': [{'start': '8.8.8.160', 'end': '8.8.8.170'}],
'service_types': ['network:floatingip_agent_gateway'],
'gateway_ip': None,
}
self.network.update_subnet.assert_called_once_with(
- self._testsubnet, **attrs)
+ self._testsubnet, **attrs
+ )
self.assertIsNone(result)
def test_unset_subnet_wrong_host_routes(self):
arglist = [
- '--dns-nameserver', '8.8.8.8',
- '--host-route', 'destination=10.30.30.30/24,gateway=10.30.30.2',
- '--allocation-pool', 'start=8.8.8.100,end=8.8.8.150',
+ '--dns-nameserver',
+ '8.8.8.8',
+ '--host-route',
+ 'destination=10.30.30.30/24,gateway=10.30.30.2',
+ '--allocation-pool',
+ 'start=8.8.8.100,end=8.8.8.150',
self._testsubnet.name,
]
verifylist = [
('dns_nameservers', ['8.8.8.8']),
- ('host_routes', [{
- "destination": "10.30.30.30/24", "gateway": "10.30.30.2"}]),
- ('allocation_pools', [{
- 'start': '8.8.8.100', 'end': '8.8.8.150'}]),
+ (
+ 'host_routes',
+ [{"destination": "10.30.30.30/24", "gateway": "10.30.30.2"}],
+ ),
+ ('allocation_pools', [{'start': '8.8.8.100', 'end': '8.8.8.150'}]),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- self.assertRaises(exceptions.CommandError,
- self.cmd.take_action, parsed_args)
+ self.assertRaises(
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
def test_unset_subnet_wrong_allocation_pool(self):
arglist = [
- '--dns-nameserver', '8.8.8.8',
- '--host-route', 'destination=10.30.30.30/24,gateway=10.30.30.1',
- '--allocation-pool', 'start=8.8.8.100,end=8.8.8.156',
+ '--dns-nameserver',
+ '8.8.8.8',
+ '--host-route',
+ 'destination=10.30.30.30/24,gateway=10.30.30.1',
+ '--allocation-pool',
+ 'start=8.8.8.100,end=8.8.8.156',
self._testsubnet.name,
]
verifylist = [
('dns_nameservers', ['8.8.8.8']),
- ('host_routes', [{
- "destination": "10.30.30.30/24", "gateway": "10.30.30.1"}]),
- ('allocation_pools', [{
- 'start': '8.8.8.100', 'end': '8.8.8.156'}]),
+ (
+ 'host_routes',
+ [{"destination": "10.30.30.30/24", "gateway": "10.30.30.1"}],
+ ),
+ ('allocation_pools', [{'start': '8.8.8.100', 'end': '8.8.8.156'}]),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- self.assertRaises(exceptions.CommandError,
- self.cmd.take_action, parsed_args)
+ self.assertRaises(
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
def test_unset_subnet_wrong_dns_nameservers(self):
arglist = [
- '--dns-nameserver', '8.8.8.1',
- '--host-route', 'destination=10.30.30.30/24,gateway=10.30.30.1',
- '--allocation-pool', 'start=8.8.8.100,end=8.8.8.150',
+ '--dns-nameserver',
+ '8.8.8.1',
+ '--host-route',
+ 'destination=10.30.30.30/24,gateway=10.30.30.1',
+ '--allocation-pool',
+ 'start=8.8.8.100,end=8.8.8.150',
self._testsubnet.name,
]
verifylist = [
('dns_nameservers', ['8.8.8.1']),
- ('host_routes', [{
- "destination": "10.30.30.30/24", "gateway": "10.30.30.1"}]),
- ('allocation_pools', [{
- 'start': '8.8.8.100', 'end': '8.8.8.150'}]),
+ (
+ 'host_routes',
+ [{"destination": "10.30.30.30/24", "gateway": "10.30.30.1"}],
+ ),
+ ('allocation_pools', [{'start': '8.8.8.100', 'end': '8.8.8.150'}]),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- self.assertRaises(exceptions.CommandError,
- self.cmd.take_action, parsed_args)
+ self.assertRaises(
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
def test_unset_subnet_wrong_service_type(self):
arglist = [
- '--dns-nameserver', '8.8.8.8',
- '--host-route', 'destination=10.30.30.30/24,gateway=10.30.30.1',
- '--allocation-pool', 'start=8.8.8.100,end=8.8.8.150',
- '--service-type', 'network:dhcp',
+ '--dns-nameserver',
+ '8.8.8.8',
+ '--host-route',
+ 'destination=10.30.30.30/24,gateway=10.30.30.1',
+ '--allocation-pool',
+ 'start=8.8.8.100,end=8.8.8.150',
+ '--service-type',
+ 'network:dhcp',
self._testsubnet.name,
]
verifylist = [
('dns_nameservers', ['8.8.8.8']),
- ('host_routes', [{
- "destination": "10.30.30.30/24", "gateway": "10.30.30.1"}]),
- ('allocation_pools', [{
- 'start': '8.8.8.100', 'end': '8.8.8.150'}]),
+ (
+ 'host_routes',
+ [{"destination": "10.30.30.30/24", "gateway": "10.30.30.1"}],
+ ),
+ ('allocation_pools', [{'start': '8.8.8.100', 'end': '8.8.8.150'}]),
('service_types', ['network:dhcp']),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- self.assertRaises(exceptions.CommandError,
- self.cmd.take_action, parsed_args)
+ self.assertRaises(
+ exceptions.CommandError, self.cmd.take_action, parsed_args
+ )
def _test_unset_tags(self, with_tags=True):
if with_tags:
@@ -1436,16 +1613,15 @@ class TestUnsetSubnet(TestSubnet):
verifylist = [('all_tag', True)]
expected_args = []
arglist.append(self._testsubnet.name)
- verifylist.append(
- ('subnet', self._testsubnet.name))
+ verifylist.append(('subnet', self._testsubnet.name))
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.assertFalse(self.network.update_subnet.called)
self.network.set_tags.assert_called_once_with(
- self._testsubnet,
- tests_utils.CompareBySet(expected_args))
+ self._testsubnet, tests_utils.CompareBySet(expected_args)
+ )
self.assertIsNone(result)
def test_unset_with_tags(self):
diff --git a/openstackclient/tests/unit/network/v2/test_subnet_pool.py b/openstackclient/tests/unit/network/v2/test_subnet_pool.py
index b24906b5..9a4532f6 100644
--- a/openstackclient/tests/unit/network/v2/test_subnet_pool.py
+++ b/openstackclient/tests/unit/network/v2/test_subnet_pool.py
@@ -25,7 +25,6 @@ from openstackclient.tests.unit import utils as tests_utils
class TestSubnetPool(network_fakes.TestNetworkV2):
-
def setUp(self):
super(TestSubnetPool, self).setUp()
@@ -38,7 +37,6 @@ class TestSubnetPool(network_fakes.TestNetworkV2):
class TestCreateSubnetPool(TestSubnetPool):
-
project = identity_fakes_v3.FakeProject.create_one_project()
domain = identity_fakes_v3.FakeDomain.create_one_domain()
# The new subnet pool to create.
@@ -83,14 +81,16 @@ class TestCreateSubnetPool(TestSubnetPool):
super(TestCreateSubnetPool, self).setUp()
self.network.create_subnet_pool = mock.Mock(
- return_value=self._subnet_pool)
+ return_value=self._subnet_pool
+ )
self.network.set_tags = mock.Mock(return_value=None)
# Get the command object to test
self.cmd = subnet_pool.CreateSubnetPool(self.app, self.namespace)
self.network.find_address_scope = mock.Mock(
- return_value=self._address_scope)
+ return_value=self._address_scope
+ )
self.projects_mock.get.return_value = self.project
self.domains_mock.get.return_value = self.domain
@@ -99,8 +99,13 @@ class TestCreateSubnetPool(TestSubnetPool):
arglist = []
verifylist = []
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
self.assertFalse(self.network.set_tags.called)
def test_create_no_pool_prefix(self):
@@ -111,12 +116,18 @@ class TestCreateSubnetPool(TestSubnetPool):
verifylist = [
('name', self._subnet_pool.name),
]
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_create_default_options(self):
arglist = [
- '--pool-prefix', '10.0.10.0/24',
+ '--pool-prefix',
+ '10.0.10.0/24',
self._subnet_pool.name,
]
verifylist = [
@@ -125,27 +136,35 @@ class TestCreateSubnetPool(TestSubnetPool):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_subnet_pool.assert_called_once_with(**{
- 'prefixes': ['10.0.10.0/24'],
- 'name': self._subnet_pool.name,
- })
+ self.network.create_subnet_pool.assert_called_once_with(
+ **{
+ 'prefixes': ['10.0.10.0/24'],
+ 'name': self._subnet_pool.name,
+ }
+ )
self.assertFalse(self.network.set_tags.called)
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, data)
def test_create_prefixlen_options(self):
arglist = [
- '--default-prefix-length', self._subnet_pool.default_prefixlen,
- '--max-prefix-length', self._subnet_pool.max_prefixlen,
- '--min-prefix-length', self._subnet_pool.min_prefixlen,
- '--pool-prefix', '10.0.10.0/24',
+ '--default-prefix-length',
+ self._subnet_pool.default_prefixlen,
+ '--max-prefix-length',
+ self._subnet_pool.max_prefixlen,
+ '--min-prefix-length',
+ self._subnet_pool.min_prefixlen,
+ '--pool-prefix',
+ '10.0.10.0/24',
self._subnet_pool.name,
]
verifylist = [
- ('default_prefix_length',
- int(self._subnet_pool.default_prefixlen)),
+ (
+ 'default_prefix_length',
+ int(self._subnet_pool.default_prefixlen),
+ ),
('max_prefix_length', int(self._subnet_pool.max_prefixlen)),
('min_prefix_length', int(self._subnet_pool.min_prefixlen)),
('name', self._subnet_pool.name),
@@ -153,36 +172,47 @@ class TestCreateSubnetPool(TestSubnetPool):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_subnet_pool.assert_called_once_with(**{
- 'default_prefixlen': int(self._subnet_pool.default_prefixlen),
- 'max_prefixlen': int(self._subnet_pool.max_prefixlen),
- 'min_prefixlen': int(self._subnet_pool.min_prefixlen),
- 'prefixes': ['10.0.10.0/24'],
- 'name': self._subnet_pool.name,
- })
+ self.network.create_subnet_pool.assert_called_once_with(
+ **{
+ 'default_prefixlen': int(self._subnet_pool.default_prefixlen),
+ 'max_prefixlen': int(self._subnet_pool.max_prefixlen),
+ 'min_prefixlen': int(self._subnet_pool.min_prefixlen),
+ 'prefixes': ['10.0.10.0/24'],
+ 'name': self._subnet_pool.name,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, data)
def test_create_len_negative(self):
arglist = [
self._subnet_pool.name,
- '--min-prefix-length', '-16',
+ '--min-prefix-length',
+ '-16',
]
verifylist = [
('subnet_pool', self._subnet_pool.name),
('min_prefix_length', '-16'),
]
- self.assertRaises(argparse.ArgumentTypeError, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ argparse.ArgumentTypeError,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_create_project_domain(self):
arglist = [
- '--pool-prefix', '10.0.10.0/24',
- "--project", self.project.name,
- "--project-domain", self.domain.name,
+ '--pool-prefix',
+ '10.0.10.0/24',
+ "--project",
+ self.project.name,
+ "--project-domain",
+ self.domain.name,
self._subnet_pool.name,
]
verifylist = [
@@ -193,20 +223,24 @@ class TestCreateSubnetPool(TestSubnetPool):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_subnet_pool.assert_called_once_with(**{
- 'prefixes': ['10.0.10.0/24'],
- 'project_id': self.project.id,
- 'name': self._subnet_pool.name,
- })
+ self.network.create_subnet_pool.assert_called_once_with(
+ **{
+ 'prefixes': ['10.0.10.0/24'],
+ 'project_id': self.project.id,
+ 'name': self._subnet_pool.name,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, data)
def test_create_address_scope_option(self):
arglist = [
- '--pool-prefix', '10.0.10.0/24',
- '--address-scope', self._address_scope.id,
+ '--pool-prefix',
+ '10.0.10.0/24',
+ '--address-scope',
+ self._address_scope.id,
self._subnet_pool.name,
]
verifylist = [
@@ -216,19 +250,22 @@ class TestCreateSubnetPool(TestSubnetPool):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_subnet_pool.assert_called_once_with(**{
- 'prefixes': ['10.0.10.0/24'],
- 'address_scope_id': self._address_scope.id,
- 'name': self._subnet_pool.name,
- })
+ self.network.create_subnet_pool.assert_called_once_with(
+ **{
+ 'prefixes': ['10.0.10.0/24'],
+ 'address_scope_id': self._address_scope.id,
+ 'name': self._subnet_pool.name,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, data)
def test_create_default_and_shared_options(self):
arglist = [
- '--pool-prefix', '10.0.10.0/24',
+ '--pool-prefix',
+ '10.0.10.0/24',
'--default',
'--share',
self._subnet_pool.name,
@@ -241,21 +278,25 @@ class TestCreateSubnetPool(TestSubnetPool):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_subnet_pool.assert_called_once_with(**{
- 'is_default': True,
- 'name': self._subnet_pool.name,
- 'prefixes': ['10.0.10.0/24'],
- 'shared': True,
- })
+ self.network.create_subnet_pool.assert_called_once_with(
+ **{
+ 'is_default': True,
+ 'name': self._subnet_pool.name,
+ 'prefixes': ['10.0.10.0/24'],
+ 'shared': True,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, data)
def test_create_with_description(self):
arglist = [
- '--pool-prefix', '10.0.10.0/24',
- '--description', self._subnet_pool.description,
+ '--pool-prefix',
+ '10.0.10.0/24',
+ '--description',
+ self._subnet_pool.description,
self._subnet_pool.name,
]
verifylist = [
@@ -265,20 +306,24 @@ class TestCreateSubnetPool(TestSubnetPool):
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
- self.network.create_subnet_pool.assert_called_once_with(**{
- 'name': self._subnet_pool.name,
- 'prefixes': ['10.0.10.0/24'],
- 'description': self._subnet_pool.description,
- })
+ self.network.create_subnet_pool.assert_called_once_with(
+ **{
+ 'name': self._subnet_pool.name,
+ 'prefixes': ['10.0.10.0/24'],
+ 'description': self._subnet_pool.description,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, data)
def test_create_with_default_quota(self):
arglist = [
- '--pool-prefix', '10.0.10.0/24',
- '--default-quota', '10',
+ '--pool-prefix',
+ '10.0.10.0/24',
+ '--default-quota',
+ '10',
self._subnet_pool.name,
]
verifylist = [
@@ -287,18 +332,21 @@ class TestCreateSubnetPool(TestSubnetPool):
('name', self._subnet_pool.name),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
- self.network.create_subnet_pool.assert_called_once_with(**{
- 'name': self._subnet_pool.name,
- 'prefixes': ['10.0.10.0/24'],
- 'default_quota': 10,
- })
+ columns, data = self.cmd.take_action(parsed_args)
+ self.network.create_subnet_pool.assert_called_once_with(
+ **{
+ 'name': self._subnet_pool.name,
+ 'prefixes': ['10.0.10.0/24'],
+ 'default_quota': 10,
+ }
+ )
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, data)
def _test_create_with_tag(self, add_tags=True):
arglist = [
- '--pool-prefix', '10.0.10.0/24',
+ '--pool-prefix',
+ '10.0.10.0/24',
self._subnet_pool.name,
]
if add_tags:
@@ -315,16 +363,15 @@ class TestCreateSubnetPool(TestSubnetPool):
verifylist.append(('no_tag', True))
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
- columns, data = (self.cmd.take_action(parsed_args))
+ columns, data = self.cmd.take_action(parsed_args)
self.network.create_subnet_pool.assert_called_once_with(
- prefixes=['10.0.10.0/24'],
- name=self._subnet_pool.name
+ prefixes=['10.0.10.0/24'], name=self._subnet_pool.name
)
if add_tags:
self.network.set_tags.assert_called_once_with(
- self._subnet_pool,
- tests_utils.CompareBySet(['red', 'blue']))
+ self._subnet_pool, tests_utils.CompareBySet(['red', 'blue'])
+ )
else:
self.assertFalse(self.network.set_tags.called)
self.assertEqual(self.columns, columns)
@@ -338,7 +385,6 @@ class TestCreateSubnetPool(TestSubnetPool):
class TestDeleteSubnetPool(TestSubnetPool):
-
# The subnet pools to delete.
_subnet_pools = network_fakes.FakeSubnetPool.create_subnet_pools(count=2)
@@ -366,7 +412,8 @@ class TestDeleteSubnetPool(TestSubnetPool):
result = self.cmd.take_action(parsed_args)
self.network.delete_subnet_pool.assert_called_once_with(
- self._subnet_pools[0])
+ self._subnet_pools[0]
+ )
self.assertIsNone(result)
def test_multi_subnet_pools_delete(self):
@@ -394,15 +441,15 @@ class TestDeleteSubnetPool(TestSubnetPool):
'unexist_subnet_pool',
]
verifylist = [
- ('subnet_pool',
- [self._subnet_pools[0].name, 'unexist_subnet_pool']),
+ (
+ 'subnet_pool',
+ [self._subnet_pools[0].name, 'unexist_subnet_pool'],
+ ),
]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
find_mock_result = [self._subnet_pools[0], exceptions.CommandError]
- self.network.find_subnet_pool = (
- mock.Mock(side_effect=find_mock_result)
- )
+ self.network.find_subnet_pool = mock.Mock(side_effect=find_mock_result)
try:
self.cmd.take_action(parsed_args)
@@ -411,9 +458,11 @@ class TestDeleteSubnetPool(TestSubnetPool):
self.assertEqual('1 of 2 subnet pools failed to delete.', str(e))
self.network.find_subnet_pool.assert_any_call(
- self._subnet_pools[0].name, ignore_missing=False)
+ self._subnet_pools[0].name, ignore_missing=False
+ )
self.network.find_subnet_pool.assert_any_call(
- 'unexist_subnet_pool', ignore_missing=False)
+ 'unexist_subnet_pool', ignore_missing=False
+ )
self.network.delete_subnet_pool.assert_called_once_with(
self._subnet_pools[0]
)
@@ -438,24 +487,28 @@ class TestListSubnetPool(TestSubnetPool):
data = []
for pool in _subnet_pools:
- data.append((
- pool.id,
- pool.name,
- format_columns.ListColumn(pool.prefixes),
- ))
+ data.append(
+ (
+ pool.id,
+ pool.name,
+ format_columns.ListColumn(pool.prefixes),
+ )
+ )
data_long = []
for pool in _subnet_pools:
- data_long.append((
- pool.id,
- pool.name,
- format_columns.ListColumn(pool.prefixes),
- pool.default_prefixlen,
- pool.address_scope_id,
- pool.is_default,
- pool.shared,
- format_columns.ListColumn(pool.tags),
- ))
+ data_long.append(
+ (
+ pool.id,
+ pool.name,
+ format_columns.ListColumn(pool.prefixes),
+ pool.default_prefixlen,
+ pool.address_scope_id,
+ pool.is_default,
+ pool.shared,
+ format_columns.ListColumn(pool.tags),
+ )
+ )
def setUp(self):
super(TestListSubnetPool, self).setUp()
@@ -561,7 +614,8 @@ class TestListSubnetPool(TestSubnetPool):
project = identity_fakes_v3.FakeProject.create_one_project()
self.projects_mock.get.return_value = project
arglist = [
- '--project', project.id,
+ '--project',
+ project.id,
]
verifylist = [
('project', project.id),
@@ -579,8 +633,10 @@ class TestListSubnetPool(TestSubnetPool):
project = identity_fakes_v3.FakeProject.create_one_project()
self.projects_mock.get.return_value = project
arglist = [
- '--project', project.id,
- '--project-domain', project.domain_id,
+ '--project',
+ project.id,
+ '--project-domain',
+ project.domain_id,
]
verifylist = [
('project', project.id),
@@ -599,7 +655,8 @@ class TestListSubnetPool(TestSubnetPool):
subnet_pool = network_fakes.FakeSubnetPool.create_one_subnet_pool()
self.network.find_network = mock.Mock(return_value=subnet_pool)
arglist = [
- '--name', subnet_pool.name,
+ '--name',
+ subnet_pool.name,
]
verifylist = [
('name', subnet_pool.name),
@@ -617,7 +674,8 @@ class TestListSubnetPool(TestSubnetPool):
addr_scope = network_fakes.create_one_address_scope()
self.network.find_address_scope = mock.Mock(return_value=addr_scope)
arglist = [
- '--address-scope', addr_scope.id,
+ '--address-scope',
+ addr_scope.id,
]
verifylist = [
('address_scope', addr_scope.id),
@@ -633,10 +691,14 @@ class TestListSubnetPool(TestSubnetPool):
def test_list_with_tag_options(self):
arglist = [
- '--tags', 'red,blue',
- '--any-tags', 'red,green',
- '--not-tags', 'orange,yellow',
- '--not-any-tags', 'black,white',
+ '--tags',
+ 'red,blue',
+ '--any-tags',
+ 'red,green',
+ '--not-tags',
+ 'orange,yellow',
+ '--not-any-tags',
+ 'black,white',
]
verifylist = [
('tags', ['red', 'blue']),
@@ -648,21 +710,21 @@ class TestListSubnetPool(TestSubnetPool):
columns, data = self.cmd.take_action(parsed_args)
self.network.subnet_pools.assert_called_once_with(
- **{'tags': 'red,blue',
- 'any_tags': 'red,green',
- 'not_tags': 'orange,yellow',
- 'not_any_tags': 'black,white'}
+ **{
+ 'tags': 'red,blue',
+ 'any_tags': 'red,green',
+ 'not_tags': 'orange,yellow',
+ 'not_any_tags': 'black,white',
+ }
)
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, list(data))
class TestSetSubnetPool(TestSubnetPool):
-
# The subnet_pool to set.
_subnet_pool = network_fakes.FakeSubnetPool.create_one_subnet_pool(
- {'default_quota': 10,
- 'tags': ['green', 'red']}
+ {'default_quota': 10, 'tags': ['green', 'red']}
)
_address_scope = network_fakes.create_one_address_scope()
@@ -674,19 +736,24 @@ class TestSetSubnetPool(TestSubnetPool):
self.network.set_tags = mock.Mock(return_value=None)
self.network.find_subnet_pool = mock.Mock(
- return_value=self._subnet_pool)
+ return_value=self._subnet_pool
+ )
self.network.find_address_scope = mock.Mock(
- return_value=self._address_scope)
+ return_value=self._address_scope
+ )
# Get the command object to test
self.cmd = subnet_pool.SetSubnetPool(self.app, self.namespace)
def test_set_this(self):
arglist = [
- '--name', 'noob',
- '--default-prefix-length', '8',
- '--min-prefix-length', '8',
+ '--name',
+ 'noob',
+ '--default-prefix-length',
+ '8',
+ '--min-prefix-length',
+ '8',
self._subnet_pool.name,
]
verifylist = [
@@ -705,14 +772,18 @@ class TestSetSubnetPool(TestSubnetPool):
'min_prefixlen': 8,
}
self.network.update_subnet_pool.assert_called_once_with(
- self._subnet_pool, **attrs)
+ self._subnet_pool, **attrs
+ )
self.assertIsNone(result)
def test_set_that(self):
arglist = [
- '--pool-prefix', '10.0.1.0/24',
- '--pool-prefix', '10.0.2.0/24',
- '--max-prefix-length', '16',
+ '--pool-prefix',
+ '10.0.1.0/24',
+ '--pool-prefix',
+ '10.0.2.0/24',
+ '--max-prefix-length',
+ '16',
self._subnet_pool.name,
]
verifylist = [
@@ -731,12 +802,17 @@ class TestSetSubnetPool(TestSubnetPool):
'max_prefixlen': 16,
}
self.network.update_subnet_pool.assert_called_once_with(
- self._subnet_pool, **attrs)
+ self._subnet_pool, **attrs
+ )
self.assertIsNone(result)
def test_set_nothing(self):
- arglist = [self._subnet_pool.name, ]
- verifylist = [('subnet_pool', self._subnet_pool.name), ]
+ arglist = [
+ self._subnet_pool.name,
+ ]
+ verifylist = [
+ ('subnet_pool', self._subnet_pool.name),
+ ]
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
@@ -747,7 +823,8 @@ class TestSetSubnetPool(TestSubnetPool):
def test_set_len_negative(self):
arglist = [
- '--max-prefix-length', '-16',
+ '--max-prefix-length',
+ '-16',
self._subnet_pool.name,
]
verifylist = [
@@ -755,12 +832,18 @@ class TestSetSubnetPool(TestSubnetPool):
('subnet_pool', self._subnet_pool.name),
]
- self.assertRaises(argparse.ArgumentTypeError, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ argparse.ArgumentTypeError,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_set_address_scope(self):
arglist = [
- '--address-scope', self._address_scope.id,
+ '--address-scope',
+ self._address_scope.id,
self._subnet_pool.name,
]
verifylist = [
@@ -775,7 +858,8 @@ class TestSetSubnetPool(TestSubnetPool):
'address_scope_id': self._address_scope.id,
}
self.network.update_subnet_pool.assert_called_once_with(
- self._subnet_pool, **attrs)
+ self._subnet_pool, **attrs
+ )
self.assertIsNone(result)
def test_set_no_address_scope(self):
@@ -795,12 +879,14 @@ class TestSetSubnetPool(TestSubnetPool):
'address_scope_id': None,
}
self.network.update_subnet_pool.assert_called_once_with(
- self._subnet_pool, **attrs)
+ self._subnet_pool, **attrs
+ )
self.assertIsNone(result)
def test_set_no_address_scope_conflict(self):
arglist = [
- '--address-scope', self._address_scope.id,
+ '--address-scope',
+ self._address_scope.id,
'--no-address-scope',
self._subnet_pool.name,
]
@@ -811,8 +897,13 @@ class TestSetSubnetPool(TestSubnetPool):
]
# Exclusive arguments will conflict here.
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_set_default(self):
arglist = [
@@ -827,11 +918,10 @@ class TestSetSubnetPool(TestSubnetPool):
result = self.cmd.take_action(parsed_args)
- attrs = {
- 'is_default': True
- }
+ attrs = {'is_default': True}
self.network.update_subnet_pool.assert_called_once_with(
- self._subnet_pool, **attrs)
+ self._subnet_pool, **attrs
+ )
self.assertIsNone(result)
def test_set_no_default(self):
@@ -851,7 +941,8 @@ class TestSetSubnetPool(TestSubnetPool):
'is_default': False,
}
self.network.update_subnet_pool.assert_called_once_with(
- self._subnet_pool, **attrs)
+ self._subnet_pool, **attrs
+ )
self.assertIsNone(result)
def test_set_no_default_conflict(self):
@@ -867,12 +958,18 @@ class TestSetSubnetPool(TestSubnetPool):
]
# Exclusive arguments will conflict here.
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_set_description(self):
arglist = [
- '--description', 'new_description',
+ '--description',
+ 'new_description',
self._subnet_pool.name,
]
verifylist = [
@@ -887,12 +984,14 @@ class TestSetSubnetPool(TestSubnetPool):
'description': "new_description",
}
self.network.update_subnet_pool.assert_called_once_with(
- self._subnet_pool, **attrs)
+ self._subnet_pool, **attrs
+ )
self.assertIsNone(result)
def test_set_with_default_quota(self):
arglist = [
- '--default-quota', '20',
+ '--default-quota',
+ '20',
self._subnet_pool.name,
]
verifylist = [
@@ -903,7 +1002,9 @@ class TestSetSubnetPool(TestSubnetPool):
result = self.cmd.take_action(parsed_args)
self.network.update_subnet_pool.assert_called_once_with(
self._subnet_pool,
- **{'default_quota': 20, }
+ **{
+ 'default_quota': 20,
+ }
)
self.assertIsNone(result)
@@ -917,16 +1018,15 @@ class TestSetSubnetPool(TestSubnetPool):
verifylist = [('no_tag', True)]
expected_args = []
arglist.append(self._subnet_pool.name)
- verifylist.append(
- ('subnet_pool', self._subnet_pool.name))
+ verifylist.append(('subnet_pool', self._subnet_pool.name))
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.assertFalse(self.network.update_subnet_pool.called)
self.network.set_tags.assert_called_once_with(
- self._subnet_pool,
- tests_utils.CompareBySet(expected_args))
+ self._subnet_pool, tests_utils.CompareBySet(expected_args)
+ )
self.assertIsNone(result)
def test_set_with_tags(self):
@@ -937,7 +1037,6 @@ class TestSetSubnetPool(TestSubnetPool):
class TestShowSubnetPool(TestSubnetPool):
-
# The subnet_pool to set.
_subnet_pool = network_fakes.FakeSubnetPool.create_one_subnet_pool()
@@ -989,8 +1088,13 @@ class TestShowSubnetPool(TestSubnetPool):
arglist = []
verifylist = []
- self.assertRaises(tests_utils.ParserException, self.check_parser,
- self.cmd, arglist, verifylist)
+ self.assertRaises(
+ tests_utils.ParserException,
+ self.check_parser,
+ self.cmd,
+ arglist,
+ verifylist,
+ )
def test_show_all_options(self):
arglist = [
@@ -1004,21 +1108,21 @@ class TestShowSubnetPool(TestSubnetPool):
columns, data = self.cmd.take_action(parsed_args)
self.network.find_subnet_pool.assert_called_once_with(
- self._subnet_pool.name,
- ignore_missing=False
+ self._subnet_pool.name, ignore_missing=False
)
self.assertEqual(self.columns, columns)
self.assertCountEqual(self.data, data)
class TestUnsetSubnetPool(TestSubnetPool):
-
def setUp(self):
super(TestUnsetSubnetPool, self).setUp()
self._subnetpool = network_fakes.FakeSubnetPool.create_one_subnet_pool(
- {'tags': ['green', 'red']})
+ {'tags': ['green', 'red']}
+ )
self.network.find_subnet_pool = mock.Mock(
- return_value=self._subnetpool)
+ return_value=self._subnetpool
+ )
self.network.update_subnet_pool = mock.Mock(return_value=None)
self.network.set_tags = mock.Mock(return_value=None)
# Get the command object to test
@@ -1034,16 +1138,15 @@ class TestUnsetSubnetPool(TestSubnetPool):
verifylist = [('all_tag', True)]
expected_args = []
arglist.append(self._subnetpool.name)
- verifylist.append(
- ('subnet_pool', self._subnetpool.name))
+ verifylist.append(('subnet_pool', self._subnetpool.name))
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
result = self.cmd.take_action(parsed_args)
self.assertFalse(self.network.update_subnet_pool.called)
self.network.set_tags.assert_called_once_with(
- self._subnetpool,
- tests_utils.CompareBySet(expected_args))
+ self._subnetpool, tests_utils.CompareBySet(expected_args)
+ )
self.assertIsNone(result)
def test_unset_with_tags(self):
diff --git a/tox.ini b/tox.ini
index 9dad40f6..f77028af 100644
--- a/tox.ini
+++ b/tox.ini
@@ -127,10 +127,10 @@ commands =
[flake8]
show-source = True
-# H203: Use assertIs(Not)None to check for None
-enable-extensions = H203
exclude = .venv,.git,.tox,dist,doc,*lib/python*,*egg,build,tools,releasenotes
+# E203 Black will put spaces after colons in list comprehensions
+# H301 Black will put commas after imports that can't fit on one line
# W503 and W504 are disabled since they're not very useful
-ignore = W503,W504
+ignore = E203,H301,W503,W504
import-order-style = pep8
application_import_names = openstackclient