Spamworldpro Mini Shell
Spamworldpro


Server : Apache
System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64
User : corals ( 1002)
PHP Version : 7.4.33
Disable Function : exec,passthru,shell_exec,system
Directory :  /home/corals/syn.corals.io/vendor/spatie/phpunit-snapshot-assertions/src/Drivers/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/corals/syn.corals.io/vendor/spatie/phpunit-snapshot-assertions/src/Drivers/ObjectDriver.php
<?php

namespace Spatie\Snapshots\Drivers;

use PHPUnit\Framework\Assert;
use Spatie\Snapshots\Driver;
use Symfony\Component\Serializer\Encoder\YamlEncoder;
use Symfony\Component\Serializer\Normalizer\DateTimeNormalizer;
use Symfony\Component\Serializer\Normalizer\ObjectNormalizer;
use Symfony\Component\Serializer\Serializer;
use Symfony\Component\Yaml\Yaml;

class ObjectDriver implements Driver
{
    public function serialize($data): string
    {
        $normalizers = [
            new DateTimeNormalizer(),
            new ObjectNormalizer(),
        ];

        $encoders = [
            new YamlEncoder(),
        ];

        $serializer = new Serializer($normalizers, $encoders);

        // The Symfony serialized doesn't support `stdClass` yet.
        // This may be removed when Symfony 5.1 is released.
        if ($data instanceof \stdClass) {
            $data = (array) $data;
        }

        return $this->dedent(
            $serializer->serialize($data, 'yaml', [
                'yaml_inline' => 2,
                'yaml_indent' => 4,
                'yaml_flags' => Yaml::DUMP_MULTI_LINE_LITERAL_BLOCK,
            ])
        );
    }

    public function extension(): string
    {
        return 'yml';
    }

    public function match($expected, $actual)
    {
        Assert::assertEquals($expected, $this->serialize($actual));
    }

    protected function dedent(string $string): string
    {
        return preg_replace('/^ {4}/m', '', $string);
    }
}

Spamworldpro Mini