Файл: vkolhoze.com/vendor/guzzle/guzzle/tests/Guzzle/Tests/Plugin/Backoff/TruncatedBackoffStrategyTest.php
Строк: 32
<?php
namespace GuzzleTestsPluginBackoff;
use GuzzleHttpMessageResponse;
use GuzzlePluginBackoffTruncatedBackoffStrategy;
use GuzzlePluginBackoffHttpBackoffStrategy;
use GuzzlePluginBackoffConstantBackoffStrategy;
/**
* @covers GuzzlePluginBackoffTruncatedBackoffStrategy
*/
class TruncatedBackoffStrategyTest extends GuzzleTestsGuzzleTestCase
{
public function testRetriesWhenLessThanMax()
{
$strategy = new TruncatedBackoffStrategy(2);
$this->assertTrue($strategy->makesDecision());
$request = $this->getMock('GuzzleHttpMessageRequest', array(), array(), '', false);
$this->assertFalse($strategy->getBackoffPeriod(0, $request));
$this->assertFalse($strategy->getBackoffPeriod(1, $request));
$this->assertFalse($strategy->getBackoffPeriod(2, $request));
$response = new Response(500);
$strategy->setNext(new HttpBackoffStrategy(null, new ConstantBackoffStrategy(10)));
$this->assertEquals(10, $strategy->getBackoffPeriod(0, $request, $response));
$this->assertEquals(10, $strategy->getBackoffPeriod(1, $request, $response));
$this->assertFalse($strategy->getBackoffPeriod(2, $request, $response));
}
}