php-src/ext/mbstring/tests/mb_strtoupper_basic.phpt

60 lines
1.5 KiB
PHP

--TEST--
Test mb_strtoupper() function : basic functionality
--SKIPIF--
<?php
extension_loaded('mbstring') or die('skip');
function_exists('mb_strtoupper') or die("skip mb_strtoupper() is not available in this build");
?>
--FILE--
<?php
/* Prototype : string mb_strtoupper(string $sourcestring [, string $encoding]
* Description: Returns a uppercased version of $sourcestring
* Source code: ext/mbstring/mbstring.c
*/
/*
* Test basic functionality of mb_strtoupper
*/
echo "*** Testing mb_strtoupper() : basic functionality ***\n";
mb_internal_encoding('utf-8');
$ascii_lower = b'abcdefghijklmnopqrstuvwxyz';
$ascii_upper = b'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
$greek_lower = base64_decode('zrHOss6zzrTOtc62zrfOuM65zrrOu868zr3Ovs6/z4DPgc+Dz4TPhc+Gz4fPiM+J');
$greek_upper = base64_decode('zpHOks6TzpTOlc6WzpfOmM6ZzprOm86czp3Ons6fzqDOoc6jzqTOpc6mzqfOqM6p');
echo "\n-- ASCII String --\n";
$ascii = mb_strtoupper($ascii_lower);
var_dump(base64_encode($ascii));
if($ascii == $ascii_upper) {
echo "Correctly converted\n";
} else {
echo "Incorrectly converted\n";
}
echo "\n-- Multibyte String --\n";
$mb = mb_strtoupper($greek_lower, 'UTF-8');
var_dump(base64_encode($mb));
if ($mb == $greek_upper) {
echo "Correctly converted\n";
} else {
echo "Incorreclty converted\n";
}
echo "Done";
?>
--EXPECT--
*** Testing mb_strtoupper() : basic functionality ***
-- ASCII String --
string(36) "QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVo="
Correctly converted
-- Multibyte String --
string(64) "zpHOks6TzpTOlc6WzpfOmM6ZzprOm86czp3Ons6fzqDOoc6jzqTOpc6mzqfOqM6p"
Correctly converted
Done