CloudConvert\tests\ApiTest::testIfApiTemporaryUnavailableExceptionIsThrown PHP Method

testIfApiTemporaryUnavailableExceptionIsThrown() public method

Test if API error 503 throws a CloudConvert\Exceptions\ApiTemporaryUnavailableException with correct retryAfter value
    public function testIfApiTemporaryUnavailableExceptionIsThrown()
    {
        $mock = new MockHandler([new Response(503, ['Retry-After' => 30, 'Content-Type' => 'application/json; charset=utf-8'], "{\"message\":\"API unavailable. Please try later.\"}")]);
        $handler = HandlerStack::create($mock);
        $client = new Client(['handler' => $handler]);
        $api = new Api($this->api_key, $client);
        $invoker = self::getPrivateMethod('rawCall');
        try {
            $invoker->invokeArgs($api, array('GET', '/conversiontypes', array('inputformat' => 'pdf', 'outputformat' => 'pdf'), false));
        } catch (ApiTemporaryUnavailableException $expected) {
            $this->assertEquals(30, $expected->retryAfter);
            return;
        }
        $this->fail('CloudConvert\\Exceptions\\ApiTemporaryUnavailableException has not been raised.');
    }