Annotation of embedaddon/php/ext/standard/tests/file/userstreams_003.phpt, revision 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>