Файл: vkolhoze.com/vendor/guzzle/guzzle/tests/Guzzle/Tests/Plugin/Backoff/CallbackBackoffStrategyTest.php
Строк: 35
<?php
namespace GuzzleTestsPluginBackoff;
use GuzzlePluginBackoffCallbackBackoffStrategy;
/**
* @covers GuzzlePluginBackoffCallbackBackoffStrategy
*/
class CallbackBackoffStrategyTest extends GuzzleTestsGuzzleTestCase
{
/**
* @expectedException GuzzleCommonExceptionInvalidArgumentException
*/
public function testEnsuresIsCallable()
{
$strategy = new CallbackBackoffStrategy(new stdClass(), true);
}
public function testRetriesWithCallable()
{
$request = $this->getMock('GuzzleHttpMessageRequest', array(), array(), '', false);
$strategy = new CallbackBackoffStrategy(function () { return 10; }, true);
$this->assertTrue($strategy->makesDecision());
$this->assertEquals(10, $strategy->getBackoffPeriod(0, $request));
// Ensure it chains correctly when null is returned
$strategy = new CallbackBackoffStrategy(function () { return null; }, false);
$this->assertFalse($strategy->makesDecision());
$this->assertFalse($strategy->getBackoffPeriod(0, $request));
}
}