def test_instance_health2(self): i1 = Mock(instance_id="i1", state=InstanceStates.RUNNING, health=InstanceHealthState.OK) i2 = Mock(instance_id="i2", state=InstanceStates.RUNNING_FAILED, health=InstanceHealthState.OK) i3 = Mock(instance_id="i3", state=InstanceStates.RUNNING_FAILED, health=InstanceHealthState.MISSING) instances = dict(i1=i1, i2=i2, i3=i3) es = EngineState() es.instances = instances healthy = es.get_healthy_instances() self.assertEqual(healthy, [i1]) unhealthy = es.get_unhealthy_instances() self.assertTrue(i2 in unhealthy) self.assertTrue(i3 in unhealthy) self.assertEqual(2, len(unhealthy)) # Should not matter if health is present or not, it's RUNNING_FAILED i3.health = InstanceHealthState.MISSING unhealthy = es.get_unhealthy_instances() self.assertTrue(i2 in unhealthy) self.assertTrue(i3 in unhealthy)
def test_instance_health(self): i1 = Mock(instance_id="i1", state=InstanceStates.RUNNING, health=InstanceHealthState.OK) i2 = Mock(instance_id="i2", state=InstanceStates.FAILED, health=InstanceHealthState.OK) i3 = Mock(instance_id="i3", state=InstanceStates.TERMINATED, health=InstanceHealthState.MISSING) instances = dict(i1=i1, i2=i2, i3=i3) es = EngineState() es.instances = instances healthy = es.get_healthy_instances() self.assertEqual(healthy, [i1]) unhealthy = es.get_unhealthy_instances() self.assertFalse(unhealthy) i1.health = InstanceHealthState.MISSING healthy = es.get_healthy_instances() self.assertFalse(healthy) unhealthy = es.get_unhealthy_instances() self.assertEqual(unhealthy, [i1])