diff options
| author | Akihiro Motoki <amotoki@gmail.com> | 2017-05-03 14:19:27 +0000 |
|---|---|---|
| committer | Dean Troyer <dtroyer@gmail.com> | 2019-05-09 21:51:57 -0500 |
| commit | c44f26eb7e41c28bb13ef9bd31c8ddda9e638862 (patch) | |
| tree | 062fc4fea3e465ac7da63516ee77489e1acbc45a /openstackclient/tests/functional/network | |
| parent | 6385d64237c9973dd4c7dd53efb6664ea2c719da (diff) | |
| download | python-openstackclient-c44f26eb7e41c28bb13ef9bd31c8ddda9e638862.tar.gz | |
Use cliff formattable columns in network commands
Use cliff formattable columns not to convert complex fields
into a string when a machine readable format like JSON or YAML
is requested.
Partial-Bug: #1687955
Partially implement blueprint osc-formattable-columns
Change-Id: I9878f327e39f56852cc0fb6e4eee9105b7141da9
Diffstat (limited to 'openstackclient/tests/functional/network')
7 files changed, 38 insertions, 53 deletions
diff --git a/openstackclient/tests/functional/network/v2/common.py b/openstackclient/tests/functional/network/v2/common.py index 5243ecd0..2287f329 100644 --- a/openstackclient/tests/functional/network/v2/common.py +++ b/openstackclient/tests/functional/network/v2/common.py @@ -62,21 +62,13 @@ class NetworkTagTests(NetworkTests): self._set_resource_and_tag_check('unset', name1, '--all-tag', []) self._set_resource_and_tag_check('set', name2, '--no-tag', []) - def _assertTagsEqual(self, expected, actual): - # TODO(amotoki): Should migrate to cliff format columns. - # At now, unit test assert method needs to be replaced - # to handle format columns, so format_list() is used. - # NOTE: The order of tag is undeterminestic. - actual_tags = filter(bool, actual.split(', ')) - self.assertEqual(set(expected), set(actual_tags)) - def _list_tag_check(self, project_id, expected): cmd_output = json.loads(self.openstack( '{} list --long --project {} -f json'.format(self.base_command, project_id))) for name, tags in expected: net = [n for n in cmd_output if n['Name'] == name][0] - self._assertTagsEqual(tags, net['Tags']) + self.assertEqual(set(tags), set(net['Tags'])) def _create_resource_for_tag_test(self, name, args): return json.loads(self.openstack( @@ -89,7 +81,7 @@ class NetworkTagTests(NetworkTests): self.addCleanup( self.openstack, '{} delete {}'.format(self.base_command, name)) self.assertIsNotNone(cmd_output["id"]) - self._assertTagsEqual(expected, cmd_output['tags']) + self.assertEqual(set(expected), set(cmd_output['tags'])) return name def _set_resource_and_tag_check(self, command, name, args, expected): @@ -100,4 +92,4 @@ class NetworkTagTests(NetworkTests): cmd_output = json.loads(self.openstack( '{} show -f json {}'.format(self.base_command, name) )) - self._assertTagsEqual(expected, cmd_output['tags']) + self.assertEqual(set(expected), set(cmd_output['tags'])) diff --git a/openstackclient/tests/functional/network/v2/test_network.py b/openstackclient/tests/functional/network/v2/test_network.py index 1a744969..71b533ed 100644 --- a/openstackclient/tests/functional/network/v2/test_network.py +++ b/openstackclient/tests/functional/network/v2/test_network.py @@ -120,14 +120,14 @@ class NetworkTests(common.NetworkTagTests): cmd_output["description"], ) self.assertEqual( - 'UP', + True, cmd_output["admin_state_up"], ) self.assertFalse( cmd_output["shared"], ) self.assertEqual( - 'Internal', + False, cmd_output["router:external"], ) @@ -231,12 +231,12 @@ class NetworkTests(common.NetworkTagTests): ) # Check the default values self.assertEqual( - 'UP', + True, cmd_output["admin_state_up"], ) self.assertFalse(cmd_output["shared"]) self.assertEqual( - 'Internal', + False, cmd_output["router:external"], ) self.assertFalse(cmd_output["is_default"]) @@ -266,7 +266,7 @@ class NetworkTests(common.NetworkTagTests): cmd_output["description"], ) self.assertEqual( - 'DOWN', + False, cmd_output["admin_state_up"], ) self.assertTrue(cmd_output["shared"]) @@ -398,12 +398,12 @@ class NetworkTests(common.NetworkTagTests): cmd_output["description"], ) self.assertEqual( - 'UP', + True, cmd_output["admin_state_up"], ) self.assertFalse(cmd_output["shared"]) self.assertEqual( - 'Internal', + False, cmd_output["router:external"], ) @@ -432,12 +432,12 @@ class NetworkTests(common.NetworkTagTests): cmd_output["description"], ) self.assertEqual( - 'DOWN', + False, cmd_output["admin_state_up"], ) self.assertTrue(cmd_output["shared"]) self.assertEqual( - 'External', + True, cmd_output["router:external"], ) self.assertFalse(cmd_output["is_default"]) diff --git a/openstackclient/tests/functional/network/v2/test_network_agent.py b/openstackclient/tests/functional/network/v2/test_network_agent.py index 86769e0c..963227de 100644 --- a/openstackclient/tests/functional/network/v2/test_network_agent.py +++ b/openstackclient/tests/functional/network/v2/test_network_agent.py @@ -59,7 +59,7 @@ class NetworkAgentTests(common.NetworkTests): 'network agent show -f json %s' % agent_ids[0] )) self.assertEqual( - "DOWN", + False, cmd_output['admin_state_up'], ) @@ -72,7 +72,7 @@ class NetworkAgentTests(common.NetworkTests): 'network agent show -f json %s' % agent_ids[0] )) self.assertEqual( - "UP", + True, cmd_output['admin_state_up'], ) diff --git a/openstackclient/tests/functional/network/v2/test_port.py b/openstackclient/tests/functional/network/v2/test_port.py index e3067d90..a20d2043 100644 --- a/openstackclient/tests/functional/network/v2/test_port.py +++ b/openstackclient/tests/functional/network/v2/test_port.py @@ -155,7 +155,7 @@ class PortTests(common.NetworkTagTests): self.addCleanup(self.openstack, 'port delete %s' % id1) self.assertEqual(name, json_output.get('name')) self.assertEqual('xyzpdq', json_output.get('description')) - self.assertEqual('DOWN', json_output.get('admin_state_up')) + self.assertEqual(False, json_output.get('admin_state_up')) raw_output = self.openstack( 'port set --enable %s' % @@ -166,11 +166,11 @@ class PortTests(common.NetworkTagTests): json_output = json.loads(self.openstack( 'port show -f json %s' % name )) - sg_id = json_output.get('security_group_ids') + sg_id = json_output.get('security_group_ids')[0] self.assertEqual(name, json_output.get('name')) self.assertEqual('xyzpdq', json_output.get('description')) - self.assertEqual('UP', json_output.get('admin_state_up')) + self.assertEqual(True, json_output.get('admin_state_up')) self.assertIsNotNone(json_output.get('mac_address')) raw_output = self.openstack( @@ -180,7 +180,7 @@ class PortTests(common.NetworkTagTests): json_output = json.loads(self.openstack( 'port show -f json %s' % name )) - self.assertEqual('', json_output.get('security_group_ids')) + self.assertEqual([], json_output.get('security_group_ids')) def test_port_admin_set(self): """Test create, set (as admin), show, delete""" @@ -229,7 +229,7 @@ class PortTests(common.NetworkTagTests): id1 = json_output.get('id') self.addCleanup(self.openstack, 'port delete %s' % id1) self.assertEqual(name, json_output.get('name')) - self.assertEqual(sg_id1, json_output.get('security_group_ids')) + self.assertEqual([sg_id1], json_output.get('security_group_ids')) raw_output = self.openstack( 'port set ' @@ -242,16 +242,10 @@ class PortTests(common.NetworkTagTests): 'port show -f json %s' % name )) self.assertEqual(name, json_output.get('name')) - self.assertIn( - # TODO(dtroyer): output formatters should not mess with JSON! - sg_id1, - json_output.get('security_group_ids'), - ) - self.assertIn( - # TODO(dtroyer): output formatters should not mess with JSON! - sg_id2, - json_output.get('security_group_ids'), - ) + # NOTE(amotoki): The order of the field is not predictable, + self.assertIsInstance(json_output.get('security_group_ids'), list) + self.assertEqual(sorted([sg_id1, sg_id2]), + sorted(json_output.get('security_group_ids'))) raw_output = self.openstack( 'port unset --security-group %s %s' % (sg_id1, id1)) @@ -261,9 +255,8 @@ class PortTests(common.NetworkTagTests): 'port show -f json %s' % name )) self.assertEqual( - # TODO(dtroyer): output formatters should do this on JSON! - sg_id2, - json_output.get('security_group_ids'), + [sg_id2], + json_output.get('security_group_ids') ) def _create_resource_for_tag_test(self, name, args): diff --git a/openstackclient/tests/functional/network/v2/test_router.py b/openstackclient/tests/functional/network/v2/test_router.py index 9d5beff0..05aad7a0 100644 --- a/openstackclient/tests/functional/network/v2/test_router.py +++ b/openstackclient/tests/functional/network/v2/test_router.py @@ -90,7 +90,7 @@ class RouterTests(common.NetworkTagTests): cmd_output["name"], ) self.assertEqual( - "DOWN", + False, cmd_output["admin_state_up"], ) self.assertEqual( @@ -109,7 +109,7 @@ class RouterTests(common.NetworkTagTests): cmd_output["name"], ) self.assertEqual( - "UP", + True, cmd_output["admin_state_up"], ) self.assertEqual( @@ -230,7 +230,7 @@ class RouterTests(common.NetworkTagTests): cmd_output["description"], ) self.assertEqual( - 'DOWN', + False, cmd_output["admin_state_up"], ) diff --git a/openstackclient/tests/functional/network/v2/test_subnet.py b/openstackclient/tests/functional/network/v2/test_subnet.py index d5309ee6..38030e01 100644 --- a/openstackclient/tests/functional/network/v2/test_subnet.py +++ b/openstackclient/tests/functional/network/v2/test_subnet.py @@ -236,7 +236,7 @@ class SubnetTests(common.NetworkTagTests): cmd_output["gateway_ip"], ) self.assertEqual( - 'network:floatingip_agent_gateway', + ['network:floatingip_agent_gateway'], cmd_output["service_types"], ) @@ -253,7 +253,7 @@ class SubnetTests(common.NetworkTagTests): new_name )) self.assertEqual( - '', + [], cmd_output["service_types"], ) diff --git a/openstackclient/tests/functional/network/v2/test_subnet_pool.py b/openstackclient/tests/functional/network/v2/test_subnet_pool.py index 46aa6f14..dad97f84 100644 --- a/openstackclient/tests/functional/network/v2/test_subnet_pool.py +++ b/openstackclient/tests/functional/network/v2/test_subnet_pool.py @@ -38,7 +38,7 @@ class SubnetPoolTests(common.NetworkTagTests): cmd_output["name"] ) self.assertEqual( - pool_prefix, + [pool_prefix], cmd_output["prefixes"] ) @@ -50,7 +50,7 @@ class SubnetPoolTests(common.NetworkTagTests): cmd_output["name"] ) self.assertEqual( - pool_prefix, + [pool_prefix], cmd_output["prefixes"] ) @@ -104,7 +104,7 @@ class SubnetPoolTests(common.NetworkTagTests): cmd_output["project_id"], ) self.assertEqual( - pool_prefix, + [pool_prefix], cmd_output["prefixes"], ) @@ -126,7 +126,7 @@ class SubnetPoolTests(common.NetworkTagTests): cmd_output["project_id"], ) self.assertEqual( - pool_prefix, + [pool_prefix], cmd_output["prefixes"], ) @@ -193,7 +193,7 @@ class SubnetPoolTests(common.NetworkTagTests): cmd_output["description"], ) self.assertEqual( - pool_prefix, + [pool_prefix], cmd_output["prefixes"], ) self.assertEqual( @@ -239,9 +239,9 @@ class SubnetPoolTests(common.NetworkTagTests): 'bbbb', cmd_output["description"], ) - self.assertInOutput( - "10.110.0.0/16", - cmd_output["prefixes"], + self.assertEqual( + sorted(["10.110.0.0/16", pool_prefix]), + sorted(cmd_output["prefixes"]), ) self.assertEqual( 8, |
