diff options
Diffstat (limited to 'vendor/guzzle/guzzle/tests/Guzzle/Tests/Plugin/Backoff/TruncatedBackoffStrategyTest.php')
-rw-r--r-- | vendor/guzzle/guzzle/tests/Guzzle/Tests/Plugin/Backoff/TruncatedBackoffStrategyTest.php | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/vendor/guzzle/guzzle/tests/Guzzle/Tests/Plugin/Backoff/TruncatedBackoffStrategyTest.php b/vendor/guzzle/guzzle/tests/Guzzle/Tests/Plugin/Backoff/TruncatedBackoffStrategyTest.php new file mode 100644 index 0000000..5590dfb --- /dev/null +++ b/vendor/guzzle/guzzle/tests/Guzzle/Tests/Plugin/Backoff/TruncatedBackoffStrategyTest.php @@ -0,0 +1,30 @@ +<?php + +namespace Guzzle\Tests\Plugin\Backoff; + +use Guzzle\Http\Message\Response; +use Guzzle\Plugin\Backoff\TruncatedBackoffStrategy; +use Guzzle\Plugin\Backoff\HttpBackoffStrategy; +use Guzzle\Plugin\Backoff\ConstantBackoffStrategy; + +/** + * @covers Guzzle\Plugin\Backoff\TruncatedBackoffStrategy + */ +class TruncatedBackoffStrategyTest extends \Guzzle\Tests\GuzzleTestCase +{ + public function testRetriesWhenLessThanMax() + { + $strategy = new TruncatedBackoffStrategy(2); + $this->assertTrue($strategy->makesDecision()); + $request = $this->getMock('Guzzle\Http\Message\Request', 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)); + } +} |