diff options
author | Sylvain Bauza <sbauza@redhat.com> | 2023-05-03 17:00:14 +0200 |
---|---|---|
committer | Sylvain Bauza <sbauza@redhat.com> | 2023-05-03 17:00:14 +0200 |
commit | 6d7bd6a03446d5227d515b2b4c0da632ef4aa4a1 (patch) | |
tree | 73cf002122589a542d3f21e5c98a2e50b741c0cc /nova/tests | |
parent | 3d83bb3356e10355437851919e161f258cebf761 (diff) | |
download | nova-6d7bd6a03446d5227d515b2b4c0da632ef4aa4a1.tar.gz |
Fix get_segments_id with subnets without segment_id
Unfortunatly when we merged Ie166f3b51fddeaf916cda7c5ac34bbcdda0fd17a we
forgot that subnets can have no segment_id field.
Change-Id: Idb35b7e3c69fe8efe498abe4ebcc6cad8918c4ed
Closes-Bug: #2018375
Diffstat (limited to 'nova/tests')
-rw-r--r-- | nova/tests/unit/network/test_neutron.py | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/nova/tests/unit/network/test_neutron.py b/nova/tests/unit/network/test_neutron.py index eefa7b974f..9aa970aca1 100644 --- a/nova/tests/unit/network/test_neutron.py +++ b/nova/tests/unit/network/test_neutron.py @@ -7415,7 +7415,7 @@ class TestAPI(TestAPIBase): network_id=uuids.network_id, fields='segment_id') @mock.patch.object(neutronapi, 'get_client') - def test_get_segment_ids_for_network_with_no_segments(self, mock_client): + def test_get_segment_ids_for_network_with_segments_none(self, mock_client): subnets = {'subnets': [{'segment_id': None}]} mocked_client = mock.create_autospec(client.Client) mock_client.return_value = mocked_client @@ -7431,6 +7431,22 @@ class TestAPI(TestAPIBase): network_id=uuids.network_id, fields='segment_id') @mock.patch.object(neutronapi, 'get_client') + def test_get_segment_ids_for_network_with_no_segments(self, mock_client): + subnets = {'subnets': [{}]} + mocked_client = mock.create_autospec(client.Client) + mock_client.return_value = mocked_client + mocked_client.list_subnets.return_value = subnets + with mock.patch.object( + self.api, 'has_segment_extension', return_value=True, + ): + res = self.api.get_segment_ids_for_network( + self.context, uuids.network_id) + self.assertEqual([], res) + mock_client.assert_called_once_with(self.context, admin=True) + mocked_client.list_subnets.assert_called_once_with( + network_id=uuids.network_id, fields='segment_id') + + @mock.patch.object(neutronapi, 'get_client') def test_get_segment_ids_for_network_fails(self, mock_client): mocked_client = mock.create_autospec(client.Client) mock_client.return_value = mocked_client |