/** * @covers Hermes\Api\Client::doRequest * @covers Hermes\Api\Client::get * @covers Hermes\Api\Client::isAvailable * @covers Hermes\Api\Client::reportSuccess * @covers Hermes\Api\Client::reportFailure */ public function testGetNotAvailableWithCircuitBreaker() { $storage = StorageFactory::factory(['adapter' => ['name' => 'memory', 'options' => ['namespace' => 'test']], 'plugins' => ['exception_handler' => ['throw_exceptions' => false]]]); $storage->flush(); $cerberus = new Cerberus($storage, 2, 2); $cerberus->reportFailure(); $cerberus->reportFailure(); $cerberus->reportFailure(); $this->object->setCircuitBreaker($cerberus); $client = new \Zend\Http\Client('http://127.0.0.1:1', []); $this->object->setZendClient($client); $this->setExpectedException(NotAvailableException::class); $this->object->get('/'); }