def test_wait_desired_equals_healthy_true(aws_client):
    client = MagicMock()
    aws_client.return_value = client
    asg_names = ['AutoScalingGroup1']
    client.describe_auto_scaling_groups.return_value = {
        "AutoScalingGroups": [{
            "DesiredCapacity": 1,
            "Instances": [{
                "HealthStatus": "Healthy",
                "LifecycleState": "InService"
            }]
        }]
    }
    assert wait_desired_equals_healthy(
        asg_names=asg_names, timeout=0.1) in [0, 2]
예제 #2
0
def test_wait_desired_equals_healthy_timeout(aws_client):
    client = MagicMock()
    aws_client.return_value = client
    asg_names = ['AutoScalingGroup1']
    client.describe_auto_scaling_groups.response = [{
        "AutoScalingGroups": [{
            "DesiredCapacity":
            1,
            "Instances": [{
                "HealthStatus": "Unhealthy",
                "LifecycleState": "Initializing"
            }]
        }]
    }]
    assert wait_desired_equals_healthy(asg_names=asg_names,
                                       timeout=0) is maxsize
def test_wait_desired_equals_healthy_asg_names():
    with pytest.raises(FailedActivity) as x:
        wait_desired_equals_healthy([])
    assert "Non-empty list of auto scaling groups is required" in str(x)