function YamlSymfonyTest::testDecodeObjectSupportDisabled

Same name and namespace in other branches
  1. 10 core/tests/Drupal/Tests/Component/Serialization/YamlSymfonyTest.php \Drupal\Tests\Component\Serialization\YamlSymfonyTest::testDecodeObjectSupportDisabled()

Ensures that decoding PHP objects does not work in Symfony.

@covers ::decode

File

core/tests/Drupal/Tests/Component/Serialization/YamlSymfonyTest.php, line 99

Class

YamlSymfonyTest
Tests the YamlSymfony serialization implementation.

Namespace

Drupal\Tests\Component\Serialization

Code

public function testDecodeObjectSupportDisabled() : void {
    $this->expectDeprecation("Calling Drupal\\Component\\Serialization\\YamlSymfony::decode() is deprecated in drupal:10.3.0 and is removed from drupal:11.0.0. Use \\Drupal\\Component\\Serialization\\Yaml::decode() instead. See https://www.drupal.org/node/3415489");
    $this->expectException(InvalidDataTypeException::class);
    $this->expectExceptionMessageMatches('/^Object support when parsing a YAML file has been disabled/');
    $yaml = <<<YAML
obj: !php/object "O:8:\\"stdClass\\":1:{s:3:\\"foo\\";s:3:\\"bar\\";}"
YAML;
    YamlSymfony::decode($yaml);
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.