Merge branch '4.2'
* 4.2: fix tests fix PHPUnit 4.8 compatibility [Debug] Fixed error handling when an error is already handled when another error is already handled (5) sync validator translations
This commit is contained in:
commit
2efd7b2149
@ -114,7 +114,6 @@
|
|||||||
<div class="form-group{% if (not compound or force_error|default(false)) and not valid %} has-error{% endif %}">
|
<div class="form-group{% if (not compound or force_error|default(false)) and not valid %} has-error{% endif %}">
|
||||||
{{- form_label(form) }} {# -#}
|
{{- form_label(form) }} {# -#}
|
||||||
{{ form_widget(form, widget_attr) }} {# -#}
|
{{ form_widget(form, widget_attr) }} {# -#}
|
||||||
{{ form_widget(form) }} {# -#}
|
|
||||||
{{ form_errors(form) }} {# -#}
|
{{ form_errors(form) }} {# -#}
|
||||||
</div> {# -#}
|
</div> {# -#}
|
||||||
{%- endblock form_row %}
|
{%- endblock form_row %}
|
||||||
|
@ -68,7 +68,7 @@ class TranslationDebugCommandTest extends TestCase
|
|||||||
/**
|
/**
|
||||||
* @group legacy
|
* @group legacy
|
||||||
* @expectedDeprecation Storing translations in the "%ssf_translation%s/Resources/translations" directory is deprecated since Symfony 4.2, use the "%ssf_translation%s/translations" directory instead.
|
* @expectedDeprecation Storing translations in the "%ssf_translation%s/Resources/translations" directory is deprecated since Symfony 4.2, use the "%ssf_translation%s/translations" directory instead.
|
||||||
* @expectedDeprecation Storing templates in the "%ssf_translation%s/Resources/views" directory is deprecated since Symfony 4.2, use the "%ssf_translation%s/templates" directory instead.
|
* @expectedDeprecation Loading Twig templates from the "%ssf_translation%s/Resources/views" directory is deprecated since Symfony 4.2, use the "%ssf_translation%s/templates" directory instead.
|
||||||
*/
|
*/
|
||||||
public function testDebugLegacyDefaultDirectory()
|
public function testDebugLegacyDefaultDirectory()
|
||||||
{
|
{
|
||||||
|
@ -385,7 +385,7 @@ EOF;
|
|||||||
$fmt = $this->fileLinkFormat ?: ini_get('xdebug.file_link_format') ?: get_cfg_var('xdebug.file_link_format');
|
$fmt = $this->fileLinkFormat ?: ini_get('xdebug.file_link_format') ?: get_cfg_var('xdebug.file_link_format');
|
||||||
|
|
||||||
if (!$fmt) {
|
if (!$fmt) {
|
||||||
return sprintf('<span class="block trace-file-path">in <a title="%s%3$s"><strong>%s</strong>%s</a></span>', $this->escapeHtml($path), $file, 0 < $line ? ' line '.$line : '');
|
return sprintf('<span class="block trace-file-path">in <span title="%s%3$s"><strong>%s</strong>%s</span></span>', $this->escapeHtml($path), $file, 0 < $line ? ' line '.$line : '');
|
||||||
}
|
}
|
||||||
|
|
||||||
if (\is_string($fmt)) {
|
if (\is_string($fmt)) {
|
||||||
@ -401,7 +401,11 @@ EOF;
|
|||||||
|
|
||||||
$link = strtr($fmt[0], ['%f' => $path, '%l' => $line]);
|
$link = strtr($fmt[0], ['%f' => $path, '%l' => $line]);
|
||||||
} else {
|
} else {
|
||||||
|
try {
|
||||||
$link = $fmt->format($path, $line);
|
$link = $fmt->format($path, $line);
|
||||||
|
} catch (\Exception $e) {
|
||||||
|
return sprintf('<span class="block trace-file-path">in <span title="%s%3$s"><strong>%s</strong>%s</span></span>', $this->escapeHtml($path), $file, 0 < $line ? ' line '.$line : '');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return sprintf('<span class="block trace-file-path">in <a href="%s" title="Go to source"><strong>%s</string>%s</a></span>', $this->escapeHtml($link), $file, 0 < $line ? ' line '.$line : '');
|
return sprintf('<span class="block trace-file-path">in <a href="%s" title="Go to source"><strong>%s</string>%s</a></span>', $this->escapeHtml($link), $file, 0 < $line ? ' line '.$line : '');
|
||||||
|
@ -25,7 +25,7 @@ class FileTypeTest extends BaseTypeTest
|
|||||||
|
|
||||||
protected function getExtensions()
|
protected function getExtensions()
|
||||||
{
|
{
|
||||||
$translator = $this->createMock(TranslatorInterface::class);
|
$translator = $this->getMockBuilder(TranslatorInterface::class)->getMock();
|
||||||
$translator->expects($this->any())->method('trans')->willReturnArgument(0);
|
$translator->expects($this->any())->method('trans')->willReturnArgument(0);
|
||||||
|
|
||||||
return array_merge(parent::getExtensions(), [new CoreExtension(null, null, $translator)]);
|
return array_merge(parent::getExtensions(), [new CoreExtension(null, null, $translator)]);
|
||||||
@ -199,11 +199,12 @@ class FileTypeTest extends BaseTypeTest
|
|||||||
*/
|
*/
|
||||||
public function testFailedFileUploadIsTurnedIntoFormErrorUsingHttpFoundationRequestHandler($errorCode, $expectedErrorMessage)
|
public function testFailedFileUploadIsTurnedIntoFormErrorUsingHttpFoundationRequestHandler($errorCode, $expectedErrorMessage)
|
||||||
{
|
{
|
||||||
|
$requestHandler = new HttpFoundationRequestHandler();
|
||||||
$form = $this->factory
|
$form = $this->factory
|
||||||
->createBuilder(static::TESTED_TYPE)
|
->createBuilder(static::TESTED_TYPE)
|
||||||
->setRequestHandler(new HttpFoundationRequestHandler())
|
->setRequestHandler($requestHandler)
|
||||||
->getForm();
|
->getForm();
|
||||||
$form->submit(new UploadedFile(__DIR__.'/../../../Fixtures/foo', 'foo', null, null, $errorCode, true));
|
$form->submit($this->createUploadedFile($requestHandler, __DIR__.'/../../../Fixtures/foo', 'foo', $errorCode));
|
||||||
|
|
||||||
if (UPLOAD_ERR_OK === $errorCode) {
|
if (UPLOAD_ERR_OK === $errorCode) {
|
||||||
$this->assertTrue($form->isValid());
|
$this->assertTrue($form->isValid());
|
||||||
@ -243,15 +244,16 @@ class FileTypeTest extends BaseTypeTest
|
|||||||
*/
|
*/
|
||||||
public function testMultipleSubmittedFailedFileUploadsAreTurnedIntoFormErrorUsingHttpFoundationRequestHandler($errorCode, $expectedErrorMessage)
|
public function testMultipleSubmittedFailedFileUploadsAreTurnedIntoFormErrorUsingHttpFoundationRequestHandler($errorCode, $expectedErrorMessage)
|
||||||
{
|
{
|
||||||
|
$requestHandler = new HttpFoundationRequestHandler();
|
||||||
$form = $this->factory
|
$form = $this->factory
|
||||||
->createBuilder(static::TESTED_TYPE, null, [
|
->createBuilder(static::TESTED_TYPE, null, [
|
||||||
'multiple' => true,
|
'multiple' => true,
|
||||||
])
|
])
|
||||||
->setRequestHandler(new HttpFoundationRequestHandler())
|
->setRequestHandler($requestHandler)
|
||||||
->getForm();
|
->getForm();
|
||||||
$form->submit([
|
$form->submit([
|
||||||
new UploadedFile(__DIR__.'/../../../Fixtures/foo', 'foo', null, null, $errorCode, true),
|
$this->createUploadedFile($requestHandler, __DIR__.'/../../../Fixtures/foo', 'foo', $errorCode),
|
||||||
new UploadedFile(__DIR__.'/../../../Fixtures/foo', 'bar', null, null, $errorCode, true),
|
$this->createUploadedFile($requestHandler, __DIR__.'/../../../Fixtures/foo', 'bar', $errorCode),
|
||||||
]);
|
]);
|
||||||
|
|
||||||
if (UPLOAD_ERR_OK === $errorCode) {
|
if (UPLOAD_ERR_OK === $errorCode) {
|
||||||
@ -316,15 +318,21 @@ class FileTypeTest extends BaseTypeTest
|
|||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
private function createUploadedFile(RequestHandlerInterface $requestHandler, $path, $originalName)
|
private function createUploadedFile(RequestHandlerInterface $requestHandler, $path, $originalName, $errorCode = 0)
|
||||||
{
|
{
|
||||||
if ($requestHandler instanceof HttpFoundationRequestHandler) {
|
if ($requestHandler instanceof HttpFoundationRequestHandler) {
|
||||||
return new UploadedFile($path, $originalName, null, null, true);
|
$class = new \ReflectionClass(UploadedFile::class);
|
||||||
|
|
||||||
|
if (5 === $class->getConstructor()->getNumberOfParameters()) {
|
||||||
|
return new UploadedFile($path, $originalName, null, $errorCode, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
return new UploadedFile($path, $originalName, null, null, $errorCode, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
return [
|
return [
|
||||||
'name' => $originalName,
|
'name' => $originalName,
|
||||||
'error' => 0,
|
'error' => $errorCode,
|
||||||
'type' => 'text/plain',
|
'type' => 'text/plain',
|
||||||
'tmp_name' => $path,
|
'tmp_name' => $path,
|
||||||
'size' => null,
|
'size' => null,
|
||||||
|
@ -59,6 +59,12 @@ class HttpFoundationRequestHandlerTest extends AbstractRequestHandlerTest
|
|||||||
|
|
||||||
protected function getFailedUploadedFile($errorCode)
|
protected function getFailedUploadedFile($errorCode)
|
||||||
{
|
{
|
||||||
|
$class = new \ReflectionClass(UploadedFile::class);
|
||||||
|
|
||||||
|
if (5 === $class->getConstructor()->getNumberOfParameters()) {
|
||||||
|
return new UploadedFile(__DIR__.'/../../Fixtures/foo', 'foo', null, $errorCode, true);
|
||||||
|
}
|
||||||
|
|
||||||
return new UploadedFile(__DIR__.'/../../Fixtures/foo', 'foo', null, null, $errorCode, true);
|
return new UploadedFile(__DIR__.'/../../Fixtures/foo', 'foo', null, null, $errorCode, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -335,29 +335,33 @@
|
|||||||
<target>Dieser Wert sollte gültiges JSON sein.</target>
|
<target>Dieser Wert sollte gültiges JSON sein.</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="87">
|
<trans-unit id="87">
|
||||||
<source>This value should be positive.</source>
|
|
||||||
<target>Dieser Wert sollte positiv sein.</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="88">
|
|
||||||
<source>This value should be either positive or zero.</source>
|
|
||||||
<target>Dieser Wert sollte entweder positiv oder 0 sein.</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="89">
|
|
||||||
<source>This value should be negative.</source>
|
|
||||||
<target>Dieser Wert sollte negativ sein.</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="90">
|
|
||||||
<source>This value should be either negative or zero.</source>
|
|
||||||
<target>Dieser Wert sollte entweder negativ oder 0 sein.</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="91">
|
|
||||||
<source>This collection should contain only unique elements.</source>
|
<source>This collection should contain only unique elements.</source>
|
||||||
<target>Diese Sammlung darf keine doppelten Elemente enthalten.</target>
|
<target>Diese Sammlung darf keine doppelten Elemente enthalten.</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
|
<trans-unit id="88">
|
||||||
|
<source>This value should be positive.</source>
|
||||||
|
<target>Diese Zahl sollte positiv sein.</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="89">
|
||||||
|
<source>This value should be either positive or zero.</source>
|
||||||
|
<target>Diese Zahl sollte entweder positiv oder 0 sein.</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="90">
|
||||||
|
<source>This value should be negative.</source>
|
||||||
|
<target>Diese Zahl sollte negativ sein.</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="91">
|
||||||
|
<source>This value should be either negative or zero.</source>
|
||||||
|
<target>Diese Zahl sollte entweder negativ oder 0 sein.</target>
|
||||||
|
</trans-unit>
|
||||||
<trans-unit id="92">
|
<trans-unit id="92">
|
||||||
<source>This value is not a valid timezone.</source>
|
<source>This value is not a valid timezone.</source>
|
||||||
<target>Dieser Wert ist keine gültige Zeitzone.</target>
|
<target>Dieser Wert ist keine gültige Zeitzone.</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
|
<trans-unit id="93">
|
||||||
|
<source>This password has been leaked in a data breach, it must not be used. Please use another password.</source>
|
||||||
|
<target>Dieses Passwort ist Teil eines Datenlecks, es darf nicht verwendet werden.</target>
|
||||||
|
</trans-unit>
|
||||||
</body>
|
</body>
|
||||||
</file>
|
</file>
|
||||||
</xliff>
|
</xliff>
|
||||||
|
@ -335,29 +335,33 @@
|
|||||||
<target>This value should be valid JSON.</target>
|
<target>This value should be valid JSON.</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="87">
|
<trans-unit id="87">
|
||||||
|
<source>This collection should contain only unique elements.</source>
|
||||||
|
<target>This collection should contain only unique elements.</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="88">
|
||||||
<source>This value should be positive.</source>
|
<source>This value should be positive.</source>
|
||||||
<target>This value should be positive.</target>
|
<target>This value should be positive.</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="88">
|
<trans-unit id="89">
|
||||||
<source>This value should be either positive or zero.</source>
|
<source>This value should be either positive or zero.</source>
|
||||||
<target>This value should be either positive or zero.</target>
|
<target>This value should be either positive or zero.</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="89">
|
<trans-unit id="90">
|
||||||
<source>This value should be negative.</source>
|
<source>This value should be negative.</source>
|
||||||
<target>This value should be negative.</target>
|
<target>This value should be negative.</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="90">
|
<trans-unit id="91">
|
||||||
<source>This value should be either negative or zero.</source>
|
<source>This value should be either negative or zero.</source>
|
||||||
<target>This value should be either negative or zero.</target>
|
<target>This value should be either negative or zero.</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="91">
|
|
||||||
<source>This collection should contain only unique elements.</source>
|
|
||||||
<target>This collection should contain only unique elements.</target>
|
|
||||||
</trans-unit>
|
|
||||||
<trans-unit id="92">
|
<trans-unit id="92">
|
||||||
<source>This value is not a valid timezone.</source>
|
<source>This value is not a valid timezone.</source>
|
||||||
<target>This value is not a valid timezone.</target>
|
<target>This value is not a valid timezone.</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
|
<trans-unit id="93">
|
||||||
|
<source>This password has been leaked in a data breach, it must not be used. Please use another password.</source>
|
||||||
|
<target>This password has been leaked in a data breach, it must not be used. Please use another password.</target>
|
||||||
|
</trans-unit>
|
||||||
</body>
|
</body>
|
||||||
</file>
|
</file>
|
||||||
</xliff>
|
</xliff>
|
||||||
|
@ -335,24 +335,32 @@
|
|||||||
<target>Giá trị này nên đúng định dạng JSON.</target>
|
<target>Giá trị này nên đúng định dạng JSON.</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="87">
|
<trans-unit id="87">
|
||||||
|
<source>This collection should contain only unique elements.</source>
|
||||||
|
<target>Danh sách này chỉ nên chứa các phần tử khác nhau.</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="88">
|
||||||
<source>This value should be positive.</source>
|
<source>This value should be positive.</source>
|
||||||
<target>Giá trị này có thể thực hiện được.</target>
|
<target>Giá trị này có thể thực hiện được.</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="88">
|
<trans-unit id="89">
|
||||||
<source>This value should be either positive or zero.</source>
|
<source>This value should be either positive or zero.</source>
|
||||||
<target>Giá trị này có thể thực hiện được hoặc bằng không.</target>
|
<target>Giá trị này có thể thực hiện được hoặc bằng không.</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="89">
|
<trans-unit id="90">
|
||||||
<source>This value should be negative.</source>
|
<source>This value should be negative.</source>
|
||||||
<target>Giá trị này nên bị từ chối.</target>
|
<target>Giá trị này nên bị từ chối.</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="90">
|
<trans-unit id="91">
|
||||||
<source>This value should be either negative or zero.</source>
|
<source>This value should be either negative or zero.</source>
|
||||||
<target>Giá trị này nên bị từ chối hoặc bằng không.</target>
|
<target>Giá trị này nên bị từ chối hoặc bằng không.</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
<trans-unit id="91">
|
<trans-unit id="92">
|
||||||
<source>This collection should contain only unique elements.</source>
|
<source>This value is not a valid timezone.</source>
|
||||||
<target>Danh sách này chỉ nên chứa các phần tử khác nhau.</target>
|
<target>Giá trị này không phải là múi giờ hợp lệ.</target>
|
||||||
|
</trans-unit>
|
||||||
|
<trans-unit id="93">
|
||||||
|
<source>This password has been leaked in a data breach, it must not be used. Please use another password.</source>
|
||||||
|
<target>Mật khẩu này đã bị rò rỉ dữ liệu, không được sử dụng nữa. Xin vui lòng sử dụng mật khẩu khác.</target>
|
||||||
</trans-unit>
|
</trans-unit>
|
||||||
</body>
|
</body>
|
||||||
</file>
|
</file>
|
||||||
|
Reference in New Issue
Block a user