Merge branch '4.4' into 5.0

* 4.4:
  [HttpClient] improve testTimeoutIsNotAFatalError
  Fix for #36715
This commit is contained in:
Nicolas Grekas 2020-05-09 17:57:42 +02:00
commit c794cab0cb
3 changed files with 24 additions and 4 deletions

View File

@ -97,7 +97,7 @@ abstract class HttpClientTestCase extends BaseHttpClientTestCase
{
$client = $this->getHttpClient(__FUNCTION__);
$response = $client->request('GET', 'http://localhost:8057/timeout-body', [
'timeout' => 0.1,
'timeout' => 0.3,
]);
try {
@ -106,7 +106,16 @@ abstract class HttpClientTestCase extends BaseHttpClientTestCase
} catch (TransportException $e) {
}
usleep(400000);
$this->assertSame('<1><2>', $response->getContent());
for ($i = 0; $i < 10; ++$i) {
try {
$this->assertSame('<1><2>', $response->getContent());
break;
} catch (TransportException $e) {
}
}
if (10 === $i) {
throw $e;
}
}
}

View File

@ -51,7 +51,7 @@ final class MimeTypes implements MimeTypesInterface
$this->extensions[$mimeType] = $extensions;
foreach ($extensions as $extension) {
$this->mimeTypes[$extension] = $mimeType;
$this->mimeTypes[$extension][] = $mimeType;
}
}
$this->registerGuesser(new FileBinaryMimeTypeGuesser());

View File

@ -62,4 +62,15 @@ class MimeTypesTest extends AbstractMimeTypeGuesserTest
$this->assertContains('image/svg', $mt->getMimeTypes('svg'));
$this->assertSame([], $mt->getMimeTypes('symfony'));
}
public function testCustomMimeTypes()
{
$mt = new MimeTypes([
'text/bar' => ['foo'],
'text/baz' => ['foo', 'moof'],
]);
$this->assertContains('text/bar', $mt->getMimeTypes('foo'));
$this->assertContains('text/baz', $mt->getMimeTypes('foo'));
$this->assertSame(['foo', 'moof'], $mt->getExtensions('text/baz'));
}
}