public function testEncodingAndDecodingSamples() { $sampleFp = opendir($this->_samplesDir); while (false !== ($encodingDir = readdir($sampleFp))) { if (substr($encodingDir, 0, 1) == '.') { continue; } $sampleDir = $this->_samplesDir . '/' . $encodingDir; if (is_dir($sampleDir)) { $fileFp = opendir($sampleDir); while (false !== ($sampleFile = readdir($fileFp))) { if (substr($sampleFile, 0, 1) == '.') { continue; } $text = file_get_contents($sampleDir . '/' . $sampleFile); $os = new Swift_ByteStream_ArrayByteStream(); $os->write($text); $is = new Swift_ByteStream_ArrayByteStream(); $this->_encoder->encodeByteStream($os, $is); $encoded = ''; while (false !== ($bytes = $is->read(8192))) { $encoded .= $bytes; } $this->assertEquals(quoted_printable_decode($encoded), preg_replace('~\\r(?!\\n)|(?<!\\r)\\n~', "\r\n", $text), '%s: Encoded string should decode back to original string for sample ' . $sampleDir . '/' . $sampleFile); } closedir($fileFp); } } closedir($sampleFp); }
public function testEncodingAndDecodingSamplesByteStream() { $sampleFp = opendir($this->_samplesDir); while (false !== ($encodingDir = readdir($sampleFp))) { if (substr($encodingDir, 0, 1) == '.') { continue; } $sampleDir = $this->_samplesDir . '/' . $encodingDir; if (is_dir($sampleDir)) { $fileFp = opendir($sampleDir); while (false !== ($sampleFile = readdir($fileFp))) { if (substr($sampleFile, 0, 1) == '.') { continue; } $text = file_get_contents($sampleDir . '/' . $sampleFile); $os = new Swift_ByteStream_ArrayByteStream(); $os->write($text); $is = new Swift_ByteStream_ArrayByteStream(); $this->_encoder->encodeByteStream($os, $is); $encoded = ''; while (false !== ($bytes = $is->read(8192))) { $encoded .= $bytes; } $this->assertEquals($encoded, $text, '%s: Encoded string should be identical to original string for sample ' . $sampleDir . '/' . $sampleFile); } closedir($fileFp); } } closedir($sampleFp); }
public function testEncodingAndDecodingSamplesFromDiConfiguredInstance() { $sampleFp = opendir($this->_samplesDir); while (false !== ($encodingDir = readdir($sampleFp))) { if (substr($encodingDir, 0, 1) == '.') { continue; } $encoding = $encodingDir; $encoder = $this->_createEncoderFromContainer(); $sampleDir = $this->_samplesDir . '/' . $encodingDir; if (is_dir($sampleDir)) { $fileFp = opendir($sampleDir); while (false !== ($sampleFile = readdir($fileFp))) { if (substr($sampleFile, 0, 1) == '.') { continue; } $text = file_get_contents($sampleDir . '/' . $sampleFile); $os = new Swift_ByteStream_ArrayByteStream(); $os->write($text); $is = new Swift_ByteStream_ArrayByteStream(); $encoder->encodeByteStream($os, $is); $encoded = ''; while (false !== ($bytes = $is->read(8192))) { $encoded .= $bytes; } $this->assertEquals(str_replace("\r\n", "\n", quoted_printable_decode($encoded)), str_replace("\r\n", "\n", $text), '%s: Encoded string should decode back to original string for sample ' . $sampleDir . '/' . $sampleFile); } closedir($fileFp); } } closedir($sampleFp); }
public function testByteStreamAndStringCanBeAppended() { $this->_cache->setString($this->_key1, 'foo', 'test', Swift_KeyCache::MODE_APPEND); $os = new Swift_ByteStream_ArrayByteStream(); $os->write('abcdef'); $this->_cache->importFromByteStream($this->_key1, 'foo', $os, Swift_KeyCache::MODE_APPEND); $this->assertEquals('testabcdef', $this->_cache->getString($this->_key1, 'foo')); }
public function testTextIsPreWrapped() { $encoder = $this->createEncoder(); $input = str_repeat('a', 70) . "\r\n" . str_repeat('a', 70) . "\r\n" . str_repeat('a', 70); $os = new Swift_ByteStream_ArrayByteStream(); $is = new Swift_ByteStream_ArrayByteStream(); $is->write($input); $encoder->encodeByteStream($is, $os); $this->assertEquals($input, $os->read(PHP_INT_MAX)); }