Annotation of embedaddon/php/ext/standard/tests/file/bug22414.phpt, revision 1.1.1.2

1.1       misho       1: --TEST--
                      2: Bug #22414 (passthru() does not read data correctly)
                      3: --INI--
                      4: output_handler=
                      5: --FILE--
                      6: <?php
                      7: 
                      8:        $php = getenv('TEST_PHP_EXECUTABLE');
                      9:        $tmpfile = tempnam(__DIR__, 'phpt');
1.1.1.2 ! misho      10:        $args = ' -n ';
1.1       misho      11:        
                     12:        /* Regular Data Test */
                     13:        passthru($php . $args . ' -r " echo \"HELLO\"; "');
                     14: 
                     15:        echo "\n";
                     16: 
                     17:        /* Binary Data Test */
                     18:        
                     19:        if (substr(PHP_OS, 0, 3) != 'WIN') {
                     20:                $cmd = $php . $args . ' -r \"readfile(@getenv(\'TEST_PHP_EXECUTABLE\')); \"';
                     21:                $cmd = $php . $args . ' -r \' passthru("'.$cmd.'"); \' > '.$tmpfile ;
                     22:        } else {
                     23:                $cmd = $php . $args . ' -r \"readfile(@getenv(\\\\\\"TEST_PHP_EXECUTABLE\\\\\\")); \"';
                     24:                $cmd = $php . $args . ' -r " passthru(\''.$cmd.'\');" > '.$tmpfile ;
                     25:        }
                     26:        exec($cmd);
                     27: 
                     28:        if (md5_file($php) == md5_file($tmpfile)) {
                     29:                echo "Works\n";
                     30:        } else {
                     31:                echo "Does not work\n";
                     32:        }
                     33:        
                     34:        @unlink($tmpfile);
                     35: ?>
                     36: --EXPECT--
                     37: HELLO
                     38: Works

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>