1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
|
--TEST--
encoding stream chunked flush
--SKIPIF--
<?php
include "skipif.inc";
?>
--FILE--
<?php
echo "Test\n";
$dech = new http\Encoding\Stream\Dechunk(http\Encoding\Stream::FLUSH_FULL);
$file = file(__FILE__);
$data = "";
foreach ($file as $i => $line) {
$dech = clone $dech;
if ($i % 2) {
$data .= $dech->update(sprintf("%lx\r\n%s\r\n", strlen($line), $line));
} else {
$data .= $dech->update(sprintf("%lx\r\n", strlen($line)));
$data .= $dech->flush();
$data .= $dech->update($line);
$data .= $dech->flush();
$data .= $dech->update("\r\n");
}
$dech->flush();
$dech->done() and printf("uh-oh done() reported true!\n");
}
$data .= $dech->update("0\r\n");
var_dump($dech->done());
$data .= $dech->finish();
var_dump(implode("", $file) === $data);
?>
DONE
--EXPECT--
Test
bool(true)
bool(true)
DONE
|