Browse Source

Add test for serializableProperties

Jose Daian 3 years ago
parent
commit
1e0eb27504
1 changed files with 10 additions and 0 deletions
  1. 10 0
      tests/TestCase/Mailer/MessageTest.php

+ 10 - 0
tests/TestCase/Mailer/MessageTest.php

@@ -1306,6 +1306,10 @@ HTML;
     public function testSerialization(): void
     {
         $message = new Message();
+        $reflection = new \ReflectionClass($message);
+        $property = $reflection->getProperty('serializableProperties');
+        $property->setAccessible(true);
+        $serializableProperties = $property->getValue($message);
 
         $message
             ->setSubject('I haz Cake')
@@ -1318,6 +1322,12 @@ HTML;
         $string = serialize($message);
         $this->assertStringContainsString('text message', $string);
 
+        $this->assertIsArray($serializableProperties);
+        $this->assertContains('subject', $serializableProperties);
+        $this->assertContains('emailFormat', $serializableProperties);
+        $this->assertContains('textMessage', $serializableProperties);
+        $this->assertContains('htmlMessage', $serializableProperties);
+
         /** @var \Cake\Mailer\Message $message */
         $message = unserialize($string);
         $this->assertSame('I haz Cake', $message->getSubject());