From 6b2175228560b30482fd7ec253d94563088cb4a4 Mon Sep 17 00:00:00 2001 From: Evgeniy Sokolov Date: Thu, 10 Sep 2015 00:21:50 +0200 Subject: [PATCH] Tests fix clockmock --- .../HttpFoundation/Tests/ClockMock.php | 15 +++++++++++++ .../HttpFoundation/Tests/CookieTest.php | 12 +++++++++++ .../Tests/ResponseHeaderBagTest.php | 12 +++++++++++ .../Component/Stopwatch/Tests/ClockMock.php | 21 +++++++++++++++++++ .../Stopwatch/Tests/StopwatchEventTest.php | 12 +++++++++++ .../Stopwatch/Tests/StopwatchTest.php | 12 +++++++++++ 6 files changed, 84 insertions(+) diff --git a/src/Symfony/Component/HttpFoundation/Tests/ClockMock.php b/src/Symfony/Component/HttpFoundation/Tests/ClockMock.php index 04a842d9b5..c74605fe95 100644 --- a/src/Symfony/Component/HttpFoundation/Tests/ClockMock.php +++ b/src/Symfony/Component/HttpFoundation/Tests/ClockMock.php @@ -18,7 +18,22 @@ function time($asFloat = false) namespace Symfony\Component\HttpFoundation\Tests; +function with_clock_mock($enable = null) +{ + static $enabled; + + if (null === $enable) { + return $enabled; + } + + $enabled = $enable; +} + function time() { + if (!with_clock_mock()) { + return \time(); + } + return $_SERVER['REQUEST_TIME']; } diff --git a/src/Symfony/Component/HttpFoundation/Tests/CookieTest.php b/src/Symfony/Component/HttpFoundation/Tests/CookieTest.php index b8474db15f..9d794c3d6f 100644 --- a/src/Symfony/Component/HttpFoundation/Tests/CookieTest.php +++ b/src/Symfony/Component/HttpFoundation/Tests/CookieTest.php @@ -23,6 +23,18 @@ require_once __DIR__.'/ClockMock.php'; */ class CookieTest extends \PHPUnit_Framework_TestCase { + public function setUp() + { + with_clock_mock(true); + parent::setUp(); + } + + public function tearDown() + { + with_clock_mock(false); + parent::tearDown(); + } + public function invalidNames() { return array( diff --git a/src/Symfony/Component/HttpFoundation/Tests/ResponseHeaderBagTest.php b/src/Symfony/Component/HttpFoundation/Tests/ResponseHeaderBagTest.php index b4164c8a28..ef5979f1f2 100644 --- a/src/Symfony/Component/HttpFoundation/Tests/ResponseHeaderBagTest.php +++ b/src/Symfony/Component/HttpFoundation/Tests/ResponseHeaderBagTest.php @@ -18,6 +18,18 @@ require_once __DIR__.'/ClockMock.php'; class ResponseHeaderBagTest extends \PHPUnit_Framework_TestCase { + public function setUp() + { + with_clock_mock(true); + parent::setUp(); + } + + public function tearDown() + { + with_clock_mock(false); + parent::tearDown(); + } + /** * @covers Symfony\Component\HttpFoundation\ResponseHeaderBag::allPreserveCase * @dataProvider provideAllPreserveCase diff --git a/src/Symfony/Component/Stopwatch/Tests/ClockMock.php b/src/Symfony/Component/Stopwatch/Tests/ClockMock.php index 5bbe6b1db8..718296cc5b 100644 --- a/src/Symfony/Component/Stopwatch/Tests/ClockMock.php +++ b/src/Symfony/Component/Stopwatch/Tests/ClockMock.php @@ -18,10 +18,27 @@ function microtime($asFloat = false) namespace Symfony\Component\Stopwatch\Tests; +function with_clock_mock($enable = null) +{ + static $enabled; + + if (null === $enable) { + return $enabled; + } + + $enabled = $enable; +} + function usleep($us) { static $now; + if (!with_clock_mock()) { + \usleep($us); + + return; + } + if (null === $now) { $now = \microtime(true); } @@ -31,6 +48,10 @@ function usleep($us) function microtime($asFloat = false) { + if (!with_clock_mock()) { + return \microtime($asFloat); + } + if (!$asFloat) { return \microtime(false); } diff --git a/src/Symfony/Component/Stopwatch/Tests/StopwatchEventTest.php b/src/Symfony/Component/Stopwatch/Tests/StopwatchEventTest.php index 44928ace19..bf5d8805ad 100644 --- a/src/Symfony/Component/Stopwatch/Tests/StopwatchEventTest.php +++ b/src/Symfony/Component/Stopwatch/Tests/StopwatchEventTest.php @@ -24,6 +24,18 @@ class StopwatchEventTest extends \PHPUnit_Framework_TestCase { const DELTA = 37; + public function setUp() + { + with_clock_mock(true); + parent::setUp(); + } + + public function tearDown() + { + with_clock_mock(false); + parent::tearDown(); + } + public function testGetOrigin() { $event = new StopwatchEvent(12); diff --git a/src/Symfony/Component/Stopwatch/Tests/StopwatchTest.php b/src/Symfony/Component/Stopwatch/Tests/StopwatchTest.php index f13955d30b..0b89f27054 100644 --- a/src/Symfony/Component/Stopwatch/Tests/StopwatchTest.php +++ b/src/Symfony/Component/Stopwatch/Tests/StopwatchTest.php @@ -24,6 +24,18 @@ class StopwatchTest extends \PHPUnit_Framework_TestCase { const DELTA = 20; + public function setUp() + { + with_clock_mock(true); + parent::setUp(); + } + + public function tearDown() + { + with_clock_mock(false); + parent::tearDown(); + } + public function testStart() { $stopwatch = new Stopwatch();