1
0
mirror of synced 2024-11-24 05:46:08 +03:00
service-bundle/Tests/Serializer/JSMSerializerAdapterTest.php
Akolzin Dmitry 7516ec60cb
JMS serializer supports (#3)
* add callback argument value resolver
* add jms serializer support
* add phpdoc
* fix FrontApiClientAuthenticator
2021-02-17 09:31:36 +03:00

39 lines
1.2 KiB
PHP

<?php
namespace RetailCrm\ServiceBundle\Tests\Serializer;
use JMS\Serializer\SerializerBuilder;
use PHPUnit\Framework\TestCase;
use RetailCrm\ServiceBundle\Serializer\JMSSerializerAdapter;
use RetailCrm\ServiceBundle\Tests\DataFixtures\RequestDto;
class JSMSerializerAdapterTest extends TestCase
{
private $serializer;
private $transformer;
protected function setUp(): void
{
$this->serializer = SerializerBuilder::create()->build();
$this->transformer = SerializerBuilder::create()->build();
}
public function testDeserialize(): void
{
$adapter = new JMSSerializerAdapter($this->serializer, $this->transformer);
$object = $adapter->deserialize('{"param": "string"}', RequestDto::class,'json');
static::assertInstanceOf(RequestDto::class, $object);
static::assertEquals('string', $object->param);
}
public function testArrayToObject(): void
{
$adapter = new JMSSerializerAdapter($this->serializer, $this->transformer);
$object = $adapter->arrayToObject(['param' => 'string'], RequestDto::class);
static::assertInstanceOf(RequestDto::class, $object);
static::assertEquals('string', $object->param);
}
}