Merge "Use uuidsentinel in host_status test"

This commit is contained in:
Jenkins
2016-01-27 19:50:05 +00:00
committed by Gerrit Code Review

View File

@@ -3036,41 +3036,36 @@ class _ComputeAPIUnitTestMixIn(object):
self.assertEqual('Server-%s' % instance.uuid, instance.hostname)
def test_host_statuses(self):
# NOTE(tojuvone) Some test cases break utcnow() by calling
# timeutils.set_time_override() with some own time. Have to issue a
# bug to fix those cases to reset time back like line below so next
# test cases will work.
timeutils.clear_time_override()
instances = [
objects.Instance(uuid='uuid1', host='host1', services=
objects.Instance(uuid=uuids.instance_1, host='host1', services=
self._obj_to_list_obj(objects.ServiceList(
self.context), objects.Service(id=0, host='host1',
disabled=True, forced_down=True,
binary='nova-compute'))),
objects.Instance(uuid='uuid2', host='host2', services=
objects.Instance(uuid=uuids.instance_2, host='host2', services=
self._obj_to_list_obj(objects.ServiceList(
self.context), objects.Service(id=0, host='host2',
disabled=True, forced_down=False,
binary='nova-compute'))),
objects.Instance(uuid='uuid3', host='host3', services=
objects.Instance(uuid=uuids.instance_3, host='host3', services=
self._obj_to_list_obj(objects.ServiceList(
self.context), objects.Service(id=0, host='host3',
disabled=False, last_seen_up=timeutils.utcnow()
- datetime.timedelta(minutes=5),
forced_down=False, binary='nova-compute'))),
objects.Instance(uuid='uuid4', host='host4', services=
objects.Instance(uuid=uuids.instance_4, host='host4', services=
self._obj_to_list_obj(objects.ServiceList(
self.context), objects.Service(id=0, host='host4',
disabled=False, last_seen_up=timeutils.utcnow(),
forced_down=False, binary='nova-compute'))),
objects.Instance(uuid='uuid5', host='host5', services=
objects.Instance(uuid=uuids.instance_5, host='host5', services=
objects.ServiceList()),
objects.Instance(uuid='uuid6', host=None, services=
objects.Instance(uuid=uuids.instance_6, host=None, services=
self._obj_to_list_obj(objects.ServiceList(
self.context), objects.Service(id=0, host='host6',
disabled=True, forced_down=False,
binary='nova-compute'))),
objects.Instance(uuid='uuid7', host='host2', services=
objects.Instance(uuid=uuids.instance_7, host='host2', services=
self._obj_to_list_obj(objects.ServiceList(
self.context), objects.Service(id=0, host='host2',
disabled=True, forced_down=False,
@@ -3079,13 +3074,13 @@ class _ComputeAPIUnitTestMixIn(object):
host_statuses = self.compute_api.get_instances_host_statuses(
instances)
expect_statuses = {'uuid1': fields_obj.HostStatus.DOWN,
'uuid2': fields_obj.HostStatus.MAINTENANCE,
'uuid3': fields_obj.HostStatus.UNKNOWN,
'uuid4': fields_obj.HostStatus.UP,
'uuid5': fields_obj.HostStatus.NONE,
'uuid6': fields_obj.HostStatus.NONE,
'uuid7': fields_obj.HostStatus.MAINTENANCE}
expect_statuses = {uuids.instance_1: fields_obj.HostStatus.DOWN,
uuids.instance_2: fields_obj.HostStatus.MAINTENANCE,
uuids.instance_3: fields_obj.HostStatus.UNKNOWN,
uuids.instance_4: fields_obj.HostStatus.UP,
uuids.instance_5: fields_obj.HostStatus.NONE,
uuids.instance_6: fields_obj.HostStatus.NONE,
uuids.instance_7: fields_obj.HostStatus.MAINTENANCE}
for instance in instances:
self.assertEqual(expect_statuses[instance.uuid],
host_statuses[instance.uuid])