diff options
Diffstat (limited to 'openstackclient/tests/unit/network')
39 files changed, 6706 insertions, 4702 deletions
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): |