Scalr\Tests\Functional\Api\Service\User\V1beta0\Controller\ServersTest::waitForChanges PHP Method

waitForChanges() private method

Waits until status changes
private waitForChanges ( string $serverId, string $status, integer $timeOut = 300 ) : mixed
$serverId string Server's UUID
$status string Expected Server's Status
$timeOut integer optional Waiting time
return mixed
    private function waitForChanges($serverId, $status, $timeOut = 300)
    {
        $status = lcfirst(str_replace(' ', '_', $status));
        $response = $this->getServer($serverId);
        $this->assertEquals(200, $response->status, $this->printResponseError($response));
        $server = $response->getBody()->data;
        for ($time = time(), $sleep = 50; time() - $time < $timeOut && $server->status != $status; $sleep += 50) {
            $response = $this->getServer($server->id);
            $server = $response->getBody()->data;
        }
        $this->assertEquals($server->status, $status);
        return $server;
    }