Merge "Fix KeyError when filtering SG rule listing"
This commit is contained in:
@@ -134,7 +134,8 @@ class ListSecurityGroupRule(neutronV20.ListCommand):
|
||||
sec_group_ids = set()
|
||||
for rule in data:
|
||||
for key in self.replace_rules:
|
||||
sec_group_ids.add(rule[key])
|
||||
if key in rule:
|
||||
sec_group_ids.add(rule[key])
|
||||
sec_group_ids = list(sec_group_ids)
|
||||
|
||||
def _get_sec_group_list(sec_group_ids):
|
||||
@@ -164,7 +165,8 @@ class ListSecurityGroupRule(neutronV20.ListCommand):
|
||||
for sg in secgroups if sg['name']])
|
||||
for rule in data:
|
||||
for key in self.replace_rules:
|
||||
rule[key] = sg_dict.get(rule[key], rule[key])
|
||||
if key in rule:
|
||||
rule[key] = sg_dict.get(rule[key], rule[key])
|
||||
|
||||
def setup_columns(self, info, parsed_args):
|
||||
parsed_args.columns = self.replace_columns(parsed_args.columns,
|
||||
|
||||
@@ -189,14 +189,9 @@ class CLITestV20SecurityGroupsJSON(test_cli20.CLITestV20Base):
|
||||
mox.IgnoreArg())
|
||||
self._test_list_resources(resources, cmd, True)
|
||||
|
||||
def _test_extend_list(self, mox_calls):
|
||||
def _test_extend_list(self, mox_calls, data):
|
||||
resources = "security_groups"
|
||||
|
||||
data = [{'name': 'default',
|
||||
'security_group_id': 'secgroupid%02d' % i,
|
||||
'remote_group_id': 'remgroupid%02d' % i}
|
||||
for i in range(10)]
|
||||
|
||||
cmd = securitygroup.ListSecurityGroupRule(
|
||||
test_cli20.MyApp(sys.stdout), None)
|
||||
self.mox.StubOutWithMock(cmd, "get_client")
|
||||
@@ -226,8 +221,9 @@ class CLITestV20SecurityGroupsJSON(test_cli20.CLITestV20Base):
|
||||
sec_group_ids = set()
|
||||
for rule in data:
|
||||
for key in replace_rules:
|
||||
sec_group_ids.add(rule[key])
|
||||
response.append({'id': rule[key], 'name': 'default'})
|
||||
if rule.get(key):
|
||||
sec_group_ids.add(rule[key])
|
||||
response.append({'id': rule[key], 'name': 'default'})
|
||||
sec_group_ids = list(sec_group_ids)
|
||||
|
||||
result = []
|
||||
@@ -260,7 +256,10 @@ class CLITestV20SecurityGroupsJSON(test_cli20.CLITestV20Base):
|
||||
'X-Auth-Token', test_cli20.TOKEN)).AndReturn(
|
||||
responses[0]['response'])
|
||||
|
||||
self._test_extend_list(mox_calls)
|
||||
data = [{'name': 'default',
|
||||
'remote_group_id': 'remgroupid%02d' % i}
|
||||
for i in range(10)]
|
||||
self._test_extend_list(mox_calls, data)
|
||||
|
||||
def test_extend_list_exceed_max_uri_len(self):
|
||||
def mox_calls(path, data):
|
||||
@@ -282,7 +281,11 @@ class CLITestV20SecurityGroupsJSON(test_cli20.CLITestV20Base):
|
||||
'X-Auth-Token', test_cli20.TOKEN)).AndReturn(
|
||||
item['response'])
|
||||
|
||||
self._test_extend_list(mox_calls)
|
||||
data = [{'name': 'default',
|
||||
'security_group_id': 'secgroupid%02d' % i,
|
||||
'remote_group_id': 'remgroupid%02d' % i}
|
||||
for i in range(10)]
|
||||
self._test_extend_list(mox_calls, data)
|
||||
|
||||
def test_list_security_group_rules_pagination(self):
|
||||
resources = "security_group_rules"
|
||||
|
||||
Reference in New Issue
Block a user