From 1e239de5dcc6e32f6989a6e877b47e1a77d4a8cc Mon Sep 17 00:00:00 2001 From: Manjeet Singh Bhatia Date: Fri, 16 Dec 2016 20:19:44 +0000 Subject: [PATCH] Use port object in notifiers/test_nova.py As port object is ready to use. this patch replaces the direct use of port model with port object in tests/unit/notifiers/test_nova.py This patch removes also test "test_port_without_id_no_notify" as Port object can't be created without ID field configured or generated automatically by DB. Co-Authored-By: Slawek Kaplonski Partially-Implements: blueprint adopt-oslo-versioned-objects-for-db Change-Id: If8d291e36a6c94441335afa98d146e3fc9975209 --- neutron/tests/unit/notifiers/test_nova.py | 51 +++++++++++------------ 1 file changed, 24 insertions(+), 27 deletions(-) diff --git a/neutron/tests/unit/notifiers/test_nova.py b/neutron/tests/unit/notifiers/test_nova.py index 2f1c66fa9ae..4319f58cd9c 100644 --- a/neutron/tests/unit/notifiers/test_nova.py +++ b/neutron/tests/unit/notifiers/test_nova.py @@ -16,6 +16,7 @@ import mock from neutron_lib import constants as n_const +from neutron_lib import context as n_ctx from neutron_lib import exceptions as n_exc from neutron_lib.plugins import constants as plugin_constants from neutron_lib.plugins import directory @@ -25,8 +26,8 @@ from oslo_config import cfg from oslo_utils import uuidutils from sqlalchemy.orm import attributes as sql_attr -from neutron.db import models_v2 from neutron.notifiers import nova +from neutron.objects import ports as port_obj from neutron.tests import base DEVICE_OWNER_COMPUTE = n_const.DEVICE_OWNER_COMPUTE_PREFIX + 'fake' @@ -36,6 +37,8 @@ DEVICE_OWNER_BAREMETAL = n_const.DEVICE_OWNER_BAREMETAL_PREFIX + 'fake' class TestNovaNotify(base.BaseTestCase): def setUp(self, plugin=None): super(TestNovaNotify, self).setUp() + self.ctx = n_ctx.get_admin_context() + self.port_uuid = uuidutils.generate_uuid() class FakePlugin(object): def get_port(self, context, port_id): @@ -56,51 +59,45 @@ class TestNovaNotify(base.BaseTestCase): for previous_port_status in states: for current_port_status in states: - port = models_v2.Port(id='port-uuid', device_id=device_id, - device_owner=DEVICE_OWNER_COMPUTE, - status=current_port_status) + port = port_obj.Port(self.ctx, id=self.port_uuid, + device_id=device_id, + device_owner=DEVICE_OWNER_COMPUTE, + status=current_port_status) self._record_port_status_changed_helper(current_port_status, previous_port_status, port) def test_port_without_uuid_device_id_no_notify(self): - port = models_v2.Port(id='port-uuid', device_id='compute_probe:', - device_owner=DEVICE_OWNER_COMPUTE, - status=n_const.PORT_STATUS_ACTIVE) + port = port_obj.Port(self.ctx, id=self.port_uuid, + device_id='compute_probe:', + device_owner=DEVICE_OWNER_COMPUTE, + status=n_const.PORT_STATUS_ACTIVE) self._record_port_status_changed_helper(n_const.PORT_STATUS_ACTIVE, sql_attr.NO_VALUE, port) def test_port_without_device_owner_no_notify(self): device_id = '32102d7b-1cf4-404d-b50a-97aae1f55f87' - port = models_v2.Port(id='port-uuid', device_id=device_id, - status=n_const.PORT_STATUS_ACTIVE) + port = port_obj.Port(self.ctx, id=self.port_uuid, device_id=device_id, + device_owner="", + status=n_const.PORT_STATUS_ACTIVE) self._record_port_status_changed_helper(n_const.PORT_STATUS_ACTIVE, sql_attr.NO_VALUE, port) def test_port_without_device_id_no_notify(self): - port = models_v2.Port(id='port-uuid', - device_owner=n_const.DEVICE_OWNER_DHCP, - status=n_const.PORT_STATUS_ACTIVE) - self._record_port_status_changed_helper(n_const.PORT_STATUS_ACTIVE, - sql_attr.NO_VALUE, - port) - - def test_port_without_id_no_notify(self): - device_id = '32102d7b-1cf4-404d-b50a-97aae1f55f87' - port = models_v2.Port(device_id=device_id, - device_owner=DEVICE_OWNER_COMPUTE, - status=n_const.PORT_STATUS_ACTIVE) + port = port_obj.Port(self.ctx, id=self.port_uuid, device_id="", + device_owner=n_const.DEVICE_OWNER_DHCP, + status=n_const.PORT_STATUS_ACTIVE) self._record_port_status_changed_helper(n_const.PORT_STATUS_ACTIVE, sql_attr.NO_VALUE, port) def test_non_compute_instances_no_notify(self): device_id = '32102d7b-1cf4-404d-b50a-97aae1f55f87' - port = models_v2.Port(id='port-uuid', device_id=device_id, - device_owner=n_const.DEVICE_OWNER_DHCP, - status=n_const.PORT_STATUS_ACTIVE) + port = port_obj.Port(self.ctx, id=self.port_uuid, device_id=device_id, + device_owner=n_const.DEVICE_OWNER_DHCP, + status=n_const.PORT_STATUS_ACTIVE) self._record_port_status_changed_helper(n_const.PORT_STATUS_ACTIVE, sql_attr.NO_VALUE, port) @@ -135,7 +132,7 @@ class TestNovaNotify(base.BaseTestCase): None) event = {'server_uuid': port.device_id, 'status': status, - 'name': event_name, 'tag': 'port-uuid'} + 'name': event_name, 'tag': self.port_uuid} self.assertEqual(event, port._notify_event) def test_update_fixed_ip_changed(self): @@ -354,8 +351,8 @@ class TestNovaNotify(base.BaseTestCase): def test_notify_port_active_direct(self): device_id = '32102d7b-1cf4-404d-b50a-97aae1f55f87' port_id = 'bee50827-bcee-4cc8-91c1-a27b0ce54222' - port = models_v2.Port(id=port_id, device_id=device_id, - device_owner=DEVICE_OWNER_COMPUTE) + port = port_obj.Port(self.ctx, id=port_id, device_id=device_id, + device_owner=DEVICE_OWNER_COMPUTE) expected_event = {'server_uuid': device_id, 'name': nova.VIF_PLUGGED, 'status': 'completed',