add more tests for bug #64166

This commit is contained in:
Stanislav Malyshev 2013-06-16 16:34:34 -07:00
parent 0dc98208ee
commit 7bb052ee3e
2 changed files with 98 additions and 0 deletions

View File

@ -0,0 +1,50 @@
--TEST--
Bug #64166: quoted-printable-encode stream filter incorrectly discarding whitespace - split reads
--FILE--
<?php
function test_64166($data) {
$fd = fopen('php://temp', 'w+');
fwrite($fd, $data);
rewind($fd);
$res = stream_filter_append($fd, 'convert.quoted-printable-encode', STREAM_FILTER_READ, array(
'line-break-chars' => "\n",
'line-length' => 74
));
$str = "";
while(($c = fread($fd, 1))!= "") $str .= $c;
var_dump($str);
stream_filter_remove($res);
rewind($fd);
stream_filter_append($fd, 'convert.quoted-printable-encode', STREAM_FILTER_READ, array(
'line-break-chars' => "\n",
'line-length' => 6
));
$str = "";
while(($c = fread($fd, 1))!= "") $str .= $c;
var_dump($str);
fclose($fd);
}
test_64166("FIRST \nSECOND");
test_64166("FIRST \nSECOND");
?>
--EXPECT--
string(15) "FIRST=20
SECOND"
string(19) "FIRST=
=20
SECON=
D"
string(18) "FIRST=20=20
SECOND"
string(24) "FIRST=
=20=
=20
SECON=
D"

View File

@ -0,0 +1,48 @@
--TEST--
Bug #64166: quoted-printable-encode stream filter incorrectly discarding whitespace - writes
--FILE--
<?php
function test_64166($data) {
$fd = fopen('php://temp', 'w+');
$res = stream_filter_append($fd, 'convert.quoted-printable-encode', STREAM_FILTER_WRITE, array(
'line-break-chars' => "\n",
'line-length' => 74
));
fwrite($fd, $data);
rewind($fd);
var_dump(stream_get_contents($fd, -1, 0));
stream_filter_remove($res);
rewind($fd);
stream_filter_append($fd, 'convert.quoted-printable-encode', STREAM_FILTER_WRITE, array(
'line-break-chars' => "\n",
'line-length' => 6
));
fwrite($fd, $data);
rewind($fd);
var_dump(stream_get_contents($fd, -1, 0));
fclose($fd);
}
test_64166("FIRST \nSECOND");
test_64166("FIRST \nSECOND");
?>
--EXPECT--
string(15) "FIRST=20
SECOND"
string(19) "FIRST=
=20
SECON=
D"
string(18) "FIRST=20=20
SECOND"
string(24) "FIRST=
=20=
=20
SECON=
D"