Merge "Refactor network fakes to sdk properties PART6"
This commit is contained in:
commit
7ecdb69f08
openstackclient
@ -76,7 +76,7 @@ def _get_columns(item):
|
|||||||
}
|
}
|
||||||
if hasattr(item, 'interfaces_info'):
|
if hasattr(item, 'interfaces_info'):
|
||||||
column_map['interfaces_info'] = 'interfaces_info'
|
column_map['interfaces_info'] = 'interfaces_info'
|
||||||
invisible_columns = ['location']
|
invisible_columns = ['location', 'tenant_id']
|
||||||
if item.is_ha is None:
|
if item.is_ha is None:
|
||||||
invisible_columns.append('is_ha')
|
invisible_columns.append('is_ha')
|
||||||
column_map.pop('is_ha')
|
column_map.pop('is_ha')
|
||||||
|
@ -89,9 +89,8 @@ def _get_columns(item):
|
|||||||
# We still support Nova managed security groups, where we have tenant_id.
|
# We still support Nova managed security groups, where we have tenant_id.
|
||||||
column_map = {
|
column_map = {
|
||||||
'security_group_rules': 'rules',
|
'security_group_rules': 'rules',
|
||||||
'tenant_id': 'project_id',
|
|
||||||
}
|
}
|
||||||
hidden_columns = ['location']
|
hidden_columns = ['location', 'tenant_id']
|
||||||
return utils.get_osc_show_columns_for_sdk_resource(
|
return utils.get_osc_show_columns_for_sdk_resource(
|
||||||
item, column_map, hidden_columns
|
item, column_map, hidden_columns
|
||||||
)
|
)
|
||||||
@ -186,7 +185,8 @@ class CreateSecurityGroup(
|
|||||||
parsed_args.name,
|
parsed_args.name,
|
||||||
description,
|
description,
|
||||||
)
|
)
|
||||||
display_columns, property_columns = _get_columns(obj)
|
display_columns = ('description', 'id', 'name', 'project_id', 'rules')
|
||||||
|
property_columns = ('description', 'id', 'name', 'tenant_id', 'rules')
|
||||||
data = utils.get_dict_properties(
|
data = utils.get_dict_properties(
|
||||||
obj, property_columns, formatters=_formatters_compute
|
obj, property_columns, formatters=_formatters_compute
|
||||||
)
|
)
|
||||||
@ -420,7 +420,8 @@ class ShowSecurityGroup(common.NetworkAndComputeShowOne):
|
|||||||
|
|
||||||
def take_action_compute(self, client, parsed_args):
|
def take_action_compute(self, client, parsed_args):
|
||||||
obj = compute_v2.find_security_group(client, parsed_args.group)
|
obj = compute_v2.find_security_group(client, parsed_args.group)
|
||||||
display_columns, property_columns = _get_columns(obj)
|
display_columns = ('description', 'id', 'name', 'project_id', 'rules')
|
||||||
|
property_columns = ('description', 'id', 'name', 'tenant_id', 'rules')
|
||||||
data = utils.get_dict_properties(
|
data = utils.get_dict_properties(
|
||||||
obj, property_columns, formatters=_formatters_compute
|
obj, property_columns, formatters=_formatters_compute
|
||||||
)
|
)
|
||||||
|
@ -30,7 +30,7 @@ LOG = logging.getLogger(__name__)
|
|||||||
|
|
||||||
|
|
||||||
def _get_columns(item):
|
def _get_columns(item):
|
||||||
hidden_columns = ['location', 'tenant_id']
|
hidden_columns = ['location', 'name', 'tenant_id', 'tags']
|
||||||
return utils.get_osc_show_columns_for_sdk_resource(
|
return utils.get_osc_show_columns_for_sdk_resource(
|
||||||
item, {}, hidden_columns
|
item, {}, hidden_columns
|
||||||
)
|
)
|
||||||
|
@ -46,7 +46,9 @@ from openstack.network.v2 import (
|
|||||||
from openstack.network.v2 import qos_policy as _qos_policy
|
from openstack.network.v2 import qos_policy as _qos_policy
|
||||||
from openstack.network.v2 import qos_rule_type as _qos_rule_type
|
from openstack.network.v2 import qos_rule_type as _qos_rule_type
|
||||||
from openstack.network.v2 import rbac_policy as network_rbac
|
from openstack.network.v2 import rbac_policy as network_rbac
|
||||||
|
from openstack.network.v2 import router as _router
|
||||||
from openstack.network.v2 import security_group as _security_group
|
from openstack.network.v2 import security_group as _security_group
|
||||||
|
from openstack.network.v2 import security_group_rule as _security_group_rule
|
||||||
from openstack.network.v2 import segment as _segment
|
from openstack.network.v2 import segment as _segment
|
||||||
from openstack.network.v2 import service_profile as _service_profile
|
from openstack.network.v2 import service_profile as _service_profile
|
||||||
from openstack.network.v2 import trunk as _trunk
|
from openstack.network.v2 import trunk as _trunk
|
||||||
@ -132,246 +134,6 @@ def create_one_extension(attrs=None):
|
|||||||
return extension
|
return extension
|
||||||
|
|
||||||
|
|
||||||
class FakeRouter:
|
|
||||||
"""Fake one or more routers."""
|
|
||||||
|
|
||||||
@staticmethod
|
|
||||||
def create_one_router(attrs=None):
|
|
||||||
"""Create a fake router.
|
|
||||||
|
|
||||||
:param Dictionary attrs:
|
|
||||||
A dictionary with all attributes
|
|
||||||
:return:
|
|
||||||
A FakeResource object, with id, name, admin_state_up,
|
|
||||||
status, project_id
|
|
||||||
"""
|
|
||||||
attrs = attrs or {}
|
|
||||||
|
|
||||||
# Set default attributes.
|
|
||||||
router_attrs = {
|
|
||||||
'id': 'router-id-' + uuid.uuid4().hex,
|
|
||||||
'name': 'router-name-' + uuid.uuid4().hex,
|
|
||||||
'status': 'ACTIVE',
|
|
||||||
'admin_state_up': True,
|
|
||||||
'description': 'router-description-' + uuid.uuid4().hex,
|
|
||||||
'distributed': False,
|
|
||||||
'ha': False,
|
|
||||||
'project_id': 'project-id-' + uuid.uuid4().hex,
|
|
||||||
'routes': [],
|
|
||||||
'external_gateway_info': {},
|
|
||||||
'availability_zone_hints': [],
|
|
||||||
'availability_zones': [],
|
|
||||||
'tags': [],
|
|
||||||
'location': 'MUNCHMUNCHMUNCH',
|
|
||||||
}
|
|
||||||
|
|
||||||
# Overwrite default attributes.
|
|
||||||
router_attrs.update(attrs)
|
|
||||||
|
|
||||||
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']
|
|
||||||
router.is_distributed = router_attrs['distributed']
|
|
||||||
router.is_ha = router_attrs['ha']
|
|
||||||
|
|
||||||
return router
|
|
||||||
|
|
||||||
@staticmethod
|
|
||||||
def create_routers(attrs=None, count=2):
|
|
||||||
"""Create multiple fake routers.
|
|
||||||
|
|
||||||
:param Dictionary attrs:
|
|
||||||
A dictionary with all attributes
|
|
||||||
:param int count:
|
|
||||||
The number of routers to fake
|
|
||||||
:return:
|
|
||||||
A list of FakeResource objects faking the routers
|
|
||||||
"""
|
|
||||||
routers = []
|
|
||||||
for i in range(0, count):
|
|
||||||
routers.append(FakeRouter.create_one_router(attrs))
|
|
||||||
|
|
||||||
return routers
|
|
||||||
|
|
||||||
@staticmethod
|
|
||||||
def get_routers(routers=None, count=2):
|
|
||||||
"""Get an iterable Mock object with a list of faked routers.
|
|
||||||
|
|
||||||
If routers list is provided, then initialize the Mock object with the
|
|
||||||
list. Otherwise create one.
|
|
||||||
|
|
||||||
:param List routers:
|
|
||||||
A list of FakeResource objects faking routers
|
|
||||||
:param int count:
|
|
||||||
The number of routers to fake
|
|
||||||
:return:
|
|
||||||
An iterable Mock object with side_effect set to a list of faked
|
|
||||||
routers
|
|
||||||
"""
|
|
||||||
if routers is None:
|
|
||||||
routers = FakeRouter.create_routers(count)
|
|
||||||
return mock.Mock(side_effect=routers)
|
|
||||||
|
|
||||||
|
|
||||||
class FakeSecurityGroup:
|
|
||||||
"""Fake one or more security groups."""
|
|
||||||
|
|
||||||
@staticmethod
|
|
||||||
def create_one_security_group(attrs=None):
|
|
||||||
"""Create a fake security group.
|
|
||||||
|
|
||||||
:param Dictionary attrs:
|
|
||||||
A dictionary with all attributes
|
|
||||||
:return:
|
|
||||||
A FakeResource object, with id, name, etc.
|
|
||||||
"""
|
|
||||||
attrs = attrs or {}
|
|
||||||
|
|
||||||
# Set default attributes.
|
|
||||||
security_group_attrs = {
|
|
||||||
'id': 'security-group-id-' + uuid.uuid4().hex,
|
|
||||||
'name': 'security-group-name-' + uuid.uuid4().hex,
|
|
||||||
'description': 'security-group-description-' + uuid.uuid4().hex,
|
|
||||||
'stateful': True,
|
|
||||||
'project_id': 'project-id-' + uuid.uuid4().hex,
|
|
||||||
'security_group_rules': [],
|
|
||||||
'tags': [],
|
|
||||||
'location': 'MUNCHMUNCHMUNCH',
|
|
||||||
}
|
|
||||||
|
|
||||||
# Overwrite default attributes.
|
|
||||||
security_group_attrs.update(attrs)
|
|
||||||
|
|
||||||
security_group = fakes.FakeResource(
|
|
||||||
info=copy.deepcopy(security_group_attrs), loaded=True
|
|
||||||
)
|
|
||||||
|
|
||||||
return security_group
|
|
||||||
|
|
||||||
@staticmethod
|
|
||||||
def create_security_groups(attrs=None, count=2):
|
|
||||||
"""Create multiple fake security groups.
|
|
||||||
|
|
||||||
:param Dictionary attrs:
|
|
||||||
A dictionary with all attributes
|
|
||||||
:param int count:
|
|
||||||
The number of security groups to fake
|
|
||||||
:return:
|
|
||||||
A list of FakeResource objects faking the security groups
|
|
||||||
"""
|
|
||||||
security_groups = []
|
|
||||||
for i in range(0, count):
|
|
||||||
security_groups.append(
|
|
||||||
FakeSecurityGroup.create_one_security_group(attrs)
|
|
||||||
)
|
|
||||||
|
|
||||||
return security_groups
|
|
||||||
|
|
||||||
@staticmethod
|
|
||||||
def get_security_groups(security_groups=None, count=2):
|
|
||||||
"""Get an iterable Mock object with a list of faked security groups.
|
|
||||||
|
|
||||||
If security groups list is provided, then initialize the Mock object
|
|
||||||
with the list. Otherwise create one.
|
|
||||||
|
|
||||||
:param List security_groups:
|
|
||||||
A list of FakeResource objects faking security groups
|
|
||||||
:param int count:
|
|
||||||
The number of security groups to fake
|
|
||||||
:return:
|
|
||||||
An iterable Mock object with side_effect set to a list of faked
|
|
||||||
security groups
|
|
||||||
"""
|
|
||||||
if security_groups is None:
|
|
||||||
security_groups = FakeSecurityGroup.create_security_groups(count)
|
|
||||||
return mock.Mock(side_effect=security_groups)
|
|
||||||
|
|
||||||
|
|
||||||
class FakeSecurityGroupRule:
|
|
||||||
"""Fake one or more security group rules."""
|
|
||||||
|
|
||||||
@staticmethod
|
|
||||||
def create_one_security_group_rule(attrs=None):
|
|
||||||
"""Create a fake security group rule.
|
|
||||||
|
|
||||||
:param Dictionary attrs:
|
|
||||||
A dictionary with all attributes
|
|
||||||
:return:
|
|
||||||
A FakeResource object, with id, etc.
|
|
||||||
"""
|
|
||||||
attrs = attrs or {}
|
|
||||||
|
|
||||||
# Set default attributes.
|
|
||||||
security_group_rule_attrs = {
|
|
||||||
'description': 'security-group-rule-description-'
|
|
||||||
+ uuid.uuid4().hex,
|
|
||||||
'direction': 'ingress',
|
|
||||||
'ether_type': 'IPv4',
|
|
||||||
'id': 'security-group-rule-id-' + uuid.uuid4().hex,
|
|
||||||
'port_range_max': None,
|
|
||||||
'port_range_min': None,
|
|
||||||
'protocol': None,
|
|
||||||
'remote_group_id': None,
|
|
||||||
'remote_address_group_id': None,
|
|
||||||
'remote_ip_prefix': '0.0.0.0/0',
|
|
||||||
'security_group_id': 'security-group-id-' + uuid.uuid4().hex,
|
|
||||||
'project_id': 'project-id-' + uuid.uuid4().hex,
|
|
||||||
'location': 'MUNCHMUNCHMUNCH',
|
|
||||||
}
|
|
||||||
|
|
||||||
# Overwrite default attributes.
|
|
||||||
security_group_rule_attrs.update(attrs)
|
|
||||||
|
|
||||||
security_group_rule = fakes.FakeResource(
|
|
||||||
info=copy.deepcopy(security_group_rule_attrs), loaded=True
|
|
||||||
)
|
|
||||||
|
|
||||||
return security_group_rule
|
|
||||||
|
|
||||||
@staticmethod
|
|
||||||
def create_security_group_rules(attrs=None, count=2):
|
|
||||||
"""Create multiple fake security group rules.
|
|
||||||
|
|
||||||
:param Dictionary attrs:
|
|
||||||
A dictionary with all attributes
|
|
||||||
:param int count:
|
|
||||||
The number of security group rules to fake
|
|
||||||
:return:
|
|
||||||
A list of FakeResource objects faking the security group rules
|
|
||||||
"""
|
|
||||||
security_group_rules = []
|
|
||||||
for i in range(0, count):
|
|
||||||
security_group_rules.append(
|
|
||||||
FakeSecurityGroupRule.create_one_security_group_rule(attrs)
|
|
||||||
)
|
|
||||||
|
|
||||||
return security_group_rules
|
|
||||||
|
|
||||||
@staticmethod
|
|
||||||
def get_security_group_rules(security_group_rules=None, count=2):
|
|
||||||
"""Get an iterable Mock with a list of faked security group rules.
|
|
||||||
|
|
||||||
If security group rules list is provided, then initialize the Mock
|
|
||||||
object with the list. Otherwise create one.
|
|
||||||
|
|
||||||
:param List security_group_rules:
|
|
||||||
A list of FakeResource objects faking security group rules
|
|
||||||
:param int count:
|
|
||||||
The number of security group rules to fake
|
|
||||||
:return:
|
|
||||||
An iterable Mock object with side_effect set to a list of faked
|
|
||||||
security group rules
|
|
||||||
"""
|
|
||||||
if security_group_rules is None:
|
|
||||||
security_group_rules = (
|
|
||||||
FakeSecurityGroupRule.create_security_group_rules(count)
|
|
||||||
)
|
|
||||||
return mock.Mock(side_effect=security_group_rules)
|
|
||||||
|
|
||||||
|
|
||||||
class FakeSubnet:
|
class FakeSubnet:
|
||||||
"""Fake one or more subnets."""
|
"""Fake one or more subnets."""
|
||||||
|
|
||||||
@ -1631,20 +1393,32 @@ def get_network_rbacs(rbac_policies=None, count=2):
|
|||||||
|
|
||||||
|
|
||||||
def create_one_security_group(attrs=None):
|
def create_one_security_group(attrs=None):
|
||||||
"""Create a security group."""
|
"""Create a fake security group.
|
||||||
|
|
||||||
|
:param Dictionary attrs:
|
||||||
|
A dictionary with all attributes
|
||||||
|
:return:
|
||||||
|
A SecurityGroup object, with id, name, etc.
|
||||||
|
"""
|
||||||
attrs = attrs or {}
|
attrs = attrs or {}
|
||||||
|
|
||||||
|
# Set default attributes.
|
||||||
security_group_attrs = {
|
security_group_attrs = {
|
||||||
'name': 'security-group-name-' + uuid.uuid4().hex,
|
|
||||||
'id': 'security-group-id-' + uuid.uuid4().hex,
|
'id': 'security-group-id-' + uuid.uuid4().hex,
|
||||||
'project_id': 'project-id-' + uuid.uuid4().hex,
|
'name': 'security-group-name-' + uuid.uuid4().hex,
|
||||||
'description': 'security-group-description-' + uuid.uuid4().hex,
|
'description': 'security-group-description-' + uuid.uuid4().hex,
|
||||||
|
'stateful': True,
|
||||||
|
'project_id': 'project-id-' + uuid.uuid4().hex,
|
||||||
|
'security_group_rules': [],
|
||||||
|
'tags': [],
|
||||||
'location': 'MUNCHMUNCHMUNCH',
|
'location': 'MUNCHMUNCHMUNCH',
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Overwrite default attributes.
|
||||||
security_group_attrs.update(attrs)
|
security_group_attrs.update(attrs)
|
||||||
|
|
||||||
security_group = _security_group.SecurityGroup(**security_group_attrs)
|
security_group = _security_group.SecurityGroup(**security_group_attrs)
|
||||||
|
security_group.tenant_id = None # unset deprecated opts
|
||||||
|
|
||||||
return security_group
|
return security_group
|
||||||
|
|
||||||
@ -1652,9 +1426,12 @@ def create_one_security_group(attrs=None):
|
|||||||
def create_security_groups(attrs=None, count=2):
|
def create_security_groups(attrs=None, count=2):
|
||||||
"""Create multiple fake security groups.
|
"""Create multiple fake security groups.
|
||||||
|
|
||||||
:param dict attrs: A dictionary with all attributes
|
:param Dictionary attrs:
|
||||||
:param int count: The number of security groups to fake
|
A dictionary with all attributes
|
||||||
:return: A list of fake SecurityGroup objects
|
:param int count:
|
||||||
|
The number of security groups to fake
|
||||||
|
:return:
|
||||||
|
A list of SecurityGroup objects faking the security groups
|
||||||
"""
|
"""
|
||||||
security_groups = []
|
security_groups = []
|
||||||
for i in range(0, count):
|
for i in range(0, count):
|
||||||
@ -1663,6 +1440,99 @@ def create_security_groups(attrs=None, count=2):
|
|||||||
return security_groups
|
return security_groups
|
||||||
|
|
||||||
|
|
||||||
|
def get_security_groups(security_groups=None, count=2):
|
||||||
|
"""Get an iterable Mock object with a list of faked security groups.
|
||||||
|
|
||||||
|
If security groups list is provided, then initialize the Mock object
|
||||||
|
with the list. Otherwise create one.
|
||||||
|
|
||||||
|
:param List security_groups:
|
||||||
|
A list of SecurityGroup objects faking security groups
|
||||||
|
:param int count:
|
||||||
|
The number of security groups to fake
|
||||||
|
:return:
|
||||||
|
An iterable Mock object with side_effect set to a list of faked
|
||||||
|
security groups
|
||||||
|
"""
|
||||||
|
if security_groups is None:
|
||||||
|
security_groups = create_security_groups(count)
|
||||||
|
return mock.Mock(side_effect=security_groups)
|
||||||
|
|
||||||
|
|
||||||
|
def create_one_security_group_rule(attrs=None):
|
||||||
|
"""Create a fake security group rule.
|
||||||
|
|
||||||
|
:param Dictionary attrs:
|
||||||
|
A dictionary with all attributes
|
||||||
|
:return:
|
||||||
|
A FakeResource object, with id, etc.
|
||||||
|
"""
|
||||||
|
attrs = attrs or {}
|
||||||
|
|
||||||
|
# Set default attributes.
|
||||||
|
security_group_rule_attrs = {
|
||||||
|
'description': 'security-group-rule-description-' + uuid.uuid4().hex,
|
||||||
|
'direction': 'ingress',
|
||||||
|
'ether_type': 'IPv4',
|
||||||
|
'id': 'security-group-rule-id-' + uuid.uuid4().hex,
|
||||||
|
'port_range_max': None,
|
||||||
|
'port_range_min': None,
|
||||||
|
'protocol': None,
|
||||||
|
'remote_group_id': None,
|
||||||
|
'remote_address_group_id': None,
|
||||||
|
'remote_ip_prefix': '0.0.0.0/0',
|
||||||
|
'security_group_id': 'security-group-id-' + uuid.uuid4().hex,
|
||||||
|
'project_id': 'project-id-' + uuid.uuid4().hex,
|
||||||
|
'location': 'MUNCHMUNCHMUNCH',
|
||||||
|
}
|
||||||
|
|
||||||
|
# Overwrite default attributes.
|
||||||
|
security_group_rule_attrs.update(attrs)
|
||||||
|
|
||||||
|
security_group_rule = _security_group_rule.SecurityGroupRule(
|
||||||
|
**security_group_rule_attrs
|
||||||
|
)
|
||||||
|
security_group_rule.tenant_id = None # unset deprecated opts
|
||||||
|
|
||||||
|
return security_group_rule
|
||||||
|
|
||||||
|
|
||||||
|
def create_security_group_rules(attrs=None, count=2):
|
||||||
|
"""Create multiple fake security group rules.
|
||||||
|
|
||||||
|
:param Dictionary attrs:
|
||||||
|
A dictionary with all attributes
|
||||||
|
:param int count:
|
||||||
|
The number of security group rules to fake
|
||||||
|
:return:
|
||||||
|
A list of SecurityGroupRule objects faking the security group rules
|
||||||
|
"""
|
||||||
|
security_group_rules = []
|
||||||
|
for i in range(0, count):
|
||||||
|
security_group_rules.append(create_one_security_group_rule(attrs))
|
||||||
|
|
||||||
|
return security_group_rules
|
||||||
|
|
||||||
|
|
||||||
|
def get_security_group_rules(security_group_rules=None, count=2):
|
||||||
|
"""Get an iterable Mock with a list of faked security group rules.
|
||||||
|
|
||||||
|
If security group rules list is provided, then initialize the Mock
|
||||||
|
object with the list. Otherwise create one.
|
||||||
|
|
||||||
|
:param List security_group_rules:
|
||||||
|
A list of SecurityGroupRule objects faking security group rules
|
||||||
|
:param int count:
|
||||||
|
The number of security group rules to fake
|
||||||
|
:return:
|
||||||
|
An iterable Mock object with side_effect set to a list of faked
|
||||||
|
security group rules
|
||||||
|
"""
|
||||||
|
if security_group_rules is None:
|
||||||
|
security_group_rules = create_security_group_rules(count)
|
||||||
|
return mock.Mock(side_effect=security_group_rules)
|
||||||
|
|
||||||
|
|
||||||
def create_one_service_profile(attrs=None):
|
def create_one_service_profile(attrs=None):
|
||||||
"""Create service profile."""
|
"""Create service profile."""
|
||||||
attrs = attrs or {}
|
attrs = attrs or {}
|
||||||
@ -1902,6 +1772,80 @@ def create_qos_rule_types(attrs=None, count=2):
|
|||||||
return qos_rule_types
|
return qos_rule_types
|
||||||
|
|
||||||
|
|
||||||
|
def create_one_router(attrs=None):
|
||||||
|
"""Create a fake router.
|
||||||
|
|
||||||
|
:param Dictionary attrs:
|
||||||
|
A dictionary with all attributes
|
||||||
|
:return:
|
||||||
|
A Router object, with id, name, admin_state_up,
|
||||||
|
status, project_id
|
||||||
|
"""
|
||||||
|
attrs = attrs or {}
|
||||||
|
|
||||||
|
# Set default attributes.
|
||||||
|
router_attrs = {
|
||||||
|
'id': 'router-id-' + uuid.uuid4().hex,
|
||||||
|
'name': 'router-name-' + uuid.uuid4().hex,
|
||||||
|
'status': 'ACTIVE',
|
||||||
|
'is_admin_state_up': True,
|
||||||
|
'description': 'router-description-' + uuid.uuid4().hex,
|
||||||
|
'distributed': False,
|
||||||
|
'ha': False,
|
||||||
|
'project_id': 'project-id-' + uuid.uuid4().hex,
|
||||||
|
'routes': [],
|
||||||
|
'external_gateway_info': {},
|
||||||
|
'availability_zone_hints': [],
|
||||||
|
'availability_zones': [],
|
||||||
|
'tags': [],
|
||||||
|
'location': 'MUNCHMUNCHMUNCH',
|
||||||
|
}
|
||||||
|
|
||||||
|
# Overwrite default attributes.
|
||||||
|
router_attrs.update(attrs)
|
||||||
|
|
||||||
|
router = _router.Router(**router_attrs)
|
||||||
|
router.tenant_id = None # unset deprecated opts
|
||||||
|
|
||||||
|
return router
|
||||||
|
|
||||||
|
|
||||||
|
def create_routers(attrs=None, count=2):
|
||||||
|
"""Create multiple fake routers.
|
||||||
|
|
||||||
|
:param Dictionary attrs:
|
||||||
|
A dictionary with all attributes
|
||||||
|
:param int count:
|
||||||
|
The number of routers to fake
|
||||||
|
:return:
|
||||||
|
A list of Router objects faking the routers
|
||||||
|
"""
|
||||||
|
routers = []
|
||||||
|
for i in range(0, count):
|
||||||
|
routers.append(create_one_router(attrs))
|
||||||
|
|
||||||
|
return routers
|
||||||
|
|
||||||
|
|
||||||
|
def get_routers(routers=None, count=2):
|
||||||
|
"""Get an iterable Mock object with a list of faked routers.
|
||||||
|
|
||||||
|
If routers list is provided, then initialize the Mock object with the
|
||||||
|
list. Otherwise create one.
|
||||||
|
|
||||||
|
:param List routers:
|
||||||
|
A list of Router objects faking routers
|
||||||
|
:param int count:
|
||||||
|
The number of routers to fake
|
||||||
|
:return:
|
||||||
|
An iterable Mock object with side_effect set to a list of faked
|
||||||
|
routers
|
||||||
|
"""
|
||||||
|
if routers is None:
|
||||||
|
routers = create_routers(count)
|
||||||
|
return mock.Mock(side_effect=routers)
|
||||||
|
|
||||||
|
|
||||||
def create_one_local_ip(attrs=None):
|
def create_one_local_ip(attrs=None):
|
||||||
"""Create a fake local ip.
|
"""Create a fake local ip.
|
||||||
|
|
||||||
|
@ -414,7 +414,7 @@ class TestListFloatingIPNetwork(TestFloatingIPNetwork):
|
|||||||
'id': 'fake_port_id',
|
'id': 'fake_port_id',
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
fake_router = network_fakes.FakeRouter.create_one_router(
|
fake_router = network_fakes.create_one_router(
|
||||||
{
|
{
|
||||||
'id': 'fake_router_id',
|
'id': 'fake_router_id',
|
||||||
}
|
}
|
||||||
|
@ -24,8 +24,8 @@ class TestConntrackHelper(network_fakes.TestNetworkV2):
|
|||||||
def setUp(self):
|
def setUp(self):
|
||||||
super().setUp()
|
super().setUp()
|
||||||
|
|
||||||
self.router = network_fakes.FakeRouter.create_one_router()
|
self.router = network_fakes.create_one_router()
|
||||||
self.network_client.find_router = mock.Mock(return_value=self.router)
|
self.network_client.find_router.return_value = self.router
|
||||||
|
|
||||||
|
|
||||||
class TestCreateL3ConntrackHelper(TestConntrackHelper):
|
class TestCreateL3ConntrackHelper(TestConntrackHelper):
|
||||||
|
@ -30,9 +30,7 @@ class TestNDPProxy(network_fakes.TestNetworkV2):
|
|||||||
# Get a shortcut to the DomainManager Mock
|
# Get a shortcut to the DomainManager Mock
|
||||||
self.domains_mock = self.identity_client.domains
|
self.domains_mock = self.identity_client.domains
|
||||||
|
|
||||||
self.router = network_fakes.FakeRouter.create_one_router(
|
self.router = network_fakes.create_one_router({'id': 'fake-router-id'})
|
||||||
{'id': 'fake-router-id'}
|
|
||||||
)
|
|
||||||
self.network_client.find_router = mock.Mock(return_value=self.router)
|
self.network_client.find_router = mock.Mock(return_value=self.router)
|
||||||
self.port = network_fakes.create_one_port()
|
self.port = network_fakes.create_one_port()
|
||||||
self.network_client.find_port = mock.Mock(return_value=self.port)
|
self.network_client.find_port = mock.Mock(return_value=self.port)
|
||||||
|
@ -70,7 +70,7 @@ class TestAddNetworkToAgent(TestNetworkAgent):
|
|||||||
|
|
||||||
|
|
||||||
class TestAddRouterAgent(TestNetworkAgent):
|
class TestAddRouterAgent(TestNetworkAgent):
|
||||||
_router = network_fakes.FakeRouter.create_one_router()
|
_router = network_fakes.create_one_router()
|
||||||
_agent = network_fakes.create_one_network_agent()
|
_agent = network_fakes.create_one_network_agent()
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
@ -219,30 +219,24 @@ class TestListNetworkAgent(TestNetworkAgent):
|
|||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super().setUp()
|
super().setUp()
|
||||||
self.network_client.agents = mock.Mock(
|
|
||||||
return_value=self.network_agents
|
self.network_client.agents.return_value = self.network_agents
|
||||||
|
self.network_client.routers_hosting_l3_agents.return_value = (
|
||||||
|
self.network_agents
|
||||||
)
|
)
|
||||||
|
|
||||||
_testagent = network_fakes.create_one_network_agent()
|
_testagent = network_fakes.create_one_network_agent()
|
||||||
self.network_client.get_agent = mock.Mock(return_value=_testagent)
|
self.network_client.get_agent.return_value = _testagent
|
||||||
|
self.network_client.get_agent.return_value = _testagent
|
||||||
|
|
||||||
self._testnetwork = network_fakes.create_one_network()
|
self._testnetwork = network_fakes.create_one_network()
|
||||||
self.network_client.find_network = mock.Mock(
|
self.network_client.find_network.return_value = self._testnetwork
|
||||||
return_value=self._testnetwork
|
self.network_client.network_hosting_dhcp_agents.return_value = (
|
||||||
)
|
self.network_agents
|
||||||
self.network_client.network_hosting_dhcp_agents = mock.Mock(
|
|
||||||
return_value=self.network_agents
|
|
||||||
)
|
)
|
||||||
|
|
||||||
self.network_client.get_agent = mock.Mock(return_value=_testagent)
|
self._testrouter = network_fakes.create_one_router()
|
||||||
|
self.network_client.find_router.return_value = self._testrouter
|
||||||
self._testrouter = network_fakes.FakeRouter.create_one_router()
|
|
||||||
self.network_client.find_router = mock.Mock(
|
|
||||||
return_value=self._testrouter
|
|
||||||
)
|
|
||||||
self.network_client.routers_hosting_l3_agents = mock.Mock(
|
|
||||||
return_value=self.network_agents
|
|
||||||
)
|
|
||||||
|
|
||||||
# Get the command object to test
|
# Get the command object to test
|
||||||
self.cmd = network_agent.ListNetworkAgent(self.app, None)
|
self.cmd = network_agent.ListNetworkAgent(self.app, None)
|
||||||
@ -323,15 +317,11 @@ class TestListNetworkAgent(TestNetworkAgent):
|
|||||||
]
|
]
|
||||||
verifylist = [('router', self._testrouter.id), ('long', False)]
|
verifylist = [('router', self._testrouter.id), ('long', False)]
|
||||||
|
|
||||||
attrs = {
|
|
||||||
self._testrouter,
|
|
||||||
}
|
|
||||||
|
|
||||||
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
|
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_client.routers_hosting_l3_agents.assert_called_once_with(
|
self.network_client.routers_hosting_l3_agents.assert_called_once_with(
|
||||||
*attrs
|
self._testrouter
|
||||||
)
|
)
|
||||||
|
|
||||||
self.assertEqual(self.columns, columns)
|
self.assertEqual(self.columns, columns)
|
||||||
@ -345,15 +335,11 @@ class TestListNetworkAgent(TestNetworkAgent):
|
|||||||
]
|
]
|
||||||
verifylist = [('router', self._testrouter.id), ('long', True)]
|
verifylist = [('router', self._testrouter.id), ('long', True)]
|
||||||
|
|
||||||
attrs = {
|
|
||||||
self._testrouter,
|
|
||||||
}
|
|
||||||
|
|
||||||
parsed_args = self.check_parser(self.cmd, arglist, verifylist)
|
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_client.routers_hosting_l3_agents.assert_called_once_with(
|
self.network_client.routers_hosting_l3_agents.assert_called_once_with(
|
||||||
*attrs
|
self._testrouter
|
||||||
)
|
)
|
||||||
|
|
||||||
# Add a column 'HA State' and corresponding data.
|
# Add a column 'HA State' and corresponding data.
|
||||||
@ -422,7 +408,7 @@ class TestRemoveNetworkFromAgent(TestNetworkAgent):
|
|||||||
|
|
||||||
|
|
||||||
class TestRemoveRouterAgent(TestNetworkAgent):
|
class TestRemoveRouterAgent(TestNetworkAgent):
|
||||||
_router = network_fakes.FakeRouter.create_one_router()
|
_router = network_fakes.create_one_router()
|
||||||
_agent = network_fakes.create_one_network_agent()
|
_agent = network_fakes.create_one_network_agent()
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
|
@ -35,7 +35,7 @@ class TestNetworkRBAC(network_fakes.TestNetworkV2):
|
|||||||
class TestCreateNetworkRBAC(TestNetworkRBAC):
|
class TestCreateNetworkRBAC(TestNetworkRBAC):
|
||||||
network_object = network_fakes.create_one_network()
|
network_object = network_fakes.create_one_network()
|
||||||
qos_object = network_fakes.create_one_qos_policy()
|
qos_object = network_fakes.create_one_qos_policy()
|
||||||
sg_object = network_fakes.FakeSecurityGroup.create_one_security_group()
|
sg_object = network_fakes.create_one_security_group()
|
||||||
as_object = network_fakes.create_one_address_scope()
|
as_object = network_fakes.create_one_address_scope()
|
||||||
snp_object = network_fakes.FakeSubnetPool.create_one_subnet_pool()
|
snp_object = network_fakes.FakeSubnetPool.create_one_subnet_pool()
|
||||||
ag_object = network_fakes.create_one_address_group()
|
ag_object = network_fakes.create_one_address_group()
|
||||||
|
@ -320,7 +320,7 @@ class TestCreatePort(TestPort):
|
|||||||
self.assertCountEqual(self.data, data)
|
self.assertCountEqual(self.data, data)
|
||||||
|
|
||||||
def test_create_with_security_group(self):
|
def test_create_with_security_group(self):
|
||||||
secgroup = network_fakes.FakeSecurityGroup.create_one_security_group()
|
secgroup = network_fakes.create_one_security_group()
|
||||||
self.network_client.find_security_group = mock.Mock(
|
self.network_client.find_security_group = mock.Mock(
|
||||||
return_value=secgroup
|
return_value=secgroup
|
||||||
)
|
)
|
||||||
@ -391,8 +391,8 @@ class TestCreatePort(TestPort):
|
|||||||
self.assertCountEqual(self.data, data)
|
self.assertCountEqual(self.data, data)
|
||||||
|
|
||||||
def test_create_with_security_groups(self):
|
def test_create_with_security_groups(self):
|
||||||
sg_1 = network_fakes.FakeSecurityGroup.create_one_security_group()
|
sg_1 = network_fakes.create_one_security_group()
|
||||||
sg_2 = network_fakes.FakeSecurityGroup.create_one_security_group()
|
sg_2 = network_fakes.create_one_security_group()
|
||||||
self.network_client.find_security_group = mock.Mock(
|
self.network_client.find_security_group = mock.Mock(
|
||||||
side_effect=[sg_1, sg_2]
|
side_effect=[sg_1, sg_2]
|
||||||
)
|
)
|
||||||
@ -1325,7 +1325,7 @@ class TestListPort(compute_fakes.FakeClientMixin, TestPort):
|
|||||||
super().setUp()
|
super().setUp()
|
||||||
|
|
||||||
self.network_client.ports = mock.Mock(return_value=self._ports)
|
self.network_client.ports = mock.Mock(return_value=self._ports)
|
||||||
fake_router = network_fakes.FakeRouter.create_one_router(
|
fake_router = network_fakes.create_one_router(
|
||||||
{
|
{
|
||||||
'id': 'fake-router-id',
|
'id': 'fake-router-id',
|
||||||
}
|
}
|
||||||
@ -2096,7 +2096,7 @@ class TestSetPort(TestPort):
|
|||||||
self.assertIsNone(result)
|
self.assertIsNone(result)
|
||||||
|
|
||||||
def test_set_port_security_group(self):
|
def test_set_port_security_group(self):
|
||||||
sg = network_fakes.FakeSecurityGroup.create_one_security_group()
|
sg = network_fakes.create_one_security_group()
|
||||||
self.network_client.find_security_group = mock.Mock(return_value=sg)
|
self.network_client.find_security_group = mock.Mock(return_value=sg)
|
||||||
arglist = [
|
arglist = [
|
||||||
'--security-group',
|
'--security-group',
|
||||||
@ -2119,9 +2119,9 @@ class TestSetPort(TestPort):
|
|||||||
self.assertIsNone(result)
|
self.assertIsNone(result)
|
||||||
|
|
||||||
def test_set_port_security_group_append(self):
|
def test_set_port_security_group_append(self):
|
||||||
sg_1 = network_fakes.FakeSecurityGroup.create_one_security_group()
|
sg_1 = network_fakes.create_one_security_group()
|
||||||
sg_2 = network_fakes.FakeSecurityGroup.create_one_security_group()
|
sg_2 = network_fakes.create_one_security_group()
|
||||||
sg_3 = network_fakes.FakeSecurityGroup.create_one_security_group()
|
sg_3 = network_fakes.create_one_security_group()
|
||||||
self.network_client.find_security_group = mock.Mock(
|
self.network_client.find_security_group = mock.Mock(
|
||||||
side_effect=[sg_2, sg_3]
|
side_effect=[sg_2, sg_3]
|
||||||
)
|
)
|
||||||
@ -2172,8 +2172,8 @@ class TestSetPort(TestPort):
|
|||||||
self.assertIsNone(result)
|
self.assertIsNone(result)
|
||||||
|
|
||||||
def test_set_port_security_group_replace(self):
|
def test_set_port_security_group_replace(self):
|
||||||
sg1 = network_fakes.FakeSecurityGroup.create_one_security_group()
|
sg1 = network_fakes.create_one_security_group()
|
||||||
sg2 = network_fakes.FakeSecurityGroup.create_one_security_group()
|
sg2 = network_fakes.create_one_security_group()
|
||||||
_testport = network_fakes.create_one_port(
|
_testport = network_fakes.create_one_port(
|
||||||
{'security_group_ids': [sg1.id]}
|
{'security_group_ids': [sg1.id]}
|
||||||
)
|
)
|
||||||
@ -2821,8 +2821,8 @@ class TestUnsetPort(TestPort):
|
|||||||
)
|
)
|
||||||
|
|
||||||
def test_unset_security_group(self):
|
def test_unset_security_group(self):
|
||||||
_fake_sg1 = network_fakes.FakeSecurityGroup.create_one_security_group()
|
_fake_sg1 = network_fakes.create_one_security_group()
|
||||||
_fake_sg2 = network_fakes.FakeSecurityGroup.create_one_security_group()
|
_fake_sg2 = network_fakes.create_one_security_group()
|
||||||
_fake_port = network_fakes.create_one_port(
|
_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]}
|
||||||
)
|
)
|
||||||
@ -2849,8 +2849,8 @@ class TestUnsetPort(TestPort):
|
|||||||
self.assertIsNone(result)
|
self.assertIsNone(result)
|
||||||
|
|
||||||
def test_unset_port_security_group_not_existent(self):
|
def test_unset_port_security_group_not_existent(self):
|
||||||
_fake_sg1 = network_fakes.FakeSecurityGroup.create_one_security_group()
|
_fake_sg1 = network_fakes.create_one_security_group()
|
||||||
_fake_sg2 = network_fakes.FakeSecurityGroup.create_one_security_group()
|
_fake_sg2 = network_fakes.create_one_security_group()
|
||||||
_fake_port = network_fakes.create_one_port(
|
_fake_port = network_fakes.create_one_port(
|
||||||
{'security_group_ids': [_fake_sg1.id]}
|
{'security_group_ids': [_fake_sg1.id]}
|
||||||
)
|
)
|
||||||
|
@ -34,9 +34,7 @@ class TestAddPortToRouter(TestRouter):
|
|||||||
'''Add port to Router'''
|
'''Add port to Router'''
|
||||||
|
|
||||||
_port = network_fakes.create_one_port()
|
_port = network_fakes.create_one_port()
|
||||||
_router = network_fakes.FakeRouter.create_one_router(
|
_router = network_fakes.create_one_router(attrs={'port': _port.id})
|
||||||
attrs={'port': _port.id}
|
|
||||||
)
|
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super().setUp()
|
super().setUp()
|
||||||
@ -84,9 +82,7 @@ class TestAddSubnetToRouter(TestRouter):
|
|||||||
'''Add subnet to Router'''
|
'''Add subnet to Router'''
|
||||||
|
|
||||||
_subnet = network_fakes.FakeSubnet.create_one_subnet()
|
_subnet = network_fakes.FakeSubnet.create_one_subnet()
|
||||||
_router = network_fakes.FakeRouter.create_one_router(
|
_router = network_fakes.create_one_router(attrs={'subnet': _subnet.id})
|
||||||
attrs={'subnet': _subnet.id}
|
|
||||||
)
|
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super().setUp()
|
super().setUp()
|
||||||
@ -129,38 +125,48 @@ class TestAddSubnetToRouter(TestRouter):
|
|||||||
|
|
||||||
class TestCreateRouter(TestRouter):
|
class TestCreateRouter(TestRouter):
|
||||||
# The new router created.
|
# The new router created.
|
||||||
new_router = network_fakes.FakeRouter.create_one_router()
|
new_router = network_fakes.create_one_router()
|
||||||
_extensions = {'fake': network_fakes.create_one_extension()}
|
_extensions = {'fake': network_fakes.create_one_extension()}
|
||||||
|
|
||||||
columns = (
|
columns = (
|
||||||
'admin_state_up',
|
'admin_state_up',
|
||||||
'availability_zone_hints',
|
'availability_zone_hints',
|
||||||
'availability_zones',
|
'availability_zones',
|
||||||
|
'created_at',
|
||||||
'description',
|
'description',
|
||||||
'distributed',
|
'distributed',
|
||||||
|
'enable_ndp_proxy',
|
||||||
'external_gateway_info',
|
'external_gateway_info',
|
||||||
|
'flavor_id',
|
||||||
'ha',
|
'ha',
|
||||||
'id',
|
'id',
|
||||||
'name',
|
'name',
|
||||||
'project_id',
|
'project_id',
|
||||||
|
'revision_number',
|
||||||
'routes',
|
'routes',
|
||||||
'status',
|
'status',
|
||||||
'tags',
|
'tags',
|
||||||
|
'updated_at',
|
||||||
)
|
)
|
||||||
data = (
|
data = (
|
||||||
router.AdminStateColumn(new_router.admin_state_up),
|
router.AdminStateColumn(new_router.is_admin_state_up),
|
||||||
format_columns.ListColumn(new_router.availability_zone_hints),
|
format_columns.ListColumn(new_router.availability_zone_hints),
|
||||||
format_columns.ListColumn(new_router.availability_zones),
|
format_columns.ListColumn(new_router.availability_zones),
|
||||||
|
new_router.created_at,
|
||||||
new_router.description,
|
new_router.description,
|
||||||
new_router.distributed,
|
new_router.is_distributed,
|
||||||
|
new_router.enable_ndp_proxy,
|
||||||
router.RouterInfoColumn(new_router.external_gateway_info),
|
router.RouterInfoColumn(new_router.external_gateway_info),
|
||||||
new_router.ha,
|
new_router.flavor_id,
|
||||||
|
new_router.is_ha,
|
||||||
new_router.id,
|
new_router.id,
|
||||||
new_router.name,
|
new_router.name,
|
||||||
new_router.project_id,
|
new_router.project_id,
|
||||||
|
new_router.revision_number,
|
||||||
router.RoutesColumn(new_router.routes),
|
router.RoutesColumn(new_router.routes),
|
||||||
new_router.status,
|
new_router.status,
|
||||||
format_columns.ListColumn(new_router.tags),
|
format_columns.ListColumn(new_router.tags),
|
||||||
|
new_router.updated_at,
|
||||||
)
|
)
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
@ -614,14 +620,14 @@ class TestCreateRouter(TestRouter):
|
|||||||
|
|
||||||
class TestDeleteRouter(TestRouter):
|
class TestDeleteRouter(TestRouter):
|
||||||
# The routers to delete.
|
# The routers to delete.
|
||||||
_routers = network_fakes.FakeRouter.create_routers(count=2)
|
_routers = network_fakes.create_routers(count=2)
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super().setUp()
|
super().setUp()
|
||||||
|
|
||||||
self.network_client.delete_router = mock.Mock(return_value=None)
|
self.network_client.delete_router = mock.Mock(return_value=None)
|
||||||
|
|
||||||
self.network_client.find_router = network_fakes.FakeRouter.get_routers(
|
self.network_client.find_router = network_fakes.get_routers(
|
||||||
self._routers
|
self._routers
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -696,7 +702,7 @@ class TestDeleteRouter(TestRouter):
|
|||||||
|
|
||||||
class TestListRouter(TestRouter):
|
class TestListRouter(TestRouter):
|
||||||
# The routers going to be listed up.
|
# The routers going to be listed up.
|
||||||
routers = network_fakes.FakeRouter.create_routers(count=3)
|
routers = network_fakes.create_routers(count=3)
|
||||||
extensions = network_fakes.create_one_extension()
|
extensions = network_fakes.create_one_extension()
|
||||||
|
|
||||||
columns = (
|
columns = (
|
||||||
@ -727,10 +733,10 @@ class TestListRouter(TestRouter):
|
|||||||
r.id,
|
r.id,
|
||||||
r.name,
|
r.name,
|
||||||
r.status,
|
r.status,
|
||||||
router.AdminStateColumn(r.admin_state_up),
|
router.AdminStateColumn(r.is_admin_state_up),
|
||||||
r.project_id,
|
r.project_id,
|
||||||
r.distributed,
|
r.is_distributed,
|
||||||
r.ha,
|
r.is_ha,
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -813,7 +819,7 @@ class TestListRouter(TestRouter):
|
|||||||
self.assertCountEqual(self.data, list(data))
|
self.assertCountEqual(self.data, list(data))
|
||||||
|
|
||||||
def test_router_list_no_ha_no_distributed(self):
|
def test_router_list_no_ha_no_distributed(self):
|
||||||
_routers = network_fakes.FakeRouter.create_routers(
|
_routers = network_fakes.create_routers(
|
||||||
{'ha': None, 'distributed': None}, count=3
|
{'ha': None, 'distributed': None}, count=3
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -1033,9 +1039,7 @@ class TestRemovePortFromRouter(TestRouter):
|
|||||||
'''Remove port from a Router'''
|
'''Remove port from a Router'''
|
||||||
|
|
||||||
_port = network_fakes.create_one_port()
|
_port = network_fakes.create_one_port()
|
||||||
_router = network_fakes.FakeRouter.create_one_router(
|
_router = network_fakes.create_one_router(attrs={'port': _port.id})
|
||||||
attrs={'port': _port.id}
|
|
||||||
)
|
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super().setUp()
|
super().setUp()
|
||||||
@ -1080,9 +1084,7 @@ class TestRemoveSubnetFromRouter(TestRouter):
|
|||||||
'''Remove subnet from Router'''
|
'''Remove subnet from Router'''
|
||||||
|
|
||||||
_subnet = network_fakes.FakeSubnet.create_one_subnet()
|
_subnet = network_fakes.FakeSubnet.create_one_subnet()
|
||||||
_router = network_fakes.FakeRouter.create_one_router(
|
_router = network_fakes.create_one_router(attrs={'subnet': _subnet.id})
|
||||||
attrs={'subnet': _subnet.id}
|
|
||||||
)
|
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super().setUp()
|
super().setUp()
|
||||||
@ -1123,7 +1125,7 @@ class TestRemoveSubnetFromRouter(TestRouter):
|
|||||||
|
|
||||||
|
|
||||||
class TestAddExtraRoutesToRouter(TestRouter):
|
class TestAddExtraRoutesToRouter(TestRouter):
|
||||||
_router = network_fakes.FakeRouter.create_one_router()
|
_router = network_fakes.create_one_router()
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super().setUp()
|
super().setUp()
|
||||||
@ -1212,7 +1214,7 @@ class TestAddExtraRoutesToRouter(TestRouter):
|
|||||||
|
|
||||||
|
|
||||||
class TestRemoveExtraRoutesFromRouter(TestRouter):
|
class TestRemoveExtraRoutesFromRouter(TestRouter):
|
||||||
_router = network_fakes.FakeRouter.create_one_router()
|
_router = network_fakes.create_one_router()
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super().setUp()
|
super().setUp()
|
||||||
@ -1307,7 +1309,7 @@ class TestSetRouter(TestRouter):
|
|||||||
_subnet = network_fakes.FakeSubnet.create_one_subnet(
|
_subnet = network_fakes.FakeSubnet.create_one_subnet(
|
||||||
attrs={'network_id': _network.id}
|
attrs={'network_id': _network.id}
|
||||||
)
|
)
|
||||||
_router = network_fakes.FakeRouter.create_one_router(
|
_router = network_fakes.create_one_router(
|
||||||
attrs={'routes': [_default_route], 'tags': ['green', 'red']}
|
attrs={'routes': [_default_route], 'tags': ['green', 'red']}
|
||||||
)
|
)
|
||||||
_extensions = {'fake': network_fakes.create_one_extension()}
|
_extensions = {'fake': network_fakes.create_one_extension()}
|
||||||
@ -1454,7 +1456,7 @@ class TestSetRouter(TestRouter):
|
|||||||
self.assertIsNone(result)
|
self.assertIsNone(result)
|
||||||
|
|
||||||
def test_set_route_overwrite_route(self):
|
def test_set_route_overwrite_route(self):
|
||||||
_testrouter = network_fakes.FakeRouter.create_one_router(
|
_testrouter = network_fakes.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_client.find_router = mock.Mock(return_value=_testrouter)
|
self.network_client.find_router = mock.Mock(return_value=_testrouter)
|
||||||
@ -1753,7 +1755,7 @@ class TestSetRouter(TestRouter):
|
|||||||
self.network_client.find_qos_policy = mock.Mock(
|
self.network_client.find_qos_policy = mock.Mock(
|
||||||
return_value=qos_policy
|
return_value=qos_policy
|
||||||
)
|
)
|
||||||
router = network_fakes.FakeRouter.create_one_router()
|
router = network_fakes.create_one_router()
|
||||||
self.network_client.find_router = mock.Mock(return_value=router)
|
self.network_client.find_router = mock.Mock(return_value=router)
|
||||||
arglist = [
|
arglist = [
|
||||||
"--qos-policy",
|
"--qos-policy",
|
||||||
@ -1775,7 +1777,7 @@ class TestSetRouter(TestRouter):
|
|||||||
self.network_client.find_qos_policy = mock.Mock(
|
self.network_client.find_qos_policy = mock.Mock(
|
||||||
return_value=qos_policy
|
return_value=qos_policy
|
||||||
)
|
)
|
||||||
router = network_fakes.FakeRouter.create_one_router()
|
router = network_fakes.create_one_router()
|
||||||
self.network_client.find_router = mock.Mock(return_value=router)
|
self.network_client.find_router = mock.Mock(return_value=router)
|
||||||
arglist = [
|
arglist = [
|
||||||
"--no-qos-policy",
|
"--no-qos-policy",
|
||||||
@ -1793,7 +1795,7 @@ class TestSetRouter(TestRouter):
|
|||||||
|
|
||||||
class TestShowRouter(TestRouter):
|
class TestShowRouter(TestRouter):
|
||||||
# The router to set.
|
# The router to set.
|
||||||
_router = network_fakes.FakeRouter.create_one_router()
|
_router = network_fakes.create_one_router()
|
||||||
_port = network_fakes.create_one_port(
|
_port = network_fakes.create_one_port(
|
||||||
{'device_owner': 'network:router_interface', 'device_id': _router.id}
|
{'device_owner': 'network:router_interface', 'device_id': _router.id}
|
||||||
)
|
)
|
||||||
@ -1813,33 +1815,43 @@ class TestShowRouter(TestRouter):
|
|||||||
'admin_state_up',
|
'admin_state_up',
|
||||||
'availability_zone_hints',
|
'availability_zone_hints',
|
||||||
'availability_zones',
|
'availability_zones',
|
||||||
|
'created_at',
|
||||||
'description',
|
'description',
|
||||||
'distributed',
|
'distributed',
|
||||||
|
'enable_ndp_proxy',
|
||||||
'external_gateway_info',
|
'external_gateway_info',
|
||||||
|
'flavor_id',
|
||||||
'ha',
|
'ha',
|
||||||
'id',
|
'id',
|
||||||
'interfaces_info',
|
'interfaces_info',
|
||||||
'name',
|
'name',
|
||||||
'project_id',
|
'project_id',
|
||||||
|
'revision_number',
|
||||||
'routes',
|
'routes',
|
||||||
'status',
|
'status',
|
||||||
'tags',
|
'tags',
|
||||||
|
'updated_at',
|
||||||
)
|
)
|
||||||
data = (
|
data = (
|
||||||
router.AdminStateColumn(_router.admin_state_up),
|
router.AdminStateColumn(_router.is_admin_state_up),
|
||||||
format_columns.ListColumn(_router.availability_zone_hints),
|
format_columns.ListColumn(_router.availability_zone_hints),
|
||||||
format_columns.ListColumn(_router.availability_zones),
|
format_columns.ListColumn(_router.availability_zones),
|
||||||
|
_router.created_at,
|
||||||
_router.description,
|
_router.description,
|
||||||
_router.distributed,
|
_router.is_distributed,
|
||||||
|
_router.enable_ndp_proxy,
|
||||||
router.RouterInfoColumn(_router.external_gateway_info),
|
router.RouterInfoColumn(_router.external_gateway_info),
|
||||||
_router.ha,
|
_router.flavor_id,
|
||||||
|
_router.is_ha,
|
||||||
_router.id,
|
_router.id,
|
||||||
router.RouterInfoColumn(_router.interfaces_info),
|
router.RouterInfoColumn(_router.interfaces_info),
|
||||||
_router.name,
|
_router.name,
|
||||||
_router.project_id,
|
_router.project_id,
|
||||||
|
_router.revision_number,
|
||||||
router.RoutesColumn(_router.routes),
|
router.RoutesColumn(_router.routes),
|
||||||
_router.status,
|
_router.status,
|
||||||
format_columns.ListColumn(_router.tags),
|
format_columns.ListColumn(_router.tags),
|
||||||
|
_router.updated_at,
|
||||||
)
|
)
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
@ -1884,7 +1896,7 @@ class TestShowRouter(TestRouter):
|
|||||||
self.assertCountEqual(self.data, data)
|
self.assertCountEqual(self.data, data)
|
||||||
|
|
||||||
def test_show_no_ha_no_distributed(self):
|
def test_show_no_ha_no_distributed(self):
|
||||||
_router = network_fakes.FakeRouter.create_one_router(
|
_router = network_fakes.create_one_router(
|
||||||
{'ha': None, 'distributed': None}
|
{'ha': None, 'distributed': None}
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -1905,7 +1917,7 @@ class TestShowRouter(TestRouter):
|
|||||||
self.assertNotIn("is_ha", columns)
|
self.assertNotIn("is_ha", columns)
|
||||||
|
|
||||||
def test_show_no_extra_route_extension(self):
|
def test_show_no_extra_route_extension(self):
|
||||||
_router = network_fakes.FakeRouter.create_one_router({'routes': None})
|
_router = network_fakes.create_one_router({'routes': None})
|
||||||
|
|
||||||
arglist = [
|
arglist = [
|
||||||
_router.name,
|
_router.name,
|
||||||
@ -1929,7 +1941,7 @@ class TestUnsetRouter(TestRouter):
|
|||||||
super().setUp()
|
super().setUp()
|
||||||
self.fake_network = network_fakes.create_one_network()
|
self.fake_network = network_fakes.create_one_network()
|
||||||
self.fake_qos_policy = network_fakes.create_one_qos_policy()
|
self.fake_qos_policy = network_fakes.create_one_qos_policy()
|
||||||
self._testrouter = network_fakes.FakeRouter.create_one_router(
|
self._testrouter = network_fakes.create_one_router(
|
||||||
{
|
{
|
||||||
'routes': [
|
'routes': [
|
||||||
{
|
{
|
||||||
@ -2100,7 +2112,7 @@ class TestUnsetRouter(TestRouter):
|
|||||||
self.network_client.find_qos_policy = mock.Mock(
|
self.network_client.find_qos_policy = mock.Mock(
|
||||||
return_value=qos_policy
|
return_value=qos_policy
|
||||||
)
|
)
|
||||||
router = network_fakes.FakeRouter.create_one_router()
|
router = network_fakes.create_one_router()
|
||||||
self.network_client.find_router = mock.Mock(return_value=router)
|
self.network_client.find_router = mock.Mock(return_value=router)
|
||||||
arglist = [
|
arglist = [
|
||||||
"--qos-policy",
|
"--qos-policy",
|
||||||
@ -2120,7 +2132,7 @@ class TestUnsetRouter(TestRouter):
|
|||||||
self.network_client.find_qos_policy = mock.Mock(
|
self.network_client.find_qos_policy = mock.Mock(
|
||||||
return_value=qos_policy
|
return_value=qos_policy
|
||||||
)
|
)
|
||||||
router = network_fakes.FakeRouter.create_one_router(
|
router = network_fakes.create_one_router(
|
||||||
{"external_gateway_info": {"network_id": "fake-id"}}
|
{"external_gateway_info": {"network_id": "fake-id"}}
|
||||||
)
|
)
|
||||||
self.network_client.find_router = mock.Mock(return_value=router)
|
self.network_client.find_router = mock.Mock(return_value=router)
|
||||||
@ -2145,7 +2157,7 @@ class TestGatewayOps(TestRouter):
|
|||||||
self._network = network_fakes.create_one_network()
|
self._network = network_fakes.create_one_network()
|
||||||
self._networks.append(self._network)
|
self._networks.append(self._network)
|
||||||
|
|
||||||
self._router = network_fakes.FakeRouter.create_one_router(
|
self._router = network_fakes.create_one_router(
|
||||||
{
|
{
|
||||||
'external_gateway_info': {
|
'external_gateway_info': {
|
||||||
'network_id': self._network.id,
|
'network_id': self._network.id,
|
||||||
@ -2189,16 +2201,21 @@ class TestCreateMultipleGateways(TestGatewayOps):
|
|||||||
'admin_state_up',
|
'admin_state_up',
|
||||||
'availability_zone_hints',
|
'availability_zone_hints',
|
||||||
'availability_zones',
|
'availability_zones',
|
||||||
|
'created_at',
|
||||||
'description',
|
'description',
|
||||||
'distributed',
|
'distributed',
|
||||||
|
'enable_ndp_proxy',
|
||||||
'external_gateway_info',
|
'external_gateway_info',
|
||||||
|
'flavor_id',
|
||||||
'ha',
|
'ha',
|
||||||
'id',
|
'id',
|
||||||
'name',
|
'name',
|
||||||
'project_id',
|
'project_id',
|
||||||
|
'revision_number',
|
||||||
'routes',
|
'routes',
|
||||||
'status',
|
'status',
|
||||||
'tags',
|
'tags',
|
||||||
|
'updated_at',
|
||||||
)
|
)
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
@ -2215,19 +2232,24 @@ class TestCreateMultipleGateways(TestGatewayOps):
|
|||||||
)
|
)
|
||||||
|
|
||||||
self._data = (
|
self._data = (
|
||||||
router.AdminStateColumn(self._router.admin_state_up),
|
router.AdminStateColumn(self._router.is_admin_state_up),
|
||||||
format_columns.ListColumn(self._router.availability_zone_hints),
|
format_columns.ListColumn(self._router.availability_zone_hints),
|
||||||
format_columns.ListColumn(self._router.availability_zones),
|
format_columns.ListColumn(self._router.availability_zones),
|
||||||
|
self._router.created_at,
|
||||||
self._router.description,
|
self._router.description,
|
||||||
self._router.distributed,
|
self._router.is_distributed,
|
||||||
|
self._router.enable_ndp_proxy,
|
||||||
router.RouterInfoColumn(self._router.external_gateway_info),
|
router.RouterInfoColumn(self._router.external_gateway_info),
|
||||||
self._router.ha,
|
self._router.flavor_id,
|
||||||
|
self._router.is_ha,
|
||||||
self._router.id,
|
self._router.id,
|
||||||
self._router.name,
|
self._router.name,
|
||||||
self._router.project_id,
|
self._router.project_id,
|
||||||
|
self._router.revision_number,
|
||||||
router.RoutesColumn(self._router.routes),
|
router.RoutesColumn(self._router.routes),
|
||||||
self._router.status,
|
self._router.status,
|
||||||
format_columns.ListColumn(self._router.tags),
|
format_columns.ListColumn(self._router.tags),
|
||||||
|
self._router.updated_at,
|
||||||
)
|
)
|
||||||
self.cmd = router.CreateRouter(self.app, None)
|
self.cmd = router.CreateRouter(self.app, None)
|
||||||
|
|
||||||
|
@ -36,28 +36,32 @@ class TestCreateSecurityGroupNetwork(TestSecurityGroupNetwork):
|
|||||||
project = identity_fakes.FakeProject.create_one_project()
|
project = identity_fakes.FakeProject.create_one_project()
|
||||||
domain = identity_fakes.FakeDomain.create_one_domain()
|
domain = identity_fakes.FakeDomain.create_one_domain()
|
||||||
# The security group to be created.
|
# The security group to be created.
|
||||||
_security_group = (
|
_security_group = network_fakes.create_one_security_group()
|
||||||
network_fakes.FakeSecurityGroup.create_one_security_group()
|
|
||||||
)
|
|
||||||
|
|
||||||
columns = (
|
columns = (
|
||||||
|
'created_at',
|
||||||
'description',
|
'description',
|
||||||
'id',
|
'id',
|
||||||
'name',
|
'name',
|
||||||
'project_id',
|
'project_id',
|
||||||
|
'revision_number',
|
||||||
'rules',
|
'rules',
|
||||||
'stateful',
|
'stateful',
|
||||||
'tags',
|
'tags',
|
||||||
|
'updated_at',
|
||||||
)
|
)
|
||||||
|
|
||||||
data = (
|
data = (
|
||||||
|
_security_group.created_at,
|
||||||
_security_group.description,
|
_security_group.description,
|
||||||
_security_group.id,
|
_security_group.id,
|
||||||
_security_group.name,
|
_security_group.name,
|
||||||
_security_group.project_id,
|
_security_group.project_id,
|
||||||
|
_security_group.revision_number,
|
||||||
security_group.NetworkSecurityGroupRulesColumn([]),
|
security_group.NetworkSecurityGroupRulesColumn([]),
|
||||||
_security_group.stateful,
|
_security_group.stateful,
|
||||||
_security_group.tags,
|
_security_group.tags,
|
||||||
|
_security_group.updated_at,
|
||||||
)
|
)
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
@ -163,7 +167,7 @@ class TestCreateSecurityGroupNetwork(TestSecurityGroupNetwork):
|
|||||||
else:
|
else:
|
||||||
self.assertFalse(self.network_client.set_tags.called)
|
self.assertFalse(self.network_client.set_tags.called)
|
||||||
self.assertEqual(self.columns, columns)
|
self.assertEqual(self.columns, columns)
|
||||||
self.assertCountEqual(self.data, data)
|
self.assertEqual(self.data, data)
|
||||||
|
|
||||||
def test_create_with_tags(self):
|
def test_create_with_tags(self):
|
||||||
self._test_create_with_tag(add_tags=True)
|
self._test_create_with_tag(add_tags=True)
|
||||||
@ -174,7 +178,7 @@ class TestCreateSecurityGroupNetwork(TestSecurityGroupNetwork):
|
|||||||
|
|
||||||
class TestDeleteSecurityGroupNetwork(TestSecurityGroupNetwork):
|
class TestDeleteSecurityGroupNetwork(TestSecurityGroupNetwork):
|
||||||
# The security groups to be deleted.
|
# The security groups to be deleted.
|
||||||
_security_groups = network_fakes.FakeSecurityGroup.create_security_groups()
|
_security_groups = network_fakes.create_security_groups()
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super().setUp()
|
super().setUp()
|
||||||
@ -184,9 +188,7 @@ class TestDeleteSecurityGroupNetwork(TestSecurityGroupNetwork):
|
|||||||
)
|
)
|
||||||
|
|
||||||
self.network_client.find_security_group = (
|
self.network_client.find_security_group = (
|
||||||
network_fakes.FakeSecurityGroup.get_security_groups(
|
network_fakes.get_security_groups(self._security_groups)
|
||||||
self._security_groups
|
|
||||||
)
|
|
||||||
)
|
)
|
||||||
|
|
||||||
# Get the command object to test
|
# Get the command object to test
|
||||||
@ -264,9 +266,7 @@ class TestDeleteSecurityGroupNetwork(TestSecurityGroupNetwork):
|
|||||||
|
|
||||||
class TestListSecurityGroupNetwork(TestSecurityGroupNetwork):
|
class TestListSecurityGroupNetwork(TestSecurityGroupNetwork):
|
||||||
# The security group to be listed.
|
# The security group to be listed.
|
||||||
_security_groups = network_fakes.FakeSecurityGroup.create_security_groups(
|
_security_groups = network_fakes.create_security_groups(count=3)
|
||||||
count=3
|
|
||||||
)
|
|
||||||
|
|
||||||
columns = (
|
columns = (
|
||||||
'ID',
|
'ID',
|
||||||
@ -412,10 +412,8 @@ class TestListSecurityGroupNetwork(TestSecurityGroupNetwork):
|
|||||||
|
|
||||||
class TestSetSecurityGroupNetwork(TestSecurityGroupNetwork):
|
class TestSetSecurityGroupNetwork(TestSecurityGroupNetwork):
|
||||||
# The security group to be set.
|
# The security group to be set.
|
||||||
_security_group = (
|
_security_group = network_fakes.create_one_security_group(
|
||||||
network_fakes.FakeSecurityGroup.create_one_security_group(
|
attrs={'tags': ['green', 'red']}
|
||||||
attrs={'tags': ['green', 'red']}
|
|
||||||
)
|
|
||||||
)
|
)
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
@ -515,37 +513,39 @@ class TestSetSecurityGroupNetwork(TestSecurityGroupNetwork):
|
|||||||
|
|
||||||
class TestShowSecurityGroupNetwork(TestSecurityGroupNetwork):
|
class TestShowSecurityGroupNetwork(TestSecurityGroupNetwork):
|
||||||
# The security group rule to be shown with the group.
|
# The security group rule to be shown with the group.
|
||||||
_security_group_rule = (
|
_security_group_rule = network_fakes.create_one_security_group_rule()
|
||||||
network_fakes.FakeSecurityGroupRule.create_one_security_group_rule()
|
|
||||||
)
|
|
||||||
|
|
||||||
# The security group to be shown.
|
# The security group to be shown.
|
||||||
_security_group = (
|
_security_group = network_fakes.create_one_security_group(
|
||||||
network_fakes.FakeSecurityGroup.create_one_security_group(
|
attrs={'security_group_rules': [dict(_security_group_rule)]}
|
||||||
attrs={'security_group_rules': [_security_group_rule._info]}
|
|
||||||
)
|
|
||||||
)
|
)
|
||||||
|
|
||||||
columns = (
|
columns = (
|
||||||
|
'created_at',
|
||||||
'description',
|
'description',
|
||||||
'id',
|
'id',
|
||||||
'name',
|
'name',
|
||||||
'project_id',
|
'project_id',
|
||||||
|
'revision_number',
|
||||||
'rules',
|
'rules',
|
||||||
'stateful',
|
'stateful',
|
||||||
'tags',
|
'tags',
|
||||||
|
'updated_at',
|
||||||
)
|
)
|
||||||
|
|
||||||
data = (
|
data = (
|
||||||
|
_security_group.created_at,
|
||||||
_security_group.description,
|
_security_group.description,
|
||||||
_security_group.id,
|
_security_group.id,
|
||||||
_security_group.name,
|
_security_group.name,
|
||||||
_security_group.project_id,
|
_security_group.project_id,
|
||||||
|
_security_group.revision_number,
|
||||||
security_group.NetworkSecurityGroupRulesColumn(
|
security_group.NetworkSecurityGroupRulesColumn(
|
||||||
[_security_group_rule._info]
|
[dict(_security_group_rule)]
|
||||||
),
|
),
|
||||||
_security_group.stateful,
|
_security_group.stateful,
|
||||||
_security_group.tags,
|
_security_group.tags,
|
||||||
|
_security_group.updated_at,
|
||||||
)
|
)
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
@ -583,10 +583,8 @@ class TestShowSecurityGroupNetwork(TestSecurityGroupNetwork):
|
|||||||
|
|
||||||
class TestUnsetSecurityGroupNetwork(TestSecurityGroupNetwork):
|
class TestUnsetSecurityGroupNetwork(TestSecurityGroupNetwork):
|
||||||
# The security group to be unset.
|
# The security group to be unset.
|
||||||
_security_group = (
|
_security_group = network_fakes.create_one_security_group(
|
||||||
network_fakes.FakeSecurityGroup.create_one_security_group(
|
attrs={'tags': ['green', 'red']}
|
||||||
attrs={'tags': ['green', 'red']}
|
|
||||||
)
|
|
||||||
)
|
)
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
|
@ -40,14 +40,13 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
|
|||||||
_security_group_rule = None
|
_security_group_rule = None
|
||||||
|
|
||||||
# The security group that will contain the rule created.
|
# The security group that will contain the rule created.
|
||||||
_security_group = (
|
_security_group = network_fakes.create_one_security_group()
|
||||||
network_fakes.FakeSecurityGroup.create_one_security_group()
|
|
||||||
)
|
|
||||||
|
|
||||||
# The address group to be used in security group rules
|
# The address group to be used in security group rules
|
||||||
_address_group = network_fakes.create_one_address_group()
|
_address_group = network_fakes.create_one_address_group()
|
||||||
|
|
||||||
expected_columns = (
|
expected_columns = (
|
||||||
|
'created_at',
|
||||||
'description',
|
'description',
|
||||||
'direction',
|
'direction',
|
||||||
'ether_type',
|
'ether_type',
|
||||||
@ -59,21 +58,22 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
|
|||||||
'remote_address_group_id',
|
'remote_address_group_id',
|
||||||
'remote_group_id',
|
'remote_group_id',
|
||||||
'remote_ip_prefix',
|
'remote_ip_prefix',
|
||||||
|
'revision_number',
|
||||||
'security_group_id',
|
'security_group_id',
|
||||||
|
'updated_at',
|
||||||
)
|
)
|
||||||
|
|
||||||
expected_data = None
|
expected_data = None
|
||||||
|
|
||||||
def _setup_security_group_rule(self, attrs=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(
|
network_fakes.create_one_security_group_rule(attrs)
|
||||||
attrs
|
|
||||||
)
|
|
||||||
)
|
)
|
||||||
self.network_client.create_security_group_rule = mock.Mock(
|
self.network_client.create_security_group_rule = mock.Mock(
|
||||||
return_value=self._security_group_rule
|
return_value=self._security_group_rule
|
||||||
)
|
)
|
||||||
self.expected_data = (
|
self.expected_data = (
|
||||||
|
self._security_group_rule.created_at,
|
||||||
self._security_group_rule.description,
|
self._security_group_rule.description,
|
||||||
self._security_group_rule.direction,
|
self._security_group_rule.direction,
|
||||||
self._security_group_rule.ether_type,
|
self._security_group_rule.ether_type,
|
||||||
@ -85,7 +85,9 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
|
|||||||
self._security_group_rule.remote_address_group_id,
|
self._security_group_rule.remote_address_group_id,
|
||||||
self._security_group_rule.remote_group_id,
|
self._security_group_rule.remote_group_id,
|
||||||
self._security_group_rule.remote_ip_prefix,
|
self._security_group_rule.remote_ip_prefix,
|
||||||
|
self._security_group_rule.revision_number,
|
||||||
self._security_group_rule.security_group_id,
|
self._security_group_rule.security_group_id,
|
||||||
|
self._security_group_rule.updated_at,
|
||||||
)
|
)
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
@ -963,11 +965,7 @@ class TestCreateSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
|
|||||||
|
|
||||||
class TestDeleteSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
|
class TestDeleteSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
|
||||||
# The security group rules to be deleted.
|
# The security group rules to be deleted.
|
||||||
_security_group_rules = (
|
_security_group_rules = network_fakes.create_security_group_rules(count=2)
|
||||||
network_fakes.FakeSecurityGroupRule.create_security_group_rules(
|
|
||||||
count=2
|
|
||||||
)
|
|
||||||
)
|
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
super().setUp()
|
super().setUp()
|
||||||
@ -977,9 +975,7 @@ class TestDeleteSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
|
|||||||
)
|
)
|
||||||
|
|
||||||
self.network_client.find_security_group_rule = (
|
self.network_client.find_security_group_rule = (
|
||||||
network_fakes.FakeSecurityGroupRule.get_security_group_rules(
|
network_fakes.get_security_group_rules(self._security_group_rules)
|
||||||
self._security_group_rules
|
|
||||||
)
|
|
||||||
)
|
)
|
||||||
|
|
||||||
# Get the command object to test
|
# Get the command object to test
|
||||||
@ -1057,33 +1053,27 @@ class TestDeleteSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
|
|||||||
|
|
||||||
class TestListSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
|
class TestListSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
|
||||||
# The security group to hold the rules.
|
# The security group to hold the rules.
|
||||||
_security_group = (
|
_security_group = network_fakes.create_one_security_group()
|
||||||
network_fakes.FakeSecurityGroup.create_one_security_group()
|
|
||||||
)
|
|
||||||
|
|
||||||
# The security group rule to be listed.
|
# The security group rule to be listed.
|
||||||
_security_group_rule_tcp = (
|
_security_group_rule_tcp = network_fakes.create_one_security_group_rule(
|
||||||
network_fakes.FakeSecurityGroupRule.create_one_security_group_rule(
|
{
|
||||||
{
|
'protocol': 'tcp',
|
||||||
'protocol': 'tcp',
|
'port_range_max': 80,
|
||||||
'port_range_max': 80,
|
'port_range_min': 80,
|
||||||
'port_range_min': 80,
|
'security_group_id': _security_group.id,
|
||||||
'security_group_id': _security_group.id,
|
}
|
||||||
}
|
|
||||||
)
|
|
||||||
)
|
)
|
||||||
_security_group_rule_icmp = (
|
_security_group_rule_icmp = network_fakes.create_one_security_group_rule(
|
||||||
network_fakes.FakeSecurityGroupRule.create_one_security_group_rule(
|
{
|
||||||
{
|
'protocol': 'icmp',
|
||||||
'protocol': 'icmp',
|
'remote_ip_prefix': '10.0.2.0/24',
|
||||||
'remote_ip_prefix': '10.0.2.0/24',
|
'security_group_id': _security_group.id,
|
||||||
'security_group_id': _security_group.id,
|
}
|
||||||
}
|
|
||||||
)
|
|
||||||
)
|
)
|
||||||
_security_group.security_group_rules = [
|
_security_group.security_group_rules = [
|
||||||
_security_group_rule_tcp._info,
|
dict(_security_group_rule_tcp),
|
||||||
_security_group_rule_icmp._info,
|
dict(_security_group_rule_icmp),
|
||||||
]
|
]
|
||||||
_security_group_rules = [
|
_security_group_rules = [
|
||||||
_security_group_rule_tcp,
|
_security_group_rule_tcp,
|
||||||
@ -1264,11 +1254,10 @@ class TestListSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
|
|||||||
|
|
||||||
class TestShowSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
|
class TestShowSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
|
||||||
# The security group rule to be shown.
|
# The security group rule to be shown.
|
||||||
_security_group_rule = (
|
_security_group_rule = network_fakes.create_one_security_group_rule()
|
||||||
network_fakes.FakeSecurityGroupRule.create_one_security_group_rule()
|
|
||||||
)
|
|
||||||
|
|
||||||
columns = (
|
columns = (
|
||||||
|
'created_at',
|
||||||
'description',
|
'description',
|
||||||
'direction',
|
'direction',
|
||||||
'ether_type',
|
'ether_type',
|
||||||
@ -1280,10 +1269,13 @@ class TestShowSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
|
|||||||
'remote_address_group_id',
|
'remote_address_group_id',
|
||||||
'remote_group_id',
|
'remote_group_id',
|
||||||
'remote_ip_prefix',
|
'remote_ip_prefix',
|
||||||
|
'revision_number',
|
||||||
'security_group_id',
|
'security_group_id',
|
||||||
|
'updated_at',
|
||||||
)
|
)
|
||||||
|
|
||||||
data = (
|
data = (
|
||||||
|
_security_group_rule.created_at,
|
||||||
_security_group_rule.description,
|
_security_group_rule.description,
|
||||||
_security_group_rule.direction,
|
_security_group_rule.direction,
|
||||||
_security_group_rule.ether_type,
|
_security_group_rule.ether_type,
|
||||||
@ -1295,7 +1287,9 @@ class TestShowSecurityGroupRuleNetwork(TestSecurityGroupRuleNetwork):
|
|||||||
_security_group_rule.remote_address_group_id,
|
_security_group_rule.remote_address_group_id,
|
||||||
_security_group_rule.remote_group_id,
|
_security_group_rule.remote_group_id,
|
||||||
_security_group_rule.remote_ip_prefix,
|
_security_group_rule.remote_ip_prefix,
|
||||||
|
_security_group_rule.revision_number,
|
||||||
_security_group_rule.security_group_id,
|
_security_group_rule.security_group_id,
|
||||||
|
_security_group_rule.updated_at,
|
||||||
)
|
)
|
||||||
|
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
|
Loading…
x
Reference in New Issue
Block a user