Annotation of embedaddon/php/ext/mbstring/tests/bug45923.phpt, revision 1.1

1.1     ! misho       1: --TEST--
        !             2: Bug #45923 (mb_st[r]ripos() offset not handled correctly)
        !             3: --SKIPIF--
        !             4: <?php extension_loaded('mbstring') or die('skip mbstring not available'); ?>
        !             5: --INI--
        !             6: mbstring.internal_encoding=UTF-8
        !             7: --FILE--
        !             8: <?php
        !             9: var_dump(strpos("abc abc abc", "abc", 0));
        !            10: var_dump(strpos("abc abc abc", "abc", 3));
        !            11: var_dump(strpos("abc abc abc", "abc", 6));
        !            12: var_dump(strpos("abc abc abc", "abc", 9));
        !            13: var_dump(strpos("abc abc abc", "abc", 11));
        !            14: var_dump(strpos("abc abc abc", "abc", 12));
        !            15: var_dump(strpos("abc abc abc", "abc", -1));
        !            16: var_dump(strpos("abc abc abc", "abc", -3));
        !            17: var_dump(strpos("abc abc abc", "abc", -6));
        !            18: 
        !            19: var_dump(mb_strpos("●○◆ ●○◆ ●○◆", "●○◆", 0));
        !            20: var_dump(mb_strpos("●○◆ ●○◆ ●○◆", "●○◆", 3));
        !            21: var_dump(mb_strpos("●○◆ ●○◆ ●○◆", "●○◆", 6));
        !            22: var_dump(mb_strpos("●○◆ ●○◆ ●○◆", "●○◆", 9));
        !            23: var_dump(mb_strpos("●○◆ ●○◆ ●○◆", "●○◆", 11));
        !            24: var_dump(mb_strpos("●○◆ ●○◆ ●○◆", "●○◆", 12));
        !            25: var_dump(mb_strpos("●○◆ ●○◆ ●○◆", "●○◆", -1));
        !            26: var_dump(mb_strpos("●○◆ ●○◆ ●○◆", "●○◆", -3));
        !            27: var_dump(mb_strpos("●○◆ ●○◆ ●○◆", "●○◆", -6));
        !            28: 
        !            29: var_dump(stripos("abc abc abc", "abc", 0));
        !            30: var_dump(stripos("abc abc abc", "abc", 3));
        !            31: var_dump(stripos("abc abc abc", "abc", 6));
        !            32: var_dump(stripos("abc abc abc", "abc", 9));
        !            33: var_dump(stripos("abc abc abc", "abc", 11));
        !            34: var_dump(stripos("abc abc abc", "abc", 12));
        !            35: var_dump(stripos("abc abc abc", "abc", -1));
        !            36: var_dump(stripos("abc abc abc", "abc", -3));
        !            37: var_dump(stripos("abc abc abc", "abc", -6));
        !            38: 
        !            39: var_dump(mb_stripos("●○◆ ●○◆ ●○◆", "●○◆", 0));
        !            40: var_dump(mb_stripos("●○◆ ●○◆ ●○◆", "●○◆", 3));
        !            41: var_dump(mb_stripos("●○◆ ●○◆ ●○◆", "●○◆", 6));
        !            42: var_dump(mb_stripos("●○◆ ●○◆ ●○◆", "●○◆", 9));
        !            43: var_dump(mb_stripos("●○◆ ●○◆ ●○◆", "●○◆", 11));
        !            44: var_dump(mb_stripos("●○◆ ●○◆ ●○◆", "●○◆", 12));
        !            45: var_dump(mb_stripos("●○◆ ●○◆ ●○◆", "●○◆", -1));
        !            46: var_dump(mb_stripos("●○◆ ●○◆ ●○◆", "●○◆", -3));
        !            47: var_dump(mb_stripos("●○◆ ●○◆ ●○◆", "●○◆", -6));
        !            48: 
        !            49: var_dump(strrpos("abc abc abc", "abc", 0));
        !            50: var_dump(strrpos("abc abc abc", "abc", 3));
        !            51: var_dump(strrpos("abc abc abc", "abc", 6));
        !            52: var_dump(strrpos("abc abc abc", "abc", 9));
        !            53: var_dump(strrpos("abc abc abc", "abc", 11));
        !            54: var_dump(strrpos("abc abc abc", "abc", 12));
        !            55: var_dump(strrpos("abc abc abc", "abc", -1));
        !            56: var_dump(strrpos("abc abc abc", "abc", -3));
        !            57: var_dump(strrpos("abc abc abc", "abc", -6));
        !            58: 
        !            59: var_dump(mb_strrpos("●○◆ ●○◆ ●○◆", "●○◆", 0));
        !            60: var_dump(mb_strrpos("●○◆ ●○◆ ●○◆", "●○◆", 3));
        !            61: var_dump(mb_strrpos("●○◆ ●○◆ ●○◆", "●○◆", 6));
        !            62: var_dump(mb_strrpos("●○◆ ●○◆ ●○◆", "●○◆", 9));
        !            63: var_dump(mb_strrpos("●○◆ ●○◆ ●○◆", "●○◆", 11));
        !            64: var_dump(mb_strrpos("●○◆ ●○◆ ●○◆", "●○◆", 12));
        !            65: var_dump(mb_strrpos("●○◆ ●○◆ ●○◆", "●○◆", -1));
        !            66: var_dump(mb_strrpos("●○◆ ●○◆ ●○◆", "●○◆", -3));
        !            67: var_dump(mb_strrpos("●○◆ ●○◆ ●○◆", "●○◆", -6));
        !            68: 
        !            69: var_dump(strripos("abc abc abc", "abc", 0));
        !            70: var_dump(strripos("abc abc abc", "abc", 3));
        !            71: var_dump(strripos("abc abc abc", "abc", 6));
        !            72: var_dump(strripos("abc abc abc", "abc", 9));
        !            73: var_dump(strripos("abc abc abc", "abc", 11));
        !            74: var_dump(strripos("abc abc abc", "abc", 12));
        !            75: var_dump(strripos("abc abc abc", "abc", -1));
        !            76: var_dump(strripos("abc abc abc", "abc", -3));
        !            77: var_dump(strripos("abc abc abc", "abc", -6));
        !            78: 
        !            79: var_dump(mb_strripos("●○◆ ●○◆ ●○◆", "●○◆", 0));
        !            80: var_dump(mb_strripos("●○◆ ●○◆ ●○◆", "●○◆", 3));
        !            81: var_dump(mb_strripos("●○◆ ●○◆ ●○◆", "●○◆", 6));
        !            82: var_dump(mb_strripos("●○◆ ●○◆ ●○◆", "●○◆", 9));
        !            83: var_dump(mb_strripos("●○◆ ●○◆ ●○◆", "●○◆", 11));
        !            84: var_dump(mb_strripos("●○◆ ●○◆ ●○◆", "●○◆", 12));
        !            85: var_dump(mb_strripos("●○◆ ●○◆ ●○◆", "●○◆", -1));
        !            86: var_dump(mb_strripos("●○◆ ●○◆ ●○◆", "●○◆", -3));
        !            87: var_dump(mb_strripos("●○◆ ●○◆ ●○◆", "●○◆", -6));
        !            88: 
        !            89: ?>
        !            90: --EXPECTF--
        !            91: int(0)
        !            92: int(4)
        !            93: int(8)
        !            94: bool(false)
        !            95: bool(false)
        !            96: 
        !            97: Warning: strpos(): Offset not contained in string in %s on line %d
        !            98: bool(false)
        !            99: 
        !           100: Warning: strpos(): Offset not contained in string in %s on line %d
        !           101: bool(false)
        !           102: 
        !           103: Warning: strpos(): Offset not contained in string in %s on line %d
        !           104: bool(false)
        !           105: 
        !           106: Warning: strpos(): Offset not contained in string in %s on line %d
        !           107: bool(false)
        !           108: int(0)
        !           109: int(4)
        !           110: int(8)
        !           111: bool(false)
        !           112: bool(false)
        !           113: 
        !           114: Warning: mb_strpos(): Offset not contained in string in %s on line %d
        !           115: bool(false)
        !           116: 
        !           117: Warning: mb_strpos(): Offset not contained in string in %s on line %d
        !           118: bool(false)
        !           119: 
        !           120: Warning: mb_strpos(): Offset not contained in string in %s on line %d
        !           121: bool(false)
        !           122: 
        !           123: Warning: mb_strpos(): Offset not contained in string in %s on line %d
        !           124: bool(false)
        !           125: int(0)
        !           126: int(4)
        !           127: int(8)
        !           128: bool(false)
        !           129: bool(false)
        !           130: 
        !           131: Warning: stripos(): Offset not contained in string in %s on line %d
        !           132: bool(false)
        !           133: 
        !           134: Warning: stripos(): Offset not contained in string in %s on line %d
        !           135: bool(false)
        !           136: 
        !           137: Warning: stripos(): Offset not contained in string in %s on line %d
        !           138: bool(false)
        !           139: 
        !           140: Warning: stripos(): Offset not contained in string in %s on line %d
        !           141: bool(false)
        !           142: int(0)
        !           143: int(4)
        !           144: int(8)
        !           145: bool(false)
        !           146: bool(false)
        !           147: 
        !           148: Warning: mb_stripos(): Offset not contained in string in %s on line %d
        !           149: bool(false)
        !           150: 
        !           151: Warning: mb_stripos(): Offset not contained in string in %s on line %d
        !           152: bool(false)
        !           153: 
        !           154: Warning: mb_stripos(): Offset not contained in string in %s on line %d
        !           155: bool(false)
        !           156: 
        !           157: Warning: mb_stripos(): Offset not contained in string in %s on line %d
        !           158: bool(false)
        !           159: int(8)
        !           160: int(8)
        !           161: int(8)
        !           162: bool(false)
        !           163: bool(false)
        !           164: 
        !           165: Warning: strrpos(): Offset is greater than the length of haystack string in %s on line %d
        !           166: bool(false)
        !           167: int(8)
        !           168: int(8)
        !           169: int(4)
        !           170: int(8)
        !           171: int(8)
        !           172: int(8)
        !           173: bool(false)
        !           174: bool(false)
        !           175: 
        !           176: Warning: mb_strrpos(): Offset is greater than the length of haystack string in %s on line %d
        !           177: bool(false)
        !           178: int(8)
        !           179: int(8)
        !           180: int(4)
        !           181: int(8)
        !           182: int(8)
        !           183: int(8)
        !           184: bool(false)
        !           185: bool(false)
        !           186: 
        !           187: Warning: strripos(): Offset is greater than the length of haystack string in %s on line %d
        !           188: bool(false)
        !           189: int(8)
        !           190: int(8)
        !           191: int(4)
        !           192: int(8)
        !           193: int(8)
        !           194: int(8)
        !           195: bool(false)
        !           196: bool(false)
        !           197: 
        !           198: Warning: mb_strripos(): Offset is greater than the length of haystack string in %s on line %d
        !           199: bool(false)
        !           200: int(8)
        !           201: int(8)
        !           202: int(4)

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