diff --git a/src/Symfony/Component/Mime/RawMessage.php b/src/Symfony/Component/Mime/RawMessage.php index 79a27e9fcc69d..66788d8ad526d 100644 --- a/src/Symfony/Component/Mime/RawMessage.php +++ b/src/Symfony/Component/Mime/RawMessage.php @@ -78,7 +78,7 @@ final public function unserialize($serialized) public function __serialize(): array { - return [$this->message]; + return [$this->toString()]; } public function __unserialize(array $data): void diff --git a/src/Symfony/Component/Mime/Tests/RawMessageTest.php b/src/Symfony/Component/Mime/Tests/RawMessageTest.php index 5d1588bff00fa..26e7605baba2d 100644 --- a/src/Symfony/Component/Mime/Tests/RawMessageTest.php +++ b/src/Symfony/Component/Mime/Tests/RawMessageTest.php @@ -32,4 +32,18 @@ public function testToString() $this->assertEquals('some string', $message->toString()); $this->assertEquals('some string', implode('', iterator_to_array($message->toIterable()))); } + + public function testSerialization() + { + $message = new RawMessage('string'); + $this->assertEquals('string', unserialize(serialize($message))->toString()); + // calling methods more than once work + $this->assertEquals('string', unserialize(serialize($message))->toString()); + + $message = new RawMessage(new \ArrayObject(['some', ' ', 'string'])); + $message = new RawMessage($message->toIterable()); + $this->assertEquals('some string', unserialize(serialize($message))->toString()); + // calling methods more than once work + $this->assertEquals('some string', unserialize(serialize($message))->toString()); + } } pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy