Skip to content

Commit 5664e05

Browse files
committed
Merge branch '7.4' into 8.0
By Mathias Arlaud (2) and Yonel Ceruto (1) Via Alexandre Daubois (2) and others * 7.4: [JsonStreamer] Add deprecation related tests [JsonStreamer] Fix #61880 upmerge Fix argument syntax for callable and lazy initialization of inline service
2 parents cf24127 + 8f7c2dd commit 5664e05

File tree

2 files changed

+51
-8
lines changed

2 files changed

+51
-8
lines changed

Mapping/PropertyMetadata.php

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -40,15 +40,11 @@ public function __construct(
4040
}
4141

4242
/**
43-
* @param list<string|\Closure> $nativeToStreamValueTransformers
44-
* @param list<string|\Closure> $streamToNativeValueTransformers
43+
* @param list<string|\Closure> $valueTransformers
4544
*/
46-
public static function createSynthetic(
47-
Type $type,
48-
array $nativeToStreamValueTransformers = [],
49-
array $streamToNativeValueTransformers = [],
50-
): self {
51-
return new self(null, $type, $nativeToStreamValueTransformers, $streamToNativeValueTransformers);
45+
public static function createSynthetic(Type $type, array $valueTransformers = []): self
46+
{
47+
return new self(null, $type, $valueTransformers);
5248
}
5349

5450
public function getName(): ?string
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
<?php
2+
3+
/*
4+
* This file is part of the Symfony package.
5+
*
6+
* (c) Fabien Potencier <fabien@symfony.com>
7+
*
8+
* For the full copyright and license information, please view the LICENSE
9+
* file that was distributed with this source code.
10+
*/
11+
12+
namespace Symfony\Component\JsonStreamer\Tests\Mapping;
13+
14+
use PHPUnit\Framework\Attributes\Group;
15+
use PHPUnit\Framework\Attributes\IgnoreDeprecations;
16+
use PHPUnit\Framework\TestCase;
17+
use Symfony\Component\JsonStreamer\Mapping\PropertyMetadata;
18+
use Symfony\Component\TypeInfo\Type;
19+
20+
class PropertyMetadataTest extends TestCase
21+
{
22+
#[Group('legacy')]
23+
#[IgnoreDeprecations]
24+
public function testStreamToNativeValueTransformersDeprecations()
25+
{
26+
$this->expectUserDeprecationMessage('Since symfony/json-streamer 7.4: The "streamToNativeValueTransformers" parameter of the "Symfony\Component\JsonStreamer\Mapping\PropertyMetadata::__construct()" method is deprecated. Use "valueTransformers" instead.');
27+
$propertyMetadata = new PropertyMetadata('name', Type::bool(), ['strtoupper'], ['strtolower']);
28+
29+
$this->expectUserDeprecationMessage('Since symfony/json-streamer 7.4: The "Symfony\Component\JsonStreamer\Mapping\PropertyMetadata::getNativeToStreamValueTransformer()" method is deprecated, use "Symfony\Component\JsonStreamer\Mapping\PropertyMetadata::getValueTransformers()" instead.');
30+
$propertyMetadata->getNativeToStreamValueTransformer();
31+
32+
$this->expectUserDeprecationMessage('Since symfony/json-streamer 7.4: The "Symfony\Component\JsonStreamer\Mapping\PropertyMetadata::getStreamToNativeValueTransformers()" method is deprecated, use "Symfony\Component\JsonStreamer\Mapping\PropertyMetadata::getValueTransformers()" instead.');
33+
$propertyMetadata->getStreamToNativeValueTransformers();
34+
35+
$this->expectUserDeprecationMessage('Since symfony/json-streamer 7.4: The "Symfony\Component\JsonStreamer\Mapping\PropertyMetadata::withNativeToStreamValueTransformers()" method is deprecated, use "Symfony\Component\JsonStreamer\Mapping\PropertyMetadata::withValueTransformers()" instead.');
36+
$propertyMetadata->withNativeToStreamValueTransformers([]);
37+
38+
$this->expectUserDeprecationMessage('Since symfony/json-streamer 7.4: The "Symfony\Component\JsonStreamer\Mapping\PropertyMetadata::withStreamToNativeValueTransformers()" method is deprecated, use "Symfony\Component\JsonStreamer\Mapping\PropertyMetadata::withValueTransformers()" instead.');
39+
$propertyMetadata->withStreamToNativeValueTransformers([]);
40+
41+
$this->expectUserDeprecationMessage('Since symfony/json-streamer 7.4: The "Symfony\Component\JsonStreamer\Mapping\PropertyMetadata::withAdditionalNativeToStreamValueTransformer()" method is deprecated, use "Symfony\Component\JsonStreamer\Mapping\PropertyMetadata::withAdditionalValueTransformer()" instead.');
42+
$propertyMetadata->withAdditionalNativeToStreamValueTransformer('strtoupper');
43+
44+
$this->expectUserDeprecationMessage('Since symfony/json-streamer 7.4: The "Symfony\Component\JsonStreamer\Mapping\PropertyMetadata::withAdditionalStreamToNativeValueTransformer()" method is deprecated, use "Symfony\Component\JsonStreamer\Mapping\PropertyMetadata::withAdditionalValueTransformer()" instead.');
45+
$propertyMetadata->withAdditionalStreamToNativeValueTransformer('strtolower');
46+
}
47+
}

0 commit comments

Comments
 (0)