Annotation of embedaddon/php/ext/standard/tests/file/userstreams_003.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: User-space streams: stream_set_option()
                      3: --FILE--
                      4: <?php
                      5: class test_wrapper_base {
                      6:        public $return_value;
                      7:        public $expected_option;
                      8:        public $expected_value;
                      9:        function stream_open($path, $mode, $openedpath) {
                     10:                return true;
                     11:        }
                     12:        function stream_eof() {
                     13:                return false;
                     14:        }
                     15: }
                     16: class test_wrapper extends test_wrapper_base {
                     17:        function stream_set_option($option, $value, $ptrparam) {
                     18:                echo "value:\n";
                     19:                var_dump($value);
                     20:                echo "ptrparam:\n";
                     21:                var_dump($ptrparam);
                     22:                echo "\$option === $option === " . $this->expected_option . ":\n";;
                     23:                var_dump($option === $this->expected_option);
                     24:                echo "\$value === $value === " . $this->expected_value. ":\n";;
                     25:                var_dump($value === $this->expected_value);
                     26:                return $this->return_value;
                     27:        }
                     28: }
                     29: 
                     30: function test($name, $fd, $return_value, $func, $args, $expected_option, $expected_value) {
                     31:        echo "\n------ $name: -------\n";
                     32:        $data = stream_get_meta_data($fd);
                     33:        $data['wrapper_data']->return_value = $return_value;
                     34:        $data['wrapper_data']->expected_option = $expected_option;
                     35:        $data['wrapper_data']->expected_value = $expected_value;
                     36:        var_dump(call_user_func_array($func, $args));
                     37: }
                     38: 
                     39: var_dump(stream_wrapper_register('test', 'test_wrapper'));
                     40: var_dump(stream_wrapper_register('test2', 'test_wrapper_base'));
                     41: 
                     42: $fd = fopen("test://foo","r");
                     43: $fd2 = fopen("test2://foo","r");
                     44: 
                     45: test("stream_set_blocking - 1", $fd, true, "stream_set_blocking", array($fd,0), STREAM_OPTION_BLOCKING, 0);
                     46: test("stream_set_blocking - 2", $fd, false, "stream_set_blocking", array($fd,1), STREAM_OPTION_BLOCKING, 1);
                     47: test("stream_set_blocking - 3", $fd, "foo", "stream_set_blocking", array($fd,0), STREAM_OPTION_BLOCKING, 0);
                     48: test("stream_set_blocking - 4", $fd2, true, "stream_set_blocking", array($fd2,1), STREAM_OPTION_BLOCKING, 1);
                     49: 
                     50: test("stream_set_write_buffer - 1", $fd, true, "stream_set_write_buffer", array($fd,0), STREAM_OPTION_WRITE_BUFFER, STREAM_BUFFER_NONE);
                     51: test("stream_set_write_buffer - 2", $fd, true, "stream_set_write_buffer", array($fd,4096), STREAM_OPTION_WRITE_BUFFER, STREAM_BUFFER_FULL);
                     52: test("stream_set_write_buffer - 3", $fd, false, "stream_set_write_buffer", array($fd,8192), STREAM_OPTION_WRITE_BUFFER, STREAM_BUFFER_FULL);
                     53: 
                     54: test("stream_set_timeout - 1", $fd, true, "stream_set_timeout", array($fd,10,11), STREAM_OPTION_READ_TIMEOUT, 10);
                     55: test("stream_set_timeout - 2", $fd, false, "stream_set_timeout", array($fd,11,12), STREAM_OPTION_READ_TIMEOUT, 11);
                     56: 
                     57: ?>
                     58: --EXPECTF--
                     59: bool(true)
                     60: bool(true)
                     61: 
                     62: ------ stream_set_blocking - 1: -------
                     63: value:
                     64: int(0)
                     65: ptrparam:
                     66: NULL
                     67: $option === 1 === 1:
                     68: bool(true)
                     69: $value === 0 === 0:
                     70: bool(true)
                     71: bool(true)
                     72: 
                     73: ------ stream_set_blocking - 2: -------
                     74: value:
                     75: int(1)
                     76: ptrparam:
                     77: NULL
                     78: $option === 1 === 1:
                     79: bool(true)
                     80: $value === 1 === 1:
                     81: bool(true)
                     82: bool(false)
                     83: 
                     84: ------ stream_set_blocking - 3: -------
                     85: value:
                     86: int(0)
                     87: ptrparam:
                     88: NULL
                     89: $option === 1 === 1:
                     90: bool(true)
                     91: $value === 0 === 0:
                     92: bool(true)
                     93: bool(true)
                     94: 
                     95: ------ stream_set_blocking - 4: -------
                     96: 
                     97: Warning: stream_set_blocking(): test_wrapper_base::stream_set_option is not implemented! in %s
                     98: bool(false)
                     99: 
                    100: ------ stream_set_write_buffer - 1: -------
                    101: value:
                    102: int(0)
                    103: ptrparam:
                    104: int(%d)
                    105: $option === 3 === 3:
                    106: bool(true)
                    107: $value === 0 === 0:
                    108: bool(true)
                    109: int(0)
                    110: 
                    111: ------ stream_set_write_buffer - 2: -------
                    112: value:
                    113: int(2)
                    114: ptrparam:
                    115: int(4096)
                    116: $option === 3 === 3:
                    117: bool(true)
                    118: $value === 2 === 2:
                    119: bool(true)
                    120: int(0)
                    121: 
                    122: ------ stream_set_write_buffer - 3: -------
                    123: value:
                    124: int(2)
                    125: ptrparam:
                    126: int(8192)
                    127: $option === 3 === 3:
                    128: bool(true)
                    129: $value === 2 === 2:
                    130: bool(true)
                    131: int(-1)
                    132: 
                    133: ------ stream_set_timeout - 1: -------
                    134: value:
                    135: int(10)
                    136: ptrparam:
                    137: int(11)
                    138: $option === 4 === 4:
                    139: bool(true)
                    140: $value === 10 === 10:
                    141: bool(true)
                    142: bool(true)
                    143: 
                    144: ------ stream_set_timeout - 2: -------
                    145: value:
                    146: int(11)
                    147: ptrparam:
                    148: int(12)
                    149: $option === 4 === 4:
                    150: bool(true)
                    151: $value === 11 === 11:
                    152: bool(true)
                    153: bool(false)

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