mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2025-09-26 00:24:59 +00:00
This change is made to comply with the new Symfony standards and to avoid deprecation warnings for future versions. The update touches various functionalities, including retrieving EntityManagerInterface instance and various service classes within the test files.
69 lines
2.1 KiB
PHP
69 lines
2.1 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
/*
|
|
* Chill is a software for social workers
|
|
*
|
|
* For the full copyright and license information, please view
|
|
* the LICENSE file that was distributed with this source code.
|
|
*/
|
|
|
|
namespace Serializer\Normalizer;
|
|
|
|
use Chill\PersonBundle\Entity\AccompanyingPeriod\Resource;
|
|
use Chill\ThirdPartyBundle\Entity\ThirdParty;
|
|
use Symfony\Bundle\FrameworkBundle\Test\KernelTestCase;
|
|
use Symfony\Component\Serializer\Normalizer\NormalizerInterface;
|
|
|
|
/**
|
|
* @internal
|
|
*
|
|
* @coversNothing
|
|
*/
|
|
final class AccompanyingPeriodResourceNormalizerTest extends KernelTestCase
|
|
{
|
|
private NormalizerInterface $normalizer;
|
|
|
|
protected function setUp(): void
|
|
{
|
|
self::bootKernel();
|
|
|
|
$this->normalizer = self::getContainer()->get(NormalizerInterface::class);
|
|
}
|
|
|
|
public function testNormalizeNullHasSameValueAsNotNull()
|
|
{
|
|
$nullResource = $this->normalizer->normalize(null, 'docgen', ['groups' => 'docgen:read', 'docgen:expects' => Resource::class]);
|
|
$notNull = $this->normalizer->normalize(new Resource(), 'docgen', ['groups' => 'docgen:read', 'docgen:expects' => Resource::class]);
|
|
|
|
$this->assertEqualsCanonicalizing(array_keys($notNull), array_keys($nullResource));
|
|
}
|
|
|
|
public function testNormalizeResource()
|
|
{
|
|
$resource = new Resource();
|
|
$resource
|
|
->setComment('blabla')
|
|
->setResource(new ThirdParty());
|
|
|
|
$expected = [
|
|
'type' => 'accompanying_period_resource',
|
|
'isNull' => false,
|
|
'comment' => 'blabla',
|
|
];
|
|
|
|
$actual = $this->normalizer->normalize($resource, 'docgen', ['groups' => 'docgen:read', 'docgen:expects' => Resource::class]);
|
|
|
|
// we do not test for sub array (person, thirdparty). We then check first for base value...
|
|
foreach ($expected as $key => $value) {
|
|
$this->assertArrayHasKey($key, $actual);
|
|
$this->assertEquals($value, $actual[$key]);
|
|
}
|
|
|
|
// ... and then for the existence of some values
|
|
$this->assertArrayHasKey('person', $actual);
|
|
$this->assertArrayHasKey('thirdParty', $actual);
|
|
}
|
|
}
|