From ac1ad1c4e4975c6c4278167273aefb5de90e1ed6 Mon Sep 17 00:00:00 2001 From: Stephen Finucane Date: Wed, 2 Apr 2025 12:36:23 +0100 Subject: [PATCH] Remove use of formatter function We also update tests to use proper SDK fakes so we actually test this. Change-Id: Ib98348cab613b7139f0faa0b5df90ff44353974f Signed-off-by: Stephen Finucane --- openstackclient/network/v2/floating_ip.py | 3 +- .../network/v2/test_floating_ip_network.py | 84 +++++++++++-------- 2 files changed, 51 insertions(+), 36 deletions(-) diff --git a/openstackclient/network/v2/floating_ip.py b/openstackclient/network/v2/floating_ip.py index a28a810aa2..ea1281177b 100644 --- a/openstackclient/network/v2/floating_ip.py +++ b/openstackclient/network/v2/floating_ip.py @@ -13,6 +13,7 @@ """IP Floating action implementations""" from openstack import exceptions as sdk_exceptions +from osc_lib.cli import format_columns from osc_lib import utils from osc_lib.utils import tags as _tag @@ -22,7 +23,7 @@ from openstackclient.identity import common as identity_common from openstackclient.network import common _formatters = { - 'port_details': utils.format_dict, + 'port_details': format_columns.DictColumn, } 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 34ca21ecd4..dcdeea9622 100644 --- a/openstackclient/tests/unit/network/v2/test_floating_ip_network.py +++ b/openstackclient/tests/unit/network/v2/test_floating_ip_network.py @@ -14,6 +14,9 @@ from unittest import mock from unittest.mock import call +from openstack.network.v2 import floating_ip as _floating_ip +from openstack.test import fakes as sdk_fakes +from osc_lib.cli import format_columns from osc_lib import exceptions from openstackclient.network.v2 import floating_ip as fip @@ -706,46 +709,57 @@ class TestListFloatingIPNetwork(TestFloatingIPNetwork): class TestShowFloatingIPNetwork(TestFloatingIPNetwork): - # The floating ip to display. - floating_ip = network_fakes.FakeFloatingIP.create_one_floating_ip() - - columns = ( - 'description', - 'dns_domain', - 'dns_name', - 'fixed_ip_address', - 'floating_ip_address', - 'floating_network_id', - 'id', - 'port_id', - 'project_id', - 'qos_policy_id', - 'router_id', - 'status', - 'tags', - ) - - data = ( - floating_ip.description, - floating_ip.dns_domain, - floating_ip.dns_name, - floating_ip.fixed_ip_address, - floating_ip.floating_ip_address, - floating_ip.floating_network_id, - floating_ip.id, - floating_ip.port_id, - floating_ip.project_id, - floating_ip.qos_policy_id, - floating_ip.router_id, - floating_ip.status, - floating_ip.tags, - ) - def setUp(self): super().setUp() + self.floating_ip = sdk_fakes.generate_fake_resource( + _floating_ip.FloatingIP + ) self.network_client.find_ip = mock.Mock(return_value=self.floating_ip) + self.columns = ( + 'created_at', + 'description', + 'dns_domain', + 'dns_name', + 'fixed_ip_address', + 'floating_ip_address', + 'floating_network_id', + 'id', + 'name', + 'port_details', + 'port_id', + 'project_id', + 'qos_policy_id', + 'revision_number', + 'router_id', + 'status', + 'subnet_id', + 'tags', + 'updated_at', + ) + self.data = ( + self.floating_ip.created_at, + self.floating_ip.description, + self.floating_ip.dns_domain, + self.floating_ip.dns_name, + self.floating_ip.fixed_ip_address, + self.floating_ip.floating_ip_address, + self.floating_ip.floating_network_id, + self.floating_ip.id, + self.floating_ip.name, + format_columns.DictColumn(self.floating_ip.port_details), + self.floating_ip.port_id, + self.floating_ip.project_id, + self.floating_ip.qos_policy_id, + self.floating_ip.revision_number, + self.floating_ip.router_id, + self.floating_ip.status, + self.floating_ip.subnet_id, + self.floating_ip.tags, + self.floating_ip.updated_at, + ) + # Get the command object to test self.cmd = fip.ShowFloatingIP(self.app, None)