diff --git a/src/Symfony/Component/HttpClient/CHANGELOG.md b/src/Symfony/Component/HttpClient/CHANGELOG.md index 961f09cf42124..c9417a88315e7 100644 --- a/src/Symfony/Component/HttpClient/CHANGELOG.md +++ b/src/Symfony/Component/HttpClient/CHANGELOG.md @@ -1,6 +1,11 @@ CHANGELOG ========= +7.1 +--- + + * Allow mocking `start_time` info in `MockResponse` + 7.0 --- diff --git a/src/Symfony/Component/HttpClient/Response/MockResponse.php b/src/Symfony/Component/HttpClient/Response/MockResponse.php index dba6307f2b5d9..ed2b2008f0c99 100644 --- a/src/Symfony/Component/HttpClient/Response/MockResponse.php +++ b/src/Symfony/Component/HttpClient/Response/MockResponse.php @@ -217,6 +217,9 @@ private static function writeRequest(self $response, array $options, ResponseInt { $onProgress = $options['on_progress'] ?? static function () {}; $response->info += $mock->getInfo() ?: []; + if (null !== $mock->getInfo('start_time')) { + $response->info['start_time'] = $mock->getInfo('start_time'); + } // simulate "size_upload" if it is set if (isset($response->info['size_upload'])) { diff --git a/src/Symfony/Component/HttpClient/Tests/MockHttpClientTest.php b/src/Symfony/Component/HttpClient/Tests/MockHttpClientTest.php index 6da3af6bca9dd..26b516a42d314 100644 --- a/src/Symfony/Component/HttpClient/Tests/MockHttpClientTest.php +++ b/src/Symfony/Component/HttpClient/Tests/MockHttpClientTest.php @@ -573,4 +573,14 @@ public function testMoreRequestsThanResponseFactoryResponses() $client->request('GET', 'https://example.com'); $client->request('GET', 'https://example.com'); } + + public function testMockStartTimeInfo() + { + $client = new MockHttpClient(new MockResponse('foobarccc', [ + 'start_time' => 1701187598.313123, + ])); + + $response = $client->request('GET', 'https://example.com'); + $this->assertSame(1701187598.313123, $response->getInfo('start_time')); + } }