cvs: php-src /ext/ctype/tests ctype_alnum_basic.phpt ctype_alnum_error.phpt ctype_alnum_variation1.phpt ctype_alnum_variation2.phpt
ctype_alnum_variation3.phpt ctype_alnum_variation4.phpt ctype_alpha_basic.phpt ctype_alpha_error.phpt ctype_alpha_variation1.phpt
ctype_alpha_variation2.phpt ctype_alpha_variation3.phpt ctype_alpha_variation4.phpt ctype_cntrl_basic.phpt ctype_cntrl_error.phpt
ctype_cntrl_variation1.phpt ctype_cntrl_variation2.phpt ctype_cntrl_variation3.phpt ctype_cntrl_variation4.phpt ctype_digit_basic.phpt
ctype_digit_error.phpt ctype_digit_variation1.phpt ctype_digit_variation2.phpt ctype_digit_variation3.phpt ctype_digit_variation4.phpt
ctype_graph_basic.phpt ctype_graph_error.phpt ctype_graph_variation1.phpt ctype_graph_variation2.phpt ctype_graph_variation3.phpt
ctype_graph_variation4.phpt ctype_lower_basic.phpt ctype_lower_error.phpt ctype_lower_variation1.phpt ctype_lower_variation2.phpt
ctype_lower_variation3.phpt ctype_lower_variation4.phpt ct! ype_print_basic.phpt ctype_print_error.phpt ctype_print_variation1.phpt
ctype_print_variation2.phpt ctype_print_variation3.phpt ctype_print_variation4.phpt ctype_punct_basic.phpt ctype_punct_error.phpt
ctype_punct_variation1.phpt ctype_punct_variation2.phpt ctype_punct_variation3.phpt ctype_punct_variation4.phpt ctype_space_basic.phpt
ctype_space_error.phpt ctype_space_variation1.phpt ctype_space_variation2.phpt ctype_space_variation3.phpt ctype_space_variation4.phpt
ctype_upper_basic.phpt ctype_upper_error.phpt ctype_upper_variation1.phpt ctype_upper_variation2.phpt ctype_upper_variation3.phpt
ctype_upper_variation4.phpt ctype_xdigit_basic.phpt ctype_xdigit_error.phpt ctype_xdigit_variation1.phpt ctype_xdigit_variation2.phpt
ctype_xdigit_variation3.phpt ctype_xdigit_variation4.phpt

From: Date: Mon, 17 Mar 2008 09:54:37 +0000
Subject: cvs: php-src /ext/ctype/tests ctype_alnum_basic.phpt ctype_alnum_error.phpt ctype_alnum_variation1.phpt ctype_alnum_variation2.phpt
ctype_alnum_variation3.phpt ctype_alnum_variation4.phpt ctype_alpha_basic.phpt ctype_alpha_error.phpt ctype_alpha_variation1.phpt
ctype_alpha_variation2.phpt ctype_alpha_variation3.phpt ctype_alpha_variation4.phpt ctype_cntrl_basic.phpt ctype_cntrl_error.phpt
ctype_cntrl_variation1.phpt ctype_cntrl_variation2.phpt ctype_cntrl_variation3.phpt ctype_cntrl_variation4.phpt ctype_digit_basic.phpt
ctype_digit_error.phpt ctype_digit_variation1.phpt ctype_digit_variation2.phpt ctype_digit_variation3.phpt ctype_digit_variation4.phpt
ctype_graph_basic.phpt ctype_graph_error.phpt ctype_graph_variation1.phpt ctype_graph_variation2.phpt ctype_graph_variation3.phpt
ctype_graph_variation4.phpt ctype_lower_basic.phpt ctype_lower_error.phpt ctype_lower_variation1.phpt ctype_lower_variation2.phpt
ctype_lower_variation3.phpt ctype_lower_variation4.phpt ct! ype_print_basic.phpt ctype_print_error.phpt ctype_print_variation1.phpt
ctype_print_variation2.phpt ctype_print_variation3.phpt ctype_print_variation4.phpt ctype_punct_basic.phpt ctype_punct_error.phpt
ctype_punct_variation1.phpt ctype_punct_variation2.phpt ctype_punct_variation3.phpt ctype_punct_variation4.phpt ctype_space_basic.phpt
ctype_space_error.phpt ctype_space_variation1.phpt ctype_space_variation2.phpt ctype_space_variation3.phpt ctype_space_variation4.phpt
ctype_upper_basic.phpt ctype_upper_error.phpt ctype_upper_variation1.phpt ctype_upper_variation2.phpt ctype_upper_variation3.phpt
ctype_upper_variation4.phpt ctype_xdigit_basic.phpt ctype_xdigit_error.phpt ctype_xdigit_variation1.phpt ctype_xdigit_variation2.phpt
ctype_xdigit_variation3.phpt ctype_xdigit_variation4.phpt
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-49138@lists.php.net to get a copy of this message
jmessa Mon Mar 17 09:54:37 2008 UTC Modified files: /php-src/ext/ctype/tests ctype_alpha_variation3.phpt ctype_print_variation4.phpt ctype_cntrl_variation3.phpt ctype_print_variation1.phpt ctype_print_variation2.phpt ctype_upper_variation4.phpt ctype_punct_variation1.phpt ctype_digit_variation3.phpt ctype_space_variation2.phpt ctype_lower_basic.phpt ctype_alpha_error.phpt ctype_punct_error.phpt ctype_alnum_variation3.phpt ctype_xdigit_error.phpt ctype_alpha_variation2.phpt ctype_space_basic.phpt ctype_digit_basic.phpt ctype_alpha_variation1.phpt ctype_cntrl_error.phpt ctype_alnum_variation1.phpt ctype_punct_variation3.phpt ctype_alnum_basic.phpt ctype_print_variation3.phpt ctype_digit_variation1.phpt ctype_graph_variation1.phpt ctype_cntrl_basic.phpt ctype_xdigit_variation1.phpt ctype_xdigit_variation2.phpt ctype_space_variation3.phpt ctype_digit_error.phpt ctype_lower_variation2.phpt ctype_upper_variation2.phpt ctype_space_variation1.phpt ctype_xdigit_basic.phpt ctype_upper_variation1.phpt ctype_alnum_error.phpt ctype_alpha_basic.phpt ctype_alnum_variation2.phpt ctype_lower_variation4.phpt ctype_digit_variation4.phpt ctype_upper_error.phpt ctype_graph_variation4.phpt ctype_space_variation4.phpt ctype_xdigit_variation4.phpt ctype_graph_variation3.phpt ctype_punct_variation4.phpt ctype_digit_variation2.phpt ctype_print_basic.phpt ctype_cntrl_variation2.phpt ctype_print_error.phpt ctype_alpha_variation4.phpt ctype_lower_variation3.phpt ctype_alnum_variation4.phpt ctype_graph_variation2.phpt ctype_xdigit_variation3.phpt ctype_punct_basic.phpt ctype_space_error.phpt ctype_upper_basic.phpt ctype_upper_variation3.phpt ctype_cntrl_variation1.phpt ctype_graph_basic.phpt ctype_graph_error.phpt ctype_punct_variation2.phpt ctype_cntrl_variation4.phpt ctype_lower_error.phpt ctype_lower_variation1.phpt Log: - new tests for ctype functions

http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_alpha_variation3.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_alpha_variation3.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_alpha_variation3.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_alpha_variation3.phpt Mon Mar 17 09:54:35 2008 @@ -0,0 +1,134 @@ +--TEST-- +Test ctype_alpha() function : usage variations - different strings +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_alpha(mixed $c) + * Description: Checks for alphabetic character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass strings containing different character types to ctype_alpha() to test + * which are considered valid alphabetic character only strings + */ + +echo "*** Testing ctype_alpha() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$values = array( +/*1*/ "This string contains just letters and spaces", // Simple string + "but this one contains some numbers too 123+456 = 678", // Mixed string + "", + " ", +/*5*/ "a", + "ABCXYZ", + "abcxyz", + "ABCXYZ123DEF456", + "abczyz123DEF456", +/*10*/ "\r\n", + "123", + "03F", // hexadecimal 'digits' + ")speci@! ch@r$(", + '@!$*', +/*15*/ 'ABC', + 'abc', + 'ABC123', + 'abc123', + 'abc123\n', +/*20*/ 'abc 123', + '', + ' ', +/*23*/ base64_decode("w4DDoMOHw6fDiMOo") // non-ascii characters +); + + +// loop through each element of $values to test behaviour of ctype_alnum() +$iterator = 1; +foreach($values as $value) { + echo "\n-- Iteration $iterator --\n"; + var_dump( ctype_alpha($value) ); + $iterator++; +}; + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_alpha() : usage variations *** + +-- Iteration 1 -- +bool(false) + +-- Iteration 2 -- +bool(false) + +-- Iteration 3 -- +bool(false) + +-- Iteration 4 -- +bool(false) + +-- Iteration 5 -- +bool(true) + +-- Iteration 6 -- +bool(true) + +-- Iteration 7 -- +bool(true) + +-- Iteration 8 -- +bool(false) + +-- Iteration 9 -- +bool(false) + +-- Iteration 10 -- +bool(false) + +-- Iteration 11 -- +bool(false) + +-- Iteration 12 -- +bool(false) + +-- Iteration 13 -- +bool(false) + +-- Iteration 14 -- +bool(false) + +-- Iteration 15 -- +bool(true) + +-- Iteration 16 -- +bool(true) + +-- Iteration 17 -- +bool(false) + +-- Iteration 18 -- +bool(false) + +-- Iteration 19 -- +bool(false) + +-- Iteration 20 -- +bool(false) + +-- Iteration 21 -- +bool(false) + +-- Iteration 22 -- +bool(false) + +-- Iteration 23 -- +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_print_variation4.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_print_variation4.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_print_variation4.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_print_variation4.phpt Mon Mar 17 09:54:35 2008 @@ -0,0 +1,67 @@ +--TEST-- +Test ctype_print() function : usage variations - octal and hexadecimal values +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_print(mixed $c) + * Description: Checks for printable character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass octal and hexadecimal values to ctype_print() to test behaviour + */ + +echo "*** Testing ctype_print() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$octal_values = array(040, 041, 042, 043); +$hex_values = array (0x20, 0x21, 0x23, 0x24); + +echo "\n-- Octal Values --\n"; +$iterator = 1; +foreach($octal_values as $c) { + echo "-- Iteration $iterator --\n"; + var_dump(ctype_print($c)); + $iterator++; +} + +echo "\n-- Hexadecimal Values --\n"; +$iterator = 1; +foreach($hex_values as $c) { + echo "-- Iteration $iterator --\n"; + var_dump(ctype_print($c)); + $iterator++; +} +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_print() : usage variations *** + +-- Octal Values -- +-- Iteration 1 -- +bool(true) +-- Iteration 2 -- +bool(true) +-- Iteration 3 -- +bool(true) +-- Iteration 4 -- +bool(true) + +-- Hexadecimal Values -- +-- Iteration 1 -- +bool(true) +-- Iteration 2 -- +bool(true) +-- Iteration 3 -- +bool(true) +-- Iteration 4 -- +bool(true) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_cntrl_variation3.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_cntrl_variation3.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_cntrl_variation3.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_cntrl_variation3.phpt Mon Mar 17 09:54:35 2008 @@ -0,0 +1,162 @@ +--TEST-- +Test ctype_cntrl() function : usage variations - Different strings +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_cntrl(mixed $c) + * Description: Checks for control character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass strings containing different character types to ctype_cntrl() to test + * which are considered valid control character only strings + */ + +echo "*** Testing ctype_cntrl() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$values = array( +/*1*/ "This string contains just letters and spaces", // Simple string + "but this one contains some numbers too 123+456 = 678", // Mixed string + "", + " ", +/*5*/ "a", + "ABCXYZ", + "abcxyz", + "ABCXYZ123DEF456", + "abczyz123DEF456", +/*10*/ "\r\n", + "123", + "03F", // hexadecimal 'digits' + ")speci@! ch@r$(", + '@!$*', +/*15*/ 'ABC', + 'abc', + 'ABC123', + 'abc123', + 'abc123\n', +/*20*/ 'abc 123', + '', + ' ', + base64_decode("w4DDoMOHw6fDiMOo"), // non-ascii characters + "\n", +/*25*/ "\r", + "\t", + "0xD", + "0xA", + "0xE", +/*30*/ "\t\r\n", +); + + +// loop through each element of $values to test behaviour of ctype_cntrl() +$iterator = 1; +foreach($values as $value) { + echo "\n-- Iteration $iterator --\n"; + var_dump( ctype_cntrl($value) ); + $iterator++; +}; + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_cntrl() : usage variations *** + +-- Iteration 1 -- +bool(false) + +-- Iteration 2 -- +bool(false) + +-- Iteration 3 -- +bool(false) + +-- Iteration 4 -- +bool(false) + +-- Iteration 5 -- +bool(false) + +-- Iteration 6 -- +bool(false) + +-- Iteration 7 -- +bool(false) + +-- Iteration 8 -- +bool(false) + +-- Iteration 9 -- +bool(false) + +-- Iteration 10 -- +bool(true) + +-- Iteration 11 -- +bool(false) + +-- Iteration 12 -- +bool(false) + +-- Iteration 13 -- +bool(false) + +-- Iteration 14 -- +bool(false) + +-- Iteration 15 -- +bool(false) + +-- Iteration 16 -- +bool(false) + +-- Iteration 17 -- +bool(false) + +-- Iteration 18 -- +bool(false) + +-- Iteration 19 -- +bool(false) + +-- Iteration 20 -- +bool(false) + +-- Iteration 21 -- +bool(false) + +-- Iteration 22 -- +bool(false) + +-- Iteration 23 -- +bool(false) + +-- Iteration 24 -- +bool(true) + +-- Iteration 25 -- +bool(true) + +-- Iteration 26 -- +bool(true) + +-- Iteration 27 -- +bool(false) + +-- Iteration 28 -- +bool(false) + +-- Iteration 29 -- +bool(false) + +-- Iteration 30 -- +bool(true) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_print_variation1.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_print_variation1.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_print_variation1.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_print_variation1.phpt Mon Mar 17 09:54:35 2008 @@ -0,0 +1,183 @@ +--TEST-- +Test ctype_print() function : usage variations - different data types as $c arg +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_print(mixed $c) + * Description: Checks for printable character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass different data types as $c argument to ctype_print() to test behaviour + */ + +echo "*** Testing ctype_print() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +//get an unset variable +$unset_var = 10; +unset ($unset_var); + +// get a class +class classA +{ + public function __toString() { + return "Class A object"; + } +} + +// heredoc string +$heredoc = <<<EOT +hello world +EOT; + +// get a resource variable +$fp = fopen(__FILE__, "r"); + +// unexpected values to be passed to $c argument +$inputs = array( + + // int data +/*1*/ 0, + 1, + 12345, + -2345, + + // float data +/*5*/ 10.5, + -10.5, + 12.3456789000e10, + 12.3456789000E-10, + .5, + + // null data +/*10*/ NULL, + null, + + // boolean data +/*12*/ true, + false, + TRUE, + FALSE, + + // empty data +/*16*/ "", + '', + array(), + + // string data +/*19*/ "string", + 'string', + $heredoc, + + // object data +/*22*/ new classA(), + + // undefined data +/*23*/ @$undefined_var, + + // unset data +/*24*/ @$unset_var, + + // resource variable +/*25*/ $fp +); + +// loop through each element of $inputs to check the behavior of ctype_print() +$iterator = 1; +foreach($inputs as $input) { + echo "\n-- Iteration $iterator --\n"; + var_dump( ctype_print($input) ); + $iterator++; +}; + +fclose($fp); + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_print() : usage variations *** + +-- Iteration 1 -- +bool(false) + +-- Iteration 2 -- +bool(false) + +-- Iteration 3 -- +bool(true) + +-- Iteration 4 -- +bool(false) + +-- Iteration 5 -- +bool(false) + +-- Iteration 6 -- +bool(false) + +-- Iteration 7 -- +bool(false) + +-- Iteration 8 -- +bool(false) + +-- Iteration 9 -- +bool(false) + +-- Iteration 10 -- +bool(false) + +-- Iteration 11 -- +bool(false) + +-- Iteration 12 -- +bool(false) + +-- Iteration 13 -- +bool(false) + +-- Iteration 14 -- +bool(false) + +-- Iteration 15 -- +bool(false) + +-- Iteration 16 -- +bool(false) + +-- Iteration 17 -- +bool(false) + +-- Iteration 18 -- +bool(false) + +-- Iteration 19 -- +bool(true) + +-- Iteration 20 -- +bool(true) + +-- Iteration 21 -- +bool(true) + +-- Iteration 22 -- +bool(false) + +-- Iteration 23 -- +bool(false) + +-- Iteration 24 -- +bool(false) + +-- Iteration 25 -- +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_print_variation2.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_print_variation2.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_print_variation2.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_print_variation2.phpt Mon Mar 17 09:54:35 2008 @@ -0,0 +1,226 @@ +--TEST-- +Test ctype_print() function : usage variations - different integers +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_print(mixed $c) + * Description: Checks for printable character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass different integers to ctype_print() to test which character codes are considered + * valid printable characters + */ + +echo "*** Testing ctype_print() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +for ($i = 0; $i < 256; $i++) { + if (ctype_print($i)) { + echo "character code $i is a printable character\n"; + } +} + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_print() : usage variations *** +character code 32 is a printable character +character code 33 is a printable character +character code 34 is a printable character +character code 35 is a printable character +character code 36 is a printable character +character code 37 is a printable character +character code 38 is a printable character +character code 39 is a printable character +character code 40 is a printable character +character code 41 is a printable character +character code 42 is a printable character +character code 43 is a printable character +character code 44 is a printable character +character code 45 is a printable character +character code 46 is a printable character +character code 47 is a printable character +character code 48 is a printable character +character code 49 is a printable character +character code 50 is a printable character +character code 51 is a printable character +character code 52 is a printable character +character code 53 is a printable character +character code 54 is a printable character +character code 55 is a printable character +character code 56 is a printable character +character code 57 is a printable character +character code 58 is a printable character +character code 59 is a printable character +character code 60 is a printable character +character code 61 is a printable character +character code 62 is a printable character +character code 63 is a printable character +character code 64 is a printable character +character code 65 is a printable character +character code 66 is a printable character +character code 67 is a printable character +character code 68 is a printable character +character code 69 is a printable character +character code 70 is a printable character +character code 71 is a printable character +character code 72 is a printable character +character code 73 is a printable character +character code 74 is a printable character +character code 75 is a printable character +character code 76 is a printable character +character code 77 is a printable character +character code 78 is a printable character +character code 79 is a printable character +character code 80 is a printable character +character code 81 is a printable character +character code 82 is a printable character +character code 83 is a printable character +character code 84 is a printable character +character code 85 is a printable character +character code 86 is a printable character +character code 87 is a printable character +character code 88 is a printable character +character code 89 is a printable character +character code 90 is a printable character +character code 91 is a printable character +character code 92 is a printable character +character code 93 is a printable character +character code 94 is a printable character +character code 95 is a printable character +character code 96 is a printable character +character code 97 is a printable character +character code 98 is a printable character +character code 99 is a printable character +character code 100 is a printable character +character code 101 is a printable character +character code 102 is a printable character +character code 103 is a printable character +character code 104 is a printable character +character code 105 is a printable character +character code 106 is a printable character +character code 107 is a printable character +character code 108 is a printable character +character code 109 is a printable character +character code 110 is a printable character +character code 111 is a printable character +character code 112 is a printable character +character code 113 is a printable character +character code 114 is a printable character +character code 115 is a printable character +character code 116 is a printable character +character code 117 is a printable character +character code 118 is a printable character +character code 119 is a printable character +character code 120 is a printable character +character code 121 is a printable character +character code 122 is a printable character +character code 123 is a printable character +character code 124 is a printable character +character code 125 is a printable character +character code 126 is a printable character +character code 160 is a printable character +character code 161 is a printable character +character code 162 is a printable character +character code 163 is a printable character +character code 164 is a printable character +character code 165 is a printable character +character code 166 is a printable character +character code 167 is a printable character +character code 168 is a printable character +character code 169 is a printable character +character code 170 is a printable character +character code 171 is a printable character +character code 172 is a printable character +character code 174 is a printable character +character code 175 is a printable character +character code 176 is a printable character +character code 177 is a printable character +character code 178 is a printable character +character code 179 is a printable character +character code 180 is a printable character +character code 181 is a printable character +character code 182 is a printable character +character code 183 is a printable character +character code 184 is a printable character +character code 185 is a printable character +character code 186 is a printable character +character code 187 is a printable character +character code 188 is a printable character +character code 189 is a printable character +character code 190 is a printable character +character code 191 is a printable character +character code 192 is a printable character +character code 193 is a printable character +character code 194 is a printable character +character code 195 is a printable character +character code 196 is a printable character +character code 197 is a printable character +character code 198 is a printable character +character code 199 is a printable character +character code 200 is a printable character +character code 201 is a printable character +character code 202 is a printable character +character code 203 is a printable character +character code 204 is a printable character +character code 205 is a printable character +character code 206 is a printable character +character code 207 is a printable character +character code 208 is a printable character +character code 209 is a printable character +character code 210 is a printable character +character code 211 is a printable character +character code 212 is a printable character +character code 213 is a printable character +character code 214 is a printable character +character code 215 is a printable character +character code 216 is a printable character +character code 217 is a printable character +character code 218 is a printable character +character code 219 is a printable character +character code 220 is a printable character +character code 221 is a printable character +character code 222 is a printable character +character code 223 is a printable character +character code 224 is a printable character +character code 225 is a printable character +character code 226 is a printable character +character code 227 is a printable character +character code 228 is a printable character +character code 229 is a printable character +character code 230 is a printable character +character code 231 is a printable character +character code 232 is a printable character +character code 233 is a printable character +character code 234 is a printable character +character code 235 is a printable character +character code 236 is a printable character +character code 237 is a printable character +character code 238 is a printable character +character code 239 is a printable character +character code 240 is a printable character +character code 241 is a printable character +character code 242 is a printable character +character code 243 is a printable character +character code 244 is a printable character +character code 245 is a printable character +character code 246 is a printable character +character code 247 is a printable character +character code 248 is a printable character +character code 249 is a printable character +character code 250 is a printable character +character code 251 is a printable character +character code 252 is a printable character +character code 253 is a printable character +character code 254 is a printable character +character code 255 is a printable character +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_upper_variation4.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_upper_variation4.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_upper_variation4.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_upper_variation4.phpt Mon Mar 17 09:54:35 2008 @@ -0,0 +1,67 @@ +--TEST-- +Test ctype_upper() function : usage variations - octal and hexadecimal values +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_upper(mixed $c) + * Description: Checks for uppercase character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass octal and hexadecimal values to ctype_upper() to test behaviour + */ + +echo "*** Testing ctype_upper() : usage variations ***\n"; +$orig = setlocale(LC_CTYPE, "C"); + +$octal_values = array(0101, 0102, 0103, 0104); +$hex_values = array(0x41, 0x42, 0x43, 0x44); + +echo "\n-- Octal Values --\n"; +$iterator = 1; +foreach($octal_values as $c) { + echo "-- Iteration $iterator --\n"; + var_dump(ctype_upper($c)); + $iterator++; +} + +echo "\n-- Hexadecimal Values --\n"; +$iterator = 1; +foreach($hex_values as $c) { + echo "-- Iteration $iterator --\n"; + var_dump(ctype_upper($c)); + $iterator++; +} + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_upper() : usage variations *** + +-- Octal Values -- +-- Iteration 1 -- +bool(true) +-- Iteration 2 -- +bool(true) +-- Iteration 3 -- +bool(true) +-- Iteration 4 -- +bool(true) + +-- Hexadecimal Values -- +-- Iteration 1 -- +bool(true) +-- Iteration 2 -- +bool(true) +-- Iteration 3 -- +bool(true) +-- Iteration 4 -- +bool(true) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_punct_variation1.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_punct_variation1.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_punct_variation1.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_punct_variation1.phpt Mon Mar 17 09:54:35 2008 @@ -0,0 +1,184 @@ +--TEST-- +Test ctype_punct() function : usage variations - different data types as $c argument +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_punct(mixed $c) + * Description: Checks for any printable character which is not whitespace + * or an alphanumeric character + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass different data types as $c argument to ctype_punt() to test behaviour + */ + +echo "*** Testing ctype_punct() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +//get an unset variable +$unset_var = 10; +unset ($unset_var); + +// get a class +class classA +{ + public function __toString() { + return ",<.>"; + } +} + +// heredoc string +$heredoc = <<<EOT +[{}] +EOT; + +// get a resource variable +$fp = fopen(__FILE__, "r"); + +// unexpected values to be passed to $c argument +$inputs = array( + + // int data +/*1*/ 0, + 1, + 12345, + -2345, + + // float data +/*5*/ 10.5, + -10.5, + 12.3456789000e10, + 12.3456789000E-10, + .5, + + // null data +/*10*/ NULL, + null, + + // boolean data +/*12*/ true, + false, + TRUE, + FALSE, + + // empty data +/*16*/ "", + '', + array(), + + // string data +/*19*/ ";:'@", + '#~/?', + $heredoc, + + // object data +/*22*/ new classA(), + + // undefined data +/*23*/ @$undefined_var, + + // unset data +/*24*/ @$unset_var, + + // resource variable +/*25*/ $fp +); + +// loop through each element of $inputs to check the behavior of ctype_punct +$iterator = 1; +foreach($inputs as $input) { + echo "\n-- Iteration $iterator --\n"; + var_dump( ctype_punct($input) ); + $iterator++; +}; + +fclose($fp); + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_punct() : usage variations *** + +-- Iteration 1 -- +bool(false) + +-- Iteration 2 -- +bool(false) + +-- Iteration 3 -- +bool(false) + +-- Iteration 4 -- +bool(false) + +-- Iteration 5 -- +bool(false) + +-- Iteration 6 -- +bool(false) + +-- Iteration 7 -- +bool(false) + +-- Iteration 8 -- +bool(false) + +-- Iteration 9 -- +bool(false) + +-- Iteration 10 -- +bool(false) + +-- Iteration 11 -- +bool(false) + +-- Iteration 12 -- +bool(false) + +-- Iteration 13 -- +bool(false) + +-- Iteration 14 -- +bool(false) + +-- Iteration 15 -- +bool(false) + +-- Iteration 16 -- +bool(false) + +-- Iteration 17 -- +bool(false) + +-- Iteration 18 -- +bool(false) + +-- Iteration 19 -- +bool(true) + +-- Iteration 20 -- +bool(true) + +-- Iteration 21 -- +bool(true) + +-- Iteration 22 -- +bool(false) + +-- Iteration 23 -- +bool(false) + +-- Iteration 24 -- +bool(false) + +-- Iteration 25 -- +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_digit_variation3.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_digit_variation3.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_digit_variation3.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_digit_variation3.phpt Mon Mar 17 09:54:35 2008 @@ -0,0 +1,164 @@ +--TEST-- +Test ctype_digit() function : usage variations - different strings +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_digit(mixed $c) + * Description: Checks for numeric character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass strings containing different character types to ctype_digit() to test + * which are considered valid decimal digit only strings + */ + +echo "*** Testing ctype_digit() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$values = array( +/*1*/ "This string contains just letters and spaces", // Simple string + "but this one contains some numbers too 123+456 = 678", // Mixed string + "", + " ", +/*5*/ "a", + "ABCXYZ", + "abcxyz", + "ABCXYZ123DEF456", + "abczyz123DEF456", +/*10*/ "\r\n", + "123", + ")speci@! ch@r$(", + '@!$*', + "0", +/*15*/ "3", + "9", + "1234", + "7890", + "0677", +/*20*/ '0', + '3', + '9', + '1234', + '7890', +/*25*/ "123abc", + "abc123", + "123\r\t", + "123 ", + " 123", +/*30*/ "123E4", +/*31*/ "0x3F", +); + +$iterator = 1; +foreach($values as $value) { + echo "\n-- Iteration $iterator --\n"; + var_dump( ctype_digit($value) ); + $iterator++; +}; + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_digit() : usage variations *** + +-- Iteration 1 -- +bool(false) + +-- Iteration 2 -- +bool(false) + +-- Iteration 3 -- +bool(false) + +-- Iteration 4 -- +bool(false) + +-- Iteration 5 -- +bool(false) + +-- Iteration 6 -- +bool(false) + +-- Iteration 7 -- +bool(false) + +-- Iteration 8 -- +bool(false) + +-- Iteration 9 -- +bool(false) + +-- Iteration 10 -- +bool(false) + +-- Iteration 11 -- +bool(true) + +-- Iteration 12 -- +bool(false) + +-- Iteration 13 -- +bool(false) + +-- Iteration 14 -- +bool(true) + +-- Iteration 15 -- +bool(true) + +-- Iteration 16 -- +bool(true) + +-- Iteration 17 -- +bool(true) + +-- Iteration 18 -- +bool(true) + +-- Iteration 19 -- +bool(true) + +-- Iteration 20 -- +bool(true) + +-- Iteration 21 -- +bool(true) + +-- Iteration 22 -- +bool(true) + +-- Iteration 23 -- +bool(true) + +-- Iteration 24 -- +bool(true) + +-- Iteration 25 -- +bool(false) + +-- Iteration 26 -- +bool(false) + +-- Iteration 27 -- +bool(false) + +-- Iteration 28 -- +bool(false) + +-- Iteration 29 -- +bool(false) + +-- Iteration 30 -- +bool(false) + +-- Iteration 31 -- +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_space_variation2.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_space_variation2.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_space_variation2.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_space_variation2.phpt Mon Mar 17 09:54:35 2008 @@ -0,0 +1,47 @@ +--TEST-- +Test ctype_space() function : usage variations - different integers +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_space(mixed $c) + * Description: Checks for whitespace character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass different integers to ctype_space() to test which character codes are considered + * valid whitespace characters + */ + +echo "*** Testing ctype_space() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +for ($c = 1; $c < 256; $c++) { + if (ctype_space($c)) { + echo "character code $c is a space character\n"; + } +} +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_space() : usage variations *** +character code 9 is a space character +character code 10 is a space character +character code 11 is a space character +character code 12 is a space character +character code 13 is a space character +character code 28 is a space character +character code 29 is a space character +character code 30 is a space character +character code 31 is a space character +character code 32 is a space character +character code 133 is a space character +character code 160 is a space character +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_lower_basic.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_lower_basic.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_lower_basic.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_lower_basic.phpt Mon Mar 17 09:54:35 2008 @@ -0,0 +1,33 @@ +--TEST-- +Test ctype_lower() function : basic functionality +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_lower(mixed $c) + * Description: Checks for lowercase character(s) + * Source code: ext/ctype/ctype.c + */ + +echo "*** Testing ctype_lower() : basic functionality ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$c1 = 'helloworld'; +$c2 = "Hello, world!\n"; + +var_dump(ctype_lower($c1)); +var_dump(ctype_lower($c2)); + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_lower() : basic functionality *** +bool(true) +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_alpha_error.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_alpha_error.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_alpha_error.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_alpha_error.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,45 @@ +--TEST-- +Test ctype_alpha() function : error conditions - Incorrect number of arguments +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_alpha(mixed $c) + * Description: Checks for alphabetic character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass an incorrect number of arguments to ctype_alpha() to test behaviour + */ + +echo "*** Testing ctype_alpha() : error conditions ***\n"; + +// Zero arguments +echo "\n-- Testing ctype_alpha() function with Zero arguments --\n"; +var_dump( ctype_alpha() ); + +//Test ctype_alpha with one more than the expected number of arguments +echo "\n-- Testing ctype_alpha() function with more than expected no. of arguments --\n"; +$c = 1; +$extra_arg = 10; +var_dump( ctype_alpha($c, $extra_arg) ); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_alpha() : error conditions *** + +-- Testing ctype_alpha() function with Zero arguments -- + +Warning: ctype_alpha() expects exactly 1 parameter, 0 given in %s on line %d +NULL + +-- Testing ctype_alpha() function with more than expected no. of arguments -- + +Warning: ctype_alpha() expects exactly 1 parameter, 2 given in %s on line %d +NULL +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_punct_error.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_punct_error.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_punct_error.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_punct_error.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,50 @@ +--TEST-- +Test ctype_punct() function : error conditions - incorrect number of args +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_punct(mixed $c) + * Description: Checks for any printable character which is not whitespace + * or an alphanumeric character + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass incorrect number of arguments to ctype_punct() to test behaviour + */ + +echo "*** Testing ctype_punct() : error conditions ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +// Zero arguments +echo "\n-- Testing ctype_punct() function with Zero arguments --\n"; +var_dump( ctype_punct() ); + +//Test ctype_punct with one more than the expected number of arguments +echo "\n-- Testing ctype_punct() function with more than expected no. of arguments --\n"; +$c = 1; +$extra_arg = 10; +var_dump( ctype_punct($c, $extra_arg) ); + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_punct() : error conditions *** + +-- Testing ctype_punct() function with Zero arguments -- + +Warning: ctype_punct() expects exactly 1 parameter, 0 given in %s on line %d +NULL + +-- Testing ctype_punct() function with more than expected no. of arguments -- + +Warning: ctype_punct() expects exactly 1 parameter, 2 given in %s on line %d +NULL +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_alnum_variation3.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_alnum_variation3.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_alnum_variation3.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_alnum_variation3.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,133 @@ +--TEST-- +Test ctype_alnum() function : usage variations - different string values +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_alnum(mixed $c) + * Description: Checks for alphanumeric character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass different strings to ctype_alnum to test behaviour + */ + +echo "*** Testing ctype_alnum() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$values = array( +/*1*/ "This string contains just letters and spaces", // Simple string + "but this one contains some numbers too 123+456 = 678", // Mixed string + "", + " ", +/*5*/ "a", + "ABCXYZ", + "abcxyz", + "ABCXYZ123DEF456", + "abczyz123DEF456", +/*10*/ "\r\n", + "123", + "03F", // hexadecimal 'digits' + ")speci@! ch@r$(", + '@!$*', +/*15*/ 'ABC', + 'abc', + 'ABC123', + 'abc123', + 'abc123\n', +/*20*/ 'abc 123', + '', + ' ', +/*23*/ base64_decode("w4DDoMOHw6fDiMOo") // non-ascii characters +); + + +// loop through each element of $values to test behaviour of ctype_alnum() +$iterator = 1; +foreach($values as $value) { + echo "\n-- Iteration $iterator --\n"; + var_dump( ctype_alnum($value) ); + $iterator++; +}; + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_alnum() : usage variations *** + +-- Iteration 1 -- +bool(false) + +-- Iteration 2 -- +bool(false) + +-- Iteration 3 -- +bool(false) + +-- Iteration 4 -- +bool(false) + +-- Iteration 5 -- +bool(true) + +-- Iteration 6 -- +bool(true) + +-- Iteration 7 -- +bool(true) + +-- Iteration 8 -- +bool(true) + +-- Iteration 9 -- +bool(true) + +-- Iteration 10 -- +bool(false) + +-- Iteration 11 -- +bool(true) + +-- Iteration 12 -- +bool(true) + +-- Iteration 13 -- +bool(false) + +-- Iteration 14 -- +bool(false) + +-- Iteration 15 -- +bool(true) + +-- Iteration 16 -- +bool(true) + +-- Iteration 17 -- +bool(true) + +-- Iteration 18 -- +bool(true) + +-- Iteration 19 -- +bool(false) + +-- Iteration 20 -- +bool(false) + +-- Iteration 21 -- +bool(false) + +-- Iteration 22 -- +bool(false) + +-- Iteration 23 -- +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_xdigit_error.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_xdigit_error.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_xdigit_error.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_xdigit_error.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,45 @@ +--TEST-- +Test ctype_xdigit() function : error conditions - Incorrect number of args +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_xdigit(mixed $c) + * Description: Checks for character(s) representing a hexadecimal digit + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass incorrect number of arguments to ctype_xdigit() to test behaviour + */ + +echo "*** Testing ctype_xdigit() : error conditions ***\n"; + +// Zero arguments +echo "\n-- Testing ctype_xdigit() function with Zero arguments --\n"; +var_dump( ctype_xdigit() ); + +//Test ctype_xdigit with one more than the expected number of arguments +echo "\n-- Testing ctype_xdigit() function with more than expected no. of arguments --\n"; +$c = 1; +$extra_arg = 10; +var_dump( ctype_xdigit($c, $extra_arg) ); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_xdigit() : error conditions *** + +-- Testing ctype_xdigit() function with Zero arguments -- + +Warning: ctype_xdigit() expects exactly 1 parameter, 0 given in %s on line %d +NULL + +-- Testing ctype_xdigit() function with more than expected no. of arguments -- + +Warning: ctype_xdigit() expects exactly 1 parameter, 2 given in %s on line %d +NULL +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_alpha_variation2.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_alpha_variation2.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_alpha_variation2.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_alpha_variation2.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,153 @@ +--TEST-- +Test ctype_alpha() function : usage variations - different integers +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_alpha(mixed $c) + * Description: Checks for alphabetic character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass different integers to ctype_alpha() to test which character codes are considered + * valid alphabetic characters + */ + +echo "*** Testing ctype_alpha() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +for ($i = 0; $i < 256; $i++) { + if (ctype_alpha($i)) { + echo "character code $i is alphabetic\n"; + } +} + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_alpha() : usage variations *** +character code 65 is alphabetic +character code 66 is alphabetic +character code 67 is alphabetic +character code 68 is alphabetic +character code 69 is alphabetic +character code 70 is alphabetic +character code 71 is alphabetic +character code 72 is alphabetic +character code 73 is alphabetic +character code 74 is alphabetic +character code 75 is alphabetic +character code 76 is alphabetic +character code 77 is alphabetic +character code 78 is alphabetic +character code 79 is alphabetic +character code 80 is alphabetic +character code 81 is alphabetic +character code 82 is alphabetic +character code 83 is alphabetic +character code 84 is alphabetic +character code 85 is alphabetic +character code 86 is alphabetic +character code 87 is alphabetic +character code 88 is alphabetic +character code 89 is alphabetic +character code 90 is alphabetic +character code 97 is alphabetic +character code 98 is alphabetic +character code 99 is alphabetic +character code 100 is alphabetic +character code 101 is alphabetic +character code 102 is alphabetic +character code 103 is alphabetic +character code 104 is alphabetic +character code 105 is alphabetic +character code 106 is alphabetic +character code 107 is alphabetic +character code 108 is alphabetic +character code 109 is alphabetic +character code 110 is alphabetic +character code 111 is alphabetic +character code 112 is alphabetic +character code 113 is alphabetic +character code 114 is alphabetic +character code 115 is alphabetic +character code 116 is alphabetic +character code 117 is alphabetic +character code 118 is alphabetic +character code 119 is alphabetic +character code 120 is alphabetic +character code 121 is alphabetic +character code 122 is alphabetic +character code 170 is alphabetic +character code 181 is alphabetic +character code 186 is alphabetic +character code 192 is alphabetic +character code 193 is alphabetic +character code 194 is alphabetic +character code 195 is alphabetic +character code 196 is alphabetic +character code 197 is alphabetic +character code 198 is alphabetic +character code 199 is alphabetic +character code 200 is alphabetic +character code 201 is alphabetic +character code 202 is alphabetic +character code 203 is alphabetic +character code 204 is alphabetic +character code 205 is alphabetic +character code 206 is alphabetic +character code 207 is alphabetic +character code 208 is alphabetic +character code 209 is alphabetic +character code 210 is alphabetic +character code 211 is alphabetic +character code 212 is alphabetic +character code 213 is alphabetic +character code 214 is alphabetic +character code 216 is alphabetic +character code 217 is alphabetic +character code 218 is alphabetic +character code 219 is alphabetic +character code 220 is alphabetic +character code 221 is alphabetic +character code 222 is alphabetic +character code 223 is alphabetic +character code 224 is alphabetic +character code 225 is alphabetic +character code 226 is alphabetic +character code 227 is alphabetic +character code 228 is alphabetic +character code 229 is alphabetic +character code 230 is alphabetic +character code 231 is alphabetic +character code 232 is alphabetic +character code 233 is alphabetic +character code 234 is alphabetic +character code 235 is alphabetic +character code 236 is alphabetic +character code 237 is alphabetic +character code 238 is alphabetic +character code 239 is alphabetic +character code 240 is alphabetic +character code 241 is alphabetic +character code 242 is alphabetic +character code 243 is alphabetic +character code 244 is alphabetic +character code 245 is alphabetic +character code 246 is alphabetic +character code 248 is alphabetic +character code 249 is alphabetic +character code 250 is alphabetic +character code 251 is alphabetic +character code 252 is alphabetic +character code 253 is alphabetic +character code 254 is alphabetic +character code 255 is alphabetic +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_space_basic.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_space_basic.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_space_basic.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_space_basic.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,33 @@ +--TEST-- +Test ctype_space() function : basic functionality +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_space(mixed $c) + * Description: Checks for whitespace character(s) + * Source code: ext/ctype/ctype.c + */ + +echo "*** Testing ctype_space() : basic functionality ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$c1 = " \t\r\n"; +var_dump(ctype_space($c1)); + +$c2 = "Hello, world!\n"; +var_dump(ctype_space($c2)); + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_space() : basic functionality *** +bool(true) +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_digit_basic.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_digit_basic.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_digit_basic.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_digit_basic.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,33 @@ +--TEST-- +Test ctype_digit() function : basic functionality +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_digit(mixed $c) + * Description: Checks for numeric character(s) + * Source code: ext/ctype/ctype.c + */ + +echo "*** Testing ctype_digit() : basic functionality ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$c1 = '1234'; +$c2 = 'abc123'; + +var_dump(ctype_digit($c1)); +var_dump(ctype_digit($c2)); + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_digit() : basic functionality *** +bool(true) +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_alpha_variation1.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_alpha_variation1.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_alpha_variation1.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_alpha_variation1.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,183 @@ +--TEST-- +Test ctype_alpha() function : usage variations - different data types as $c arg +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_alpha(mixed $c) + * Description: Checks for alphabetic character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass different data types as $c argument to ctype_alpha() to test behaviour + */ + +echo "*** Testing ctype_alpha() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +//get an unset variable +$unset_var = 10; +unset ($unset_var); + +// get a class +class classA +{ + public function __toString() { + return "abcdef"; + } +} + +// heredoc string +$heredoc = <<<EOT +XYZ +EOT; + +// get a resource variable +$fp = fopen(__FILE__, "r"); + +// unexpected values to be passed to $c argument +$inputs = array( + + // int data +/*1*/ 0, + 1, + 12345, + -2345, + + // float data +/*5*/ 10.5, + -10.5, + 12.3456789000e10, + 12.3456789000E-10, + .5, + + // null data +/*10*/ NULL, + null, + + // boolean data +/*12*/ true, + false, + TRUE, + FALSE, + + // empty data +/*16*/ "", + '', + array(), + + // string data +/*19*/ "string", + 'string', + $heredoc, + + // object data +/*22*/ new classA(), + + // undefined data +/*23*/ @$undefined_var, + + // unset data +/*24*/ @$unset_var, + + // resource variable +/*25*/ $fp +); + +// loop through each element of $inputs to check the behavior of ctype_alpha() +$iterator = 1; +foreach($inputs as $input) { + echo "\n-- Iteration $iterator --\n"; + var_dump( ctype_alpha($input) ); + $iterator++; +}; + +fclose($fp); + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_alpha() : usage variations *** + +-- Iteration 1 -- +bool(false) + +-- Iteration 2 -- +bool(false) + +-- Iteration 3 -- +bool(false) + +-- Iteration 4 -- +bool(false) + +-- Iteration 5 -- +bool(false) + +-- Iteration 6 -- +bool(false) + +-- Iteration 7 -- +bool(false) + +-- Iteration 8 -- +bool(false) + +-- Iteration 9 -- +bool(false) + +-- Iteration 10 -- +bool(false) + +-- Iteration 11 -- +bool(false) + +-- Iteration 12 -- +bool(false) + +-- Iteration 13 -- +bool(false) + +-- Iteration 14 -- +bool(false) + +-- Iteration 15 -- +bool(false) + +-- Iteration 16 -- +bool(false) + +-- Iteration 17 -- +bool(false) + +-- Iteration 18 -- +bool(false) + +-- Iteration 19 -- +bool(true) + +-- Iteration 20 -- +bool(true) + +-- Iteration 21 -- +bool(true) + +-- Iteration 22 -- +bool(false) + +-- Iteration 23 -- +bool(false) + +-- Iteration 24 -- +bool(false) + +-- Iteration 25 -- +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_cntrl_error.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_cntrl_error.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_cntrl_error.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_cntrl_error.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,45 @@ +--TEST-- +Test ctype_cntrl() function : error conditions - Incorrect number of args +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_cntrl(mixed $c) + * Description: Checks for control character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass an incorrect number of arguments to ctype_cntrl() to test behaviour + */ + +echo "*** Testing ctype_cntrl() : error conditions ***\n"; + +// Zero arguments +echo "\n-- Testing ctype_cntrl() function with Zero arguments --\n"; +var_dump( ctype_cntrl() ); + +//Test ctype_cntrl with one more than the expected number of arguments +echo "\n-- Testing ctype_cntrl() function with more than expected no. of arguments --\n"; +$c = 1; +$extra_arg = 10; +var_dump( ctype_cntrl($c, $extra_arg) ); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_cntrl() : error conditions *** + +-- Testing ctype_cntrl() function with Zero arguments -- + +Warning: ctype_cntrl() expects exactly 1 parameter, 0 given in %s on line %d +NULL + +-- Testing ctype_cntrl() function with more than expected no. of arguments -- + +Warning: ctype_cntrl() expects exactly 1 parameter, 2 given in %s on line %d +NULL +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_alnum_variation1.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_alnum_variation1.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_alnum_variation1.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_alnum_variation1.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,183 @@ +--TEST-- +Test ctype_alnum() function : usage variations - Different data types as $c arg +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_alnum(mixed $c) + * Description: Checks for alphanumeric character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass different data types as $c argument to ctype_alnum() to test behaviour + */ + +echo "*** Testing ctype_alnum() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +//get an unset variable +$unset_var = 10; +unset ($unset_var); + +// get a class +class classA +{ + public function __toString() { + return "xyz"; + } +} + +// heredoc string +$heredoc = <<<EOT +123 +EOT; + +// get a resource variable +$fp = fopen(__FILE__, "r"); + +// unexpected values to be passed to $c argument +$inputs = array( + + // int data +/*1*/ 0, + 1, + 12345, + -2345, + + // float data +/*5*/ 10.5, + -10.5, + 12.3456789000e10, + 12.3456789000E-10, + .5, + + // null data +/*10*/ NULL, + null, + + // boolean data +/*12*/ true, + false, + TRUE, + FALSE, + + // empty data +/*16*/ "", + '', + array(), + + // string data +/*19*/ "pqr", + 'LMN', + $heredoc, + + // object data +/*22*/ new classA(), + + // undefined data +/*23*/ @$undefined_var, + + // unset data +/*24*/ @$unset_var, + + // resource variable +/*25*/ $fp +); + +// loop through each element of $inputs to check the behavior of ctype_alnum() +$iterator = 1; +foreach($inputs as $input) { + echo "\n-- Iteration $iterator --\n"; + var_dump( ctype_alnum($input) ); + $iterator++; +}; + +fclose($fp); + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_alnum() : usage variations *** + +-- Iteration 1 -- +bool(false) + +-- Iteration 2 -- +bool(false) + +-- Iteration 3 -- +bool(false) + +-- Iteration 4 -- +bool(false) + +-- Iteration 5 -- +bool(false) + +-- Iteration 6 -- +bool(false) + +-- Iteration 7 -- +bool(false) + +-- Iteration 8 -- +bool(false) + +-- Iteration 9 -- +bool(false) + +-- Iteration 10 -- +bool(false) + +-- Iteration 11 -- +bool(false) + +-- Iteration 12 -- +bool(false) + +-- Iteration 13 -- +bool(false) + +-- Iteration 14 -- +bool(false) + +-- Iteration 15 -- +bool(false) + +-- Iteration 16 -- +bool(false) + +-- Iteration 17 -- +bool(false) + +-- Iteration 18 -- +bool(false) + +-- Iteration 19 -- +bool(true) + +-- Iteration 20 -- +bool(true) + +-- Iteration 21 -- +bool(true) + +-- Iteration 22 -- +bool(false) + +-- Iteration 23 -- +bool(false) + +-- Iteration 24 -- +bool(false) + +-- Iteration 25 -- +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_punct_variation3.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_punct_variation3.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_punct_variation3.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_punct_variation3.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,144 @@ +--TEST-- +Test ctype_punct() function : usage variations - different punctuation +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_punct(mixed $c) + * Description: Checks for any printable character which is not whitespace + * or an alphanumeric character + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass strings containing different character types to ctype_punct() to test + * which are considered valid punctuation character only strings + */ + +echo "*** Testing ctype_punct() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$values = array( +/*1*/ "This string contains just letters and spaces", // Simple string + "but this one contains some numbers too 123+456 = 678", // Mixed string + "", + " ", +/*5*/ "a", + "ABCXYZ", + "abcxyz", + "ABCXYZ123DEF456", + "abczyz123DEF456", +/*10*/ "\r\n", + "123", + "03F", // hexadecimal 'digits' + ")speci@! ch@r$(", + '@!$*', +/*15*/ 'ABC', + 'abc', + 'ABC123', + 'abc123', + "abc123\n", +/*20*/ 'abc 123', + '', + ' ', + base64_decode("w4DDoMOHw6fDiMOo"), // non-ascii characters + "!$%@\n", +/*25*/ "\"?!\"", +/*26*/ "|\ @~", +); + +$iterator = 1; +foreach($values as $value) { + echo "\n-- Iteration $iterator --\n"; + var_dump( ctype_punct($value) ); + $iterator++; +}; +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_punct() : usage variations *** + +-- Iteration 1 -- +bool(false) + +-- Iteration 2 -- +bool(false) + +-- Iteration 3 -- +bool(false) + +-- Iteration 4 -- +bool(false) + +-- Iteration 5 -- +bool(false) + +-- Iteration 6 -- +bool(false) + +-- Iteration 7 -- +bool(false) + +-- Iteration 8 -- +bool(false) + +-- Iteration 9 -- +bool(false) + +-- Iteration 10 -- +bool(false) + +-- Iteration 11 -- +bool(false) + +-- Iteration 12 -- +bool(false) + +-- Iteration 13 -- +bool(false) + +-- Iteration 14 -- +bool(true) + +-- Iteration 15 -- +bool(false) + +-- Iteration 16 -- +bool(false) + +-- Iteration 17 -- +bool(false) + +-- Iteration 18 -- +bool(false) + +-- Iteration 19 -- +bool(false) + +-- Iteration 20 -- +bool(false) + +-- Iteration 21 -- +bool(false) + +-- Iteration 22 -- +bool(false) + +-- Iteration 23 -- +bool(false) + +-- Iteration 24 -- +bool(false) + +-- Iteration 25 -- +bool(true) + +-- Iteration 26 -- +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_alnum_basic.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_alnum_basic.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_alnum_basic.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_alnum_basic.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,33 @@ +--TEST-- +Test ctype_alnum() function : basic functionality +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_alnum(mixed $c) + * Description: Checks for alphanumeric character(s) + * Source code: ext/ctype/ctype.c + */ + +echo "*** Testing ctype_alnum() : basic functionality ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$c1 = 'abcXYZ'; +$c2 = ' \t*@'; + +var_dump(ctype_alnum($c1)); +var_dump(ctype_alnum($c2)); + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_alnum() : basic functionality *** +bool(true) +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_print_variation3.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_print_variation3.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_print_variation3.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_print_variation3.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,132 @@ +--TEST-- +Test ctype_print() function : usage variations - different strings +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_print(mixed $c) + * Description: Checks for printable character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass strings containing different character types to ctype_print() to test + * which are considered valid printable character only strings + */ + +echo "*** Testing ctype_print() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$values = array( +/*1*/ "This string contains just letters and spaces", // Simple string + "but this one contains some numbers too 123+456 = 678", // Mixed string + "", + " ", +/*5*/ "a", + "ABCXYZ", + "abcxyz", + "ABCXYZ123DEF456", + "abczyz123DEF456", +/*10*/ "\r\n", + "123", + "03F", // hexadecimal 'digits' + ")speci@! ch@r$(", + '@!$*', +/*15*/ 'ABC', + 'abc', + 'ABC123', + 'abc123', + "abc123\n", +/*20*/ 'abc 123', + '', + ' ', +/*23*/ base64_decode("w4DDoMOHw6fDiMOo") // non-ascii characters +); + +$iterator = 1; +foreach($values as $value) { + echo "\n-- Iteration $iterator --\n"; + var_dump( ctype_print($value) ); + $iterator++; +}; + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_print() : usage variations *** + +-- Iteration 1 -- +bool(true) + +-- Iteration 2 -- +bool(true) + +-- Iteration 3 -- +bool(false) + +-- Iteration 4 -- +bool(true) + +-- Iteration 5 -- +bool(true) + +-- Iteration 6 -- +bool(true) + +-- Iteration 7 -- +bool(true) + +-- Iteration 8 -- +bool(true) + +-- Iteration 9 -- +bool(true) + +-- Iteration 10 -- +bool(false) + +-- Iteration 11 -- +bool(true) + +-- Iteration 12 -- +bool(true) + +-- Iteration 13 -- +bool(true) + +-- Iteration 14 -- +bool(true) + +-- Iteration 15 -- +bool(true) + +-- Iteration 16 -- +bool(true) + +-- Iteration 17 -- +bool(true) + +-- Iteration 18 -- +bool(true) + +-- Iteration 19 -- +bool(false) + +-- Iteration 20 -- +bool(true) + +-- Iteration 21 -- +bool(false) + +-- Iteration 22 -- +bool(true) + +-- Iteration 23 -- +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_digit_variation1.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_digit_variation1.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_digit_variation1.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_digit_variation1.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,183 @@ +--TEST-- +Test ctype_digit() function : usage variations - different data types as $c arg +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_digit(mixed $c) + * Description: Checks for numeric character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass different data types as $c argument to ctype_digit() to test behaviour + */ + +echo "*** Testing ctype_digit() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +//get an unset variable +$unset_var = 10; +unset ($unset_var); + +// get a class +class classA +{ + public function __toString() { + return "123456"; + } +} + +// heredoc string +$heredoc = <<<EOT +1 +EOT; + +// get a resource variable +$fp = fopen(__FILE__, "r"); + +// unexpected values to be passed to $c argument +$inputs = array( + + // int data +/*1*/ 0, + 1, + 12345, + -2345, + + // float data +/*5*/ 10.5, + -10.5, + 12.3456789000e10, + 12.3456789000E-10, + .5, + + // null data +/*10*/ NULL, + null, + + // boolean data +/*12*/ true, + false, + TRUE, + FALSE, + + // empty data +/*16*/ "", + '', + array(), + + // string data +/*19*/ "2", + '309', + $heredoc, + + // object data +/*22*/ new classA(), + + // undefined data +/*23*/ @$undefined_var, + + // unset data +/*24*/ @$unset_var, + + // resource variable +/*25*/ $fp +); + +// loop through each element of $inputs to check the behavior of ctype_digit() +$iterator = 1; +foreach($inputs as $input) { + echo "\n-- Iteration $iterator --\n"; + var_dump( ctype_digit($input) ); + $iterator++; +}; + +fclose($fp); + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_digit() : usage variations *** + +-- Iteration 1 -- +bool(false) + +-- Iteration 2 -- +bool(false) + +-- Iteration 3 -- +bool(false) + +-- Iteration 4 -- +bool(false) + +-- Iteration 5 -- +bool(false) + +-- Iteration 6 -- +bool(false) + +-- Iteration 7 -- +bool(false) + +-- Iteration 8 -- +bool(false) + +-- Iteration 9 -- +bool(false) + +-- Iteration 10 -- +bool(false) + +-- Iteration 11 -- +bool(false) + +-- Iteration 12 -- +bool(false) + +-- Iteration 13 -- +bool(false) + +-- Iteration 14 -- +bool(false) + +-- Iteration 15 -- +bool(false) + +-- Iteration 16 -- +bool(false) + +-- Iteration 17 -- +bool(false) + +-- Iteration 18 -- +bool(false) + +-- Iteration 19 -- +bool(true) + +-- Iteration 20 -- +bool(true) + +-- Iteration 21 -- +bool(true) + +-- Iteration 22 -- +bool(false) + +-- Iteration 23 -- +bool(false) + +-- Iteration 24 -- +bool(false) + +-- Iteration 25 -- +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_graph_variation1.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_graph_variation1.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_graph_variation1.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_graph_variation1.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,183 @@ +--TEST-- +Test ctype_graph() function : usage variations - different data types as $c arg +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_graph(mixed $c) + * Description: Checks for any printable character(s) except space + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass different data types as $c argument to ctype_graph() to test behaviour + */ + +echo "*** Testing ctype_graph() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +//get an unset variable +$unset_var = 10; +unset ($unset_var); + +// get a class +class classA +{ + public function __toString() { + return "myClass"; + } +} + +// heredoc string +$heredoc = <<<EOT +hiWorld! +EOT; + +// get a resource variable +$fp = fopen(__FILE__, "r"); + +// unexpected values to be passed to $c argument +$inputs = array( + + // int data +/*1*/ 0, + 1, + 12345, + -2345, + + // float data +/*5*/ 10.5, + -10.5, + 12.3456789000e10, + 12.3456789000E-10, + .5, + + // null data +/*10*/ NULL, + null, + + // boolean data +/*12*/ true, + false, + TRUE, + FALSE, + + // empty data +/*16*/ "", + '', + array(), + + // string data +/*19*/ "string", + 'string', + $heredoc, + + // object data +/*22*/ new classA(), + + // undefined data +/*23*/ @$undefined_var, + + // unset data +/*24*/ @$unset_var, + + // resource variable +/*25*/ $fp +); + +// loop through each element of $inputs to check the behavior of ctype_graph() +$iterator = 1; +foreach($inputs as $input) { + echo "\n-- Iteration $iterator --\n"; + var_dump( ctype_graph($input) ); + $iterator++; +}; + +fclose($fp); + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_graph() : usage variations *** + +-- Iteration 1 -- +bool(false) + +-- Iteration 2 -- +bool(false) + +-- Iteration 3 -- +bool(true) + +-- Iteration 4 -- +bool(false) + +-- Iteration 5 -- +bool(false) + +-- Iteration 6 -- +bool(false) + +-- Iteration 7 -- +bool(false) + +-- Iteration 8 -- +bool(false) + +-- Iteration 9 -- +bool(false) + +-- Iteration 10 -- +bool(false) + +-- Iteration 11 -- +bool(false) + +-- Iteration 12 -- +bool(false) + +-- Iteration 13 -- +bool(false) + +-- Iteration 14 -- +bool(false) + +-- Iteration 15 -- +bool(false) + +-- Iteration 16 -- +bool(false) + +-- Iteration 17 -- +bool(false) + +-- Iteration 18 -- +bool(false) + +-- Iteration 19 -- +bool(true) + +-- Iteration 20 -- +bool(true) + +-- Iteration 21 -- +bool(true) + +-- Iteration 22 -- +bool(false) + +-- Iteration 23 -- +bool(false) + +-- Iteration 24 -- +bool(false) + +-- Iteration 25 -- +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_cntrl_basic.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_cntrl_basic.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_cntrl_basic.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_cntrl_basic.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,33 @@ +--TEST-- +Test ctype_cntrl() function : basic functionality +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_cntrl(mixed $c) + * Description: Checks for control character(s) + * Source code: ext/ctype/ctype.c + */ + +echo "*** Testing ctype_cntrl() : basic functionality ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$c1 = "\r\n\t"; +$c2 = "Hello, World!\n"; + +var_dump(ctype_cntrl($c1)); +var_dump(ctype_cntrl($c2)); + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_cntrl() : basic functionality *** +bool(true) +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_xdigit_variation1.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_xdigit_variation1.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_xdigit_variation1.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_xdigit_variation1.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,183 @@ +--TEST-- +Test ctype_xdigit() function : usage variations - different data typse as $c arg +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_xdigit(mixed $c) + * Description: Checks for character(s) representing a hexadecimal digit + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass different data types as $c argument to ctype_xdigit() to test behaviour + */ + +echo "*** Testing ctype_xdigit() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +//get an unset variable +$unset_var = 10; +unset ($unset_var); + +// get a class +class classA +{ + public function __toString() { + return "ABcd"; + } +} + +// heredoc string +$heredoc = <<<EOT +234 +EOT; + +// get a resource variable +$fp = fopen(__FILE__, "r"); + +// unexpected values to be passed to $c argument +$inputs = array( + + // int data +/*1*/ 0, + 1, + 12345, + -2345, + + // float data +/*5*/ 10.5, + -10.5, + 12.3456789000e10, + 12.3456789000E-10, + .5, + + // null data +/*10*/ NULL, + null, + + // boolean data +/*12*/ true, + false, + TRUE, + FALSE, + + // empty data +/*16*/ "", + '', + array(), + + // string data +/*19*/ "456", + 'def', + $heredoc, + + // object data +/*22*/ new classA(), + + // undefined data +/*23*/ @$undefined_var, + + // unset data +/*24*/ @$unset_var, + + // resource variable +/*25*/ $fp +); + +// loop through each element of $inputs to check the behavior of ctype_xdigit() +$iterator = 1; +foreach($inputs as $input) { + echo "\n-- Iteration $iterator --\n"; + var_dump( ctype_xdigit($input) ); + $iterator++; +}; + +fclose($fp); + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_xdigit() : usage variations *** + +-- Iteration 1 -- +bool(false) + +-- Iteration 2 -- +bool(false) + +-- Iteration 3 -- +bool(false) + +-- Iteration 4 -- +bool(false) + +-- Iteration 5 -- +bool(false) + +-- Iteration 6 -- +bool(false) + +-- Iteration 7 -- +bool(false) + +-- Iteration 8 -- +bool(false) + +-- Iteration 9 -- +bool(false) + +-- Iteration 10 -- +bool(false) + +-- Iteration 11 -- +bool(false) + +-- Iteration 12 -- +bool(false) + +-- Iteration 13 -- +bool(false) + +-- Iteration 14 -- +bool(false) + +-- Iteration 15 -- +bool(false) + +-- Iteration 16 -- +bool(false) + +-- Iteration 17 -- +bool(false) + +-- Iteration 18 -- +bool(false) + +-- Iteration 19 -- +bool(true) + +-- Iteration 20 -- +bool(true) + +-- Iteration 21 -- +bool(true) + +-- Iteration 22 -- +bool(false) + +-- Iteration 23 -- +bool(false) + +-- Iteration 24 -- +bool(false) + +-- Iteration 25 -- +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_xdigit_variation2.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_xdigit_variation2.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_xdigit_variation2.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_xdigit_variation2.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,58 @@ +--TEST-- +Test ctype_xdigit() function : usage variations - different integers +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_xdigit(mixed $c) + * Description: Checks for character(s) representing a hexadecimal digit + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass different integers to ctype_xdigit() to test which character codes are considered + * valid hexadecimal 'digits' + */ + +echo "*** Testing ctype_xdigit() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +for($c = 1; $c < 256; $c++) { + if (ctype_xdigit($c)) { + echo "character code $c is a hexadecimal 'digit'\n"; + } +} + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_xdigit() : usage variations *** +character code 48 is a hexadecimal 'digit' +character code 49 is a hexadecimal 'digit' +character code 50 is a hexadecimal 'digit' +character code 51 is a hexadecimal 'digit' +character code 52 is a hexadecimal 'digit' +character code 53 is a hexadecimal 'digit' +character code 54 is a hexadecimal 'digit' +character code 55 is a hexadecimal 'digit' +character code 56 is a hexadecimal 'digit' +character code 57 is a hexadecimal 'digit' +character code 65 is a hexadecimal 'digit' +character code 66 is a hexadecimal 'digit' +character code 67 is a hexadecimal 'digit' +character code 68 is a hexadecimal 'digit' +character code 69 is a hexadecimal 'digit' +character code 70 is a hexadecimal 'digit' +character code 97 is a hexadecimal 'digit' +character code 98 is a hexadecimal 'digit' +character code 99 is a hexadecimal 'digit' +character code 100 is a hexadecimal 'digit' +character code 101 is a hexadecimal 'digit' +character code 102 is a hexadecimal 'digit' +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_space_variation3.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_space_variation3.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_space_variation3.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_space_variation3.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,144 @@ +--TEST-- +Test ctype_space() function : usage variations - different strings +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_space(mixed $c) + * Description: Checks for whitespace character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass strings containing different character types to ctype_space() to test + * which are considered valid whitespace character only strings + */ + +echo "*** Testing ctype_space() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$values = array( +/*1*/ "This string contains just letters and spaces", // Simple string + "but this one contains some numbers too 123+456 = 678", // Mixed string + "", + " ", +/*5*/ "a", + "ABCXYZ", + "abcxyz", + "ABCXYZ123DEF456", + "abczyz123DEF456", +/*10*/ "\r\n", + "123", + "03F", // hexadecimal 'digits' + ")speci@! ch@r$(", + '@!$*', +/*15*/ 'ABC', + 'abc', + 'ABC123', + 'abc123', + "abc123\n", +/*20*/ 'abc 123', + '', + ' ', + base64_decode("w4DDoMOHw6fDiMOo"), // non-ascii characters + "\"\n", +/*25*/ " \t\r\n", +/*26*/ "\v\f", +); + +$iterator = 1; +foreach($values as $value) { + echo "\n-- Iteration $iterator --\n"; + var_dump( ctype_space($value) ); + $iterator++; +}; + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_space() : usage variations *** + +-- Iteration 1 -- +bool(false) + +-- Iteration 2 -- +bool(false) + +-- Iteration 3 -- +bool(false) + +-- Iteration 4 -- +bool(true) + +-- Iteration 5 -- +bool(false) + +-- Iteration 6 -- +bool(false) + +-- Iteration 7 -- +bool(false) + +-- Iteration 8 -- +bool(false) + +-- Iteration 9 -- +bool(false) + +-- Iteration 10 -- +bool(true) + +-- Iteration 11 -- +bool(false) + +-- Iteration 12 -- +bool(false) + +-- Iteration 13 -- +bool(false) + +-- Iteration 14 -- +bool(false) + +-- Iteration 15 -- +bool(false) + +-- Iteration 16 -- +bool(false) + +-- Iteration 17 -- +bool(false) + +-- Iteration 18 -- +bool(false) + +-- Iteration 19 -- +bool(false) + +-- Iteration 20 -- +bool(false) + +-- Iteration 21 -- +bool(false) + +-- Iteration 22 -- +bool(true) + +-- Iteration 23 -- +bool(false) + +-- Iteration 24 -- +bool(false) + +-- Iteration 25 -- +bool(true) + +-- Iteration 26 -- +bool(true) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_digit_error.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_digit_error.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_digit_error.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_digit_error.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,45 @@ +--TEST-- +Test ctype_digit() function : error conditions - incorrect number of arguments +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_digit(mixed $c) + * Description: Checks for numeric character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass an incorrect number of arguments to ctype_digit() to test behaviour + */ + +echo "*** Testing ctype_digit() : error conditions ***\n"; + +// Zero arguments +echo "\n-- Testing ctype_digit() function with Zero arguments --\n"; +var_dump( ctype_digit() ); + +//Test ctype_digit with one more than the expected number of arguments +echo "\n-- Testing ctype_digit() function with more than expected no. of arguments --\n"; +$c = 1; +$extra_arg = 10; +var_dump( ctype_digit($c, $extra_arg) ); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_digit() : error conditions *** + +-- Testing ctype_digit() function with Zero arguments -- + +Warning: ctype_digit() expects exactly 1 parameter, 0 given in %s on line %d +NULL + +-- Testing ctype_digit() function with more than expected no. of arguments -- + +Warning: ctype_digit() expects exactly 1 parameter, 2 given in %s on line %d +NULL +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_lower_variation2.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_lower_variation2.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_lower_variation2.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_lower_variation2.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,97 @@ +--TEST-- +Test ctype_lower() function : usage variations - different integers +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_lower(mixed $c) + * Description: Checks for lowercase character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass different integers to ctype_lower() to test which character codes are considered + * valid lowercase characters + */ + +echo "*** Testing ctype_lower() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +for ($i = 0; $i < 256; $i++) { + if (ctype_lower($i)) { + echo "character code $i is a lower case character\n"; + } +} + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_lower() : usage variations *** +character code 97 is a lower case character +character code 98 is a lower case character +character code 99 is a lower case character +character code 100 is a lower case character +character code 101 is a lower case character +character code 102 is a lower case character +character code 103 is a lower case character +character code 104 is a lower case character +character code 105 is a lower case character +character code 106 is a lower case character +character code 107 is a lower case character +character code 108 is a lower case character +character code 109 is a lower case character +character code 110 is a lower case character +character code 111 is a lower case character +character code 112 is a lower case character +character code 113 is a lower case character +character code 114 is a lower case character +character code 115 is a lower case character +character code 116 is a lower case character +character code 117 is a lower case character +character code 118 is a lower case character +character code 119 is a lower case character +character code 120 is a lower case character +character code 121 is a lower case character +character code 122 is a lower case character +character code 170 is a lower case character +character code 181 is a lower case character +character code 186 is a lower case character +character code 223 is a lower case character +character code 224 is a lower case character +character code 225 is a lower case character +character code 226 is a lower case character +character code 227 is a lower case character +character code 228 is a lower case character +character code 229 is a lower case character +character code 230 is a lower case character +character code 231 is a lower case character +character code 232 is a lower case character +character code 233 is a lower case character +character code 234 is a lower case character +character code 235 is a lower case character +character code 236 is a lower case character +character code 237 is a lower case character +character code 238 is a lower case character +character code 239 is a lower case character +character code 240 is a lower case character +character code 241 is a lower case character +character code 242 is a lower case character +character code 243 is a lower case character +character code 244 is a lower case character +character code 245 is a lower case character +character code 246 is a lower case character +character code 248 is a lower case character +character code 249 is a lower case character +character code 250 is a lower case character +character code 251 is a lower case character +character code 252 is a lower case character +character code 253 is a lower case character +character code 254 is a lower case character +character code 255 is a lower case character +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_upper_variation2.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_upper_variation2.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_upper_variation2.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_upper_variation2.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,91 @@ +--TEST-- +Test ctype_upper() function : usage variations - different integers +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_upper(mixed $c) + * Description: Checks for uppercase character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass different integers to ctype_upper() to test which character codes are considered + * valid uppercase characters + */ + +echo "*** Testing ctype_upper() : usage variations ***\n"; +$orig = setlocale(LC_CTYPE, "C"); + +for ($i = 0; $i < 256; $i++) { + if (ctype_upper($i)) { + echo "character code $i is a uppercase character\n"; + } +} + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_upper() : usage variations *** +character code 65 is a uppercase character +character code 66 is a uppercase character +character code 67 is a uppercase character +character code 68 is a uppercase character +character code 69 is a uppercase character +character code 70 is a uppercase character +character code 71 is a uppercase character +character code 72 is a uppercase character +character code 73 is a uppercase character +character code 74 is a uppercase character +character code 75 is a uppercase character +character code 76 is a uppercase character +character code 77 is a uppercase character +character code 78 is a uppercase character +character code 79 is a uppercase character +character code 80 is a uppercase character +character code 81 is a uppercase character +character code 82 is a uppercase character +character code 83 is a uppercase character +character code 84 is a uppercase character +character code 85 is a uppercase character +character code 86 is a uppercase character +character code 87 is a uppercase character +character code 88 is a uppercase character +character code 89 is a uppercase character +character code 90 is a uppercase character +character code 192 is a uppercase character +character code 193 is a uppercase character +character code 194 is a uppercase character +character code 195 is a uppercase character +character code 196 is a uppercase character +character code 197 is a uppercase character +character code 198 is a uppercase character +character code 199 is a uppercase character +character code 200 is a uppercase character +character code 201 is a uppercase character +character code 202 is a uppercase character +character code 203 is a uppercase character +character code 204 is a uppercase character +character code 205 is a uppercase character +character code 206 is a uppercase character +character code 207 is a uppercase character +character code 208 is a uppercase character +character code 209 is a uppercase character +character code 210 is a uppercase character +character code 211 is a uppercase character +character code 212 is a uppercase character +character code 213 is a uppercase character +character code 214 is a uppercase character +character code 216 is a uppercase character +character code 217 is a uppercase character +character code 218 is a uppercase character +character code 219 is a uppercase character +character code 220 is a uppercase character +character code 221 is a uppercase character +character code 222 is a uppercase character +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_space_variation1.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_space_variation1.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_space_variation1.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_space_variation1.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,183 @@ +--TEST-- +Test ctype_space() function : usage variations - different data types as $c argument +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_space(mixed $c) + * Description: Checks for whitespace character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass different data types as $c argument to ctype_space() to test behaviour + */ + +echo "*** Testing ctype_space() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +//get an unset variable +$unset_var = 10; +unset ($unset_var); + +// get a class +class classA +{ + public function __toString() { + return "\n\t\r"; + } +} + +// heredoc string +$heredoc = <<<EOT + +EOT; + +// get a resource variable +$fp = fopen(__FILE__, "r"); + +// unexpected values to be passed to $c argument +$inputs = array( + + // int data +/*1*/ 0, + 1, + 12345, + -2345, + + // float data +/*5*/ 10.5, + -10.5, + 12.3456789000e10, + 12.3456789000E-10, + .5, + + // null data +/*10*/ NULL, + null, + + // boolean data +/*12*/ true, + false, + TRUE, + FALSE, + + // empty data +/*16*/ "", + '', + array(), + + // string data +/*19*/ "\n\t\r", + ' ', + $heredoc, + + // object data +/*22*/ new classA(), + + // undefined data +/*23*/ @$undefined_var, + + // unset data +/*24*/ @$unset_var, + + // resource variable +/*25*/ $fp +); + +// loop through each element of $inputs to check the behavior of ctype_space() +$iterator = 1; +foreach($inputs as $input) { + echo "\n-- Iteration $iterator --\n"; + var_dump( ctype_space($input) ); + $iterator++; +}; + +fclose($fp); + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_space() : usage variations *** + +-- Iteration 1 -- +bool(false) + +-- Iteration 2 -- +bool(false) + +-- Iteration 3 -- +bool(false) + +-- Iteration 4 -- +bool(false) + +-- Iteration 5 -- +bool(false) + +-- Iteration 6 -- +bool(false) + +-- Iteration 7 -- +bool(false) + +-- Iteration 8 -- +bool(false) + +-- Iteration 9 -- +bool(false) + +-- Iteration 10 -- +bool(false) + +-- Iteration 11 -- +bool(false) + +-- Iteration 12 -- +bool(false) + +-- Iteration 13 -- +bool(false) + +-- Iteration 14 -- +bool(false) + +-- Iteration 15 -- +bool(false) + +-- Iteration 16 -- +bool(false) + +-- Iteration 17 -- +bool(false) + +-- Iteration 18 -- +bool(false) + +-- Iteration 19 -- +bool(true) + +-- Iteration 20 -- +bool(true) + +-- Iteration 21 -- +bool(true) + +-- Iteration 22 -- +bool(false) + +-- Iteration 23 -- +bool(false) + +-- Iteration 24 -- +bool(false) + +-- Iteration 25 -- +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_xdigit_basic.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_xdigit_basic.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_xdigit_basic.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_xdigit_basic.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,32 @@ +--TEST-- +Test ctype_xdigit() function : basic functionality +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_xdigit(mixed $c) + * Description: Checks for character(s) representing a hexadecimal digit + * Source code: ext/ctype/ctype.c + */ + +echo "*** Testing ctype_xdigit() : basic functionality ***\n"; +$orig = setlocale(LC_CTYPE, "C"); + +$c1 = 'abcdefABCDEF0123456789'; +$c2 = 'face 034'; + +var_dump(ctype_xdigit($c1)); +var_dump(ctype_xdigit($c2)); + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_xdigit() : basic functionality *** +bool(true) +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_upper_variation1.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_upper_variation1.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_upper_variation1.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_upper_variation1.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,183 @@ +--TEST-- +Test ctype_upper() function : usage variations - different data types +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_upper(mixed $c) + * Description: Checks for uppercase character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass different data types as $c argument to ctype_upper() to test behaviour + */ + +echo "*** Testing ctype_upper() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +//get an unset variable +$unset_var = 10; +unset ($unset_var); + +// get a class +class classA +{ + public function __toString() { + return "HELLO"; + } +} + +// heredoc string +$heredoc = <<<EOT +HI +EOT; + +// get a resource variable +$fp = fopen(__FILE__, "r"); + +// unexpected values to be passed to $c argument +$inputs = array( + + // int data +/*1*/ 0, + 1, + 12345, + -2345, + + // float data +/*5*/ 10.5, + -10.5, + 12.3456789000e10, + 12.3456789000E-10, + .5, + + // null data +/*10*/ NULL, + null, + + // boolean data +/*12*/ true, + false, + TRUE, + FALSE, + + // empty data +/*16*/ "", + '', + array(), + + // string data +/*19*/ "STRING", + 'STRING', + $heredoc, + + // object data +/*22*/ new classA(), + + // undefined data +/*23*/ @$undefined_var, + + // unset data +/*24*/ @$unset_var, + + // resource variable +/*25*/ $fp +); + +// loop through each element of $inputs to check the behavior of ctype_upper() +$iterator = 1; +foreach($inputs as $input) { + echo "\n-- Iteration $iterator --\n"; + var_dump( ctype_upper($input) ); + $iterator++; +}; + +fclose($fp); + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_upper() : usage variations *** + +-- Iteration 1 -- +bool(false) + +-- Iteration 2 -- +bool(false) + +-- Iteration 3 -- +bool(false) + +-- Iteration 4 -- +bool(false) + +-- Iteration 5 -- +bool(false) + +-- Iteration 6 -- +bool(false) + +-- Iteration 7 -- +bool(false) + +-- Iteration 8 -- +bool(false) + +-- Iteration 9 -- +bool(false) + +-- Iteration 10 -- +bool(false) + +-- Iteration 11 -- +bool(false) + +-- Iteration 12 -- +bool(false) + +-- Iteration 13 -- +bool(false) + +-- Iteration 14 -- +bool(false) + +-- Iteration 15 -- +bool(false) + +-- Iteration 16 -- +bool(false) + +-- Iteration 17 -- +bool(false) + +-- Iteration 18 -- +bool(false) + +-- Iteration 19 -- +bool(true) + +-- Iteration 20 -- +bool(true) + +-- Iteration 21 -- +bool(true) + +-- Iteration 22 -- +bool(false) + +-- Iteration 23 -- +bool(false) + +-- Iteration 24 -- +bool(false) + +-- Iteration 25 -- +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_alnum_error.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_alnum_error.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_alnum_error.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_alnum_error.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,49 @@ +--TEST-- +Test ctype_alnum() function : error conditions - Incorrect number of args +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_alnum(mixed $c) + * Description: Checks for alphanumeric character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass incorrect number of arguments to ctype_alnum() to test behaviour + */ + +echo "*** Testing ctype_alnum() : error conditions ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +// Zero arguments +echo "\n-- Testing ctype_alnum() function with Zero arguments --\n"; +var_dump( ctype_alnum() ); + +//Test ctype_alnum with one more than the expected number of arguments +echo "\n-- Testing ctype_alnum() function with more than expected no. of arguments --\n"; +$c = 1; +$extra_arg = 10; +var_dump( ctype_alnum($c, $extra_arg) ); + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_alnum() : error conditions *** + +-- Testing ctype_alnum() function with Zero arguments -- + +Warning: ctype_alnum() expects exactly 1 parameter, 0 given in %s on line %d +NULL + +-- Testing ctype_alnum() function with more than expected no. of arguments -- + +Warning: ctype_alnum() expects exactly 1 parameter, 2 given in %s on line %d +NULL +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_alpha_basic.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_alpha_basic.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_alpha_basic.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_alpha_basic.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,33 @@ +--TEST-- +Test ctype_alpha() function : basic functionality +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_alpha(mixed $c) + * Description: Checks for alphabetic character(s) + * Source code: ext/ctype/ctype.c + */ + +echo "*** Testing ctype_alpha() : basic functionality ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$c1 = 'abcXYZ'; +$c2 = "Hello, World!"; + +var_dump(ctype_alpha($c1)); +var_dump(ctype_alpha($c2)); + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_alpha() : basic functionality *** +bool(true) +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_alnum_variation2.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_alnum_variation2.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_alnum_variation2.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_alnum_variation2.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,163 @@ +--TEST-- +Test ctype_alnum() function : usage variations - different integers +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_alnum(mixed $c) + * Description: Checks for alphanumeric character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass different integers to ctype_alnum() to test which character codes are considered + * valid alphanumeric characters + */ + +echo "*** Testing ctype_alnum() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +for ($i = 0; $i < 256; $i++) { + if (ctype_alnum($i)) { + echo "character code $i is alpha numeric\n"; + } +} + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_alnum() : usage variations *** +character code 48 is alpha numeric +character code 49 is alpha numeric +character code 50 is alpha numeric +character code 51 is alpha numeric +character code 52 is alpha numeric +character code 53 is alpha numeric +character code 54 is alpha numeric +character code 55 is alpha numeric +character code 56 is alpha numeric +character code 57 is alpha numeric +character code 65 is alpha numeric +character code 66 is alpha numeric +character code 67 is alpha numeric +character code 68 is alpha numeric +character code 69 is alpha numeric +character code 70 is alpha numeric +character code 71 is alpha numeric +character code 72 is alpha numeric +character code 73 is alpha numeric +character code 74 is alpha numeric +character code 75 is alpha numeric +character code 76 is alpha numeric +character code 77 is alpha numeric +character code 78 is alpha numeric +character code 79 is alpha numeric +character code 80 is alpha numeric +character code 81 is alpha numeric +character code 82 is alpha numeric +character code 83 is alpha numeric +character code 84 is alpha numeric +character code 85 is alpha numeric +character code 86 is alpha numeric +character code 87 is alpha numeric +character code 88 is alpha numeric +character code 89 is alpha numeric +character code 90 is alpha numeric +character code 97 is alpha numeric +character code 98 is alpha numeric +character code 99 is alpha numeric +character code 100 is alpha numeric +character code 101 is alpha numeric +character code 102 is alpha numeric +character code 103 is alpha numeric +character code 104 is alpha numeric +character code 105 is alpha numeric +character code 106 is alpha numeric +character code 107 is alpha numeric +character code 108 is alpha numeric +character code 109 is alpha numeric +character code 110 is alpha numeric +character code 111 is alpha numeric +character code 112 is alpha numeric +character code 113 is alpha numeric +character code 114 is alpha numeric +character code 115 is alpha numeric +character code 116 is alpha numeric +character code 117 is alpha numeric +character code 118 is alpha numeric +character code 119 is alpha numeric +character code 120 is alpha numeric +character code 121 is alpha numeric +character code 122 is alpha numeric +character code 170 is alpha numeric +character code 181 is alpha numeric +character code 186 is alpha numeric +character code 192 is alpha numeric +character code 193 is alpha numeric +character code 194 is alpha numeric +character code 195 is alpha numeric +character code 196 is alpha numeric +character code 197 is alpha numeric +character code 198 is alpha numeric +character code 199 is alpha numeric +character code 200 is alpha numeric +character code 201 is alpha numeric +character code 202 is alpha numeric +character code 203 is alpha numeric +character code 204 is alpha numeric +character code 205 is alpha numeric +character code 206 is alpha numeric +character code 207 is alpha numeric +character code 208 is alpha numeric +character code 209 is alpha numeric +character code 210 is alpha numeric +character code 211 is alpha numeric +character code 212 is alpha numeric +character code 213 is alpha numeric +character code 214 is alpha numeric +character code 216 is alpha numeric +character code 217 is alpha numeric +character code 218 is alpha numeric +character code 219 is alpha numeric +character code 220 is alpha numeric +character code 221 is alpha numeric +character code 222 is alpha numeric +character code 223 is alpha numeric +character code 224 is alpha numeric +character code 225 is alpha numeric +character code 226 is alpha numeric +character code 227 is alpha numeric +character code 228 is alpha numeric +character code 229 is alpha numeric +character code 230 is alpha numeric +character code 231 is alpha numeric +character code 232 is alpha numeric +character code 233 is alpha numeric +character code 234 is alpha numeric +character code 235 is alpha numeric +character code 236 is alpha numeric +character code 237 is alpha numeric +character code 238 is alpha numeric +character code 239 is alpha numeric +character code 240 is alpha numeric +character code 241 is alpha numeric +character code 242 is alpha numeric +character code 243 is alpha numeric +character code 244 is alpha numeric +character code 245 is alpha numeric +character code 246 is alpha numeric +character code 248 is alpha numeric +character code 249 is alpha numeric +character code 250 is alpha numeric +character code 251 is alpha numeric +character code 252 is alpha numeric +character code 253 is alpha numeric +character code 254 is alpha numeric +character code 255 is alpha numeric +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_lower_variation4.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_lower_variation4.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_lower_variation4.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_lower_variation4.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,68 @@ +--TEST-- +Test ctype_lower() function : usage variations - octal and hexadecimal values +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_lower(mixed $c) + * Description: Checks for lowercase character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass octal and hexadecimal values to ctype_lower() to test behaviour + */ + +echo "*** Testing ctype_lower() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$octal_values = array(0141, 0142, 0143, 0144); +$hex_values = array (0x61, 0x62, 0x63, 0x64); + +echo "\n-- Octal Values --\n"; +$iterator = 1; +foreach($octal_values as $c) { + echo "-- Iteration $iterator --\n"; + var_dump(ctype_lower($c)); + $iterator++; +} + +echo "\n-- Hexadecimal Values --\n"; +$iterator = 1; +foreach($hex_values as $c) { + echo "-- Iteration $iterator --\n"; + var_dump(ctype_lower($c)); + $iterator++; +} + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_lower() : usage variations *** + +-- Octal Values -- +-- Iteration 1 -- +bool(true) +-- Iteration 2 -- +bool(true) +-- Iteration 3 -- +bool(true) +-- Iteration 4 -- +bool(true) + +-- Hexadecimal Values -- +-- Iteration 1 -- +bool(true) +-- Iteration 2 -- +bool(true) +-- Iteration 3 -- +bool(true) +-- Iteration 4 -- +bool(true) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_digit_variation4.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_digit_variation4.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_digit_variation4.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_digit_variation4.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,68 @@ +--TEST-- +Test ctype_digit() function : usage variations - octal and hexadecimal values +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_digit(mixed $c) + * Description: Checks for numeric character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass octal and hexadecimal values as $c argument to ctype_digit() to test behaviour + */ + +echo "*** Testing ctype_digit() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$octal_values = array(061, 062, 063, 064); +$hex_values = array (0x31, 0x32, 0x33, 0x34); + +echo "\n-- Octal Values --\n"; +$iterator = 1; +foreach($octal_values as $c) { + echo "-- Iteration $iterator --\n"; + var_dump(ctype_digit($c)); + $iterator++; +} + +echo "\n-- Hexadecimal Values --\n"; +$iterator = 1; +foreach($hex_values as $c) { + echo "-- Iteration $iterator --\n"; + var_dump(ctype_digit($c)); + $iterator++; +} + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_digit() : usage variations *** + +-- Octal Values -- +-- Iteration 1 -- +bool(true) +-- Iteration 2 -- +bool(true) +-- Iteration 3 -- +bool(true) +-- Iteration 4 -- +bool(true) + +-- Hexadecimal Values -- +-- Iteration 1 -- +bool(true) +-- Iteration 2 -- +bool(true) +-- Iteration 3 -- +bool(true) +-- Iteration 4 -- +bool(true) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_upper_error.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_upper_error.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_upper_error.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_upper_error.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,45 @@ +--TEST-- +Test ctype_upper() function : error conditions - incorrect number of args +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_upper(mixed $c) + * Description: Checks for uppercase character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass incorrect number of arguments to ctype_upper() to test behaviour + */ + +echo "*** Testing ctype_upper() : error conditions ***\n"; + +// Zero arguments +echo "\n-- Testing ctype_upper() function with Zero arguments --\n"; +var_dump( ctype_upper() ); + +//Test ctype_upper with one more than the expected number of arguments +echo "\n-- Testing ctype_upper() function with more than expected no. of arguments --\n"; +$c = 1; +$extra_arg = 10; +var_dump( ctype_upper($c, $extra_arg) ); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_upper() : error conditions *** + +-- Testing ctype_upper() function with Zero arguments -- + +Warning: ctype_upper() expects exactly 1 parameter, 0 given in %s on line %d +NULL + +-- Testing ctype_upper() function with more than expected no. of arguments -- + +Warning: ctype_upper() expects exactly 1 parameter, 2 given in %s on line %d +NULL +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_graph_variation4.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_graph_variation4.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_graph_variation4.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_graph_variation4.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,68 @@ +--TEST-- +Test ctype_graph() function : usage variations - octal and hexadecimal values +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_graph(mixed $c) + * Description: Checks for any printable character(s) except space + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass octal and hexadecimal values to ctype_graph() to test behaviour + */ + +echo "*** Testing ctype_graph() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$octal_values = array(061, 062, 063, 064); +$hex_values = array (0x31, 0x32, 0x33, 0x34); + +echo "\n-- Octal Values --\n"; +$iterator = 1; +foreach($octal_values as $c) { + echo "-- Iteration $iterator --\n"; + var_dump(ctype_graph($c)); + $iterator++; +} + +echo "\n-- Hexadecimal Values --\n"; +$iterator = 1; +foreach($hex_values as $c) { + echo "-- Iteration $iterator --\n"; + var_dump(ctype_graph($c)); + $iterator++; +} + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_graph() : usage variations *** + +-- Octal Values -- +-- Iteration 1 -- +bool(true) +-- Iteration 2 -- +bool(true) +-- Iteration 3 -- +bool(true) +-- Iteration 4 -- +bool(true) + +-- Hexadecimal Values -- +-- Iteration 1 -- +bool(true) +-- Iteration 2 -- +bool(true) +-- Iteration 3 -- +bool(true) +-- Iteration 4 -- +bool(true) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_space_variation4.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_space_variation4.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_space_variation4.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_space_variation4.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,75 @@ +--TEST-- +Test ctype_space() function : usage variations - octal and hexadecimal values +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_space(mixed $c) + * Description: Checks for whitespace character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass octal and hexadecimal values as $c to ctype_space() to test behaviour + */ + +echo "*** Testing ctype_space() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$octal_values = array (011, 012, 013, 014, 015, 040); +$hex_values = array (0x9, 0xA, 0xB, 0xC, 0xD, 0x20); + +echo "\n-- Octal Values --\n"; +$iterator = 1; +foreach($octal_values as $c) { + echo "-- Iteration $iterator --\n"; + var_dump(ctype_space($c)); + $iterator++; +} + +echo "\n-- Hexadecimal Values --\n"; +$iterator = 1; +foreach($hex_values as $c) { + echo "-- Iteration $iterator --\n"; + var_dump(ctype_space($c)); + $iterator++; +} +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_space() : usage variations *** + +-- Octal Values -- +-- Iteration 1 -- +bool(true) +-- Iteration 2 -- +bool(true) +-- Iteration 3 -- +bool(true) +-- Iteration 4 -- +bool(true) +-- Iteration 5 -- +bool(true) +-- Iteration 6 -- +bool(true) + +-- Hexadecimal Values -- +-- Iteration 1 -- +bool(true) +-- Iteration 2 -- +bool(true) +-- Iteration 3 -- +bool(true) +-- Iteration 4 -- +bool(true) +-- Iteration 5 -- +bool(true) +-- Iteration 6 -- +bool(true) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_xdigit_variation4.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_xdigit_variation4.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_xdigit_variation4.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_xdigit_variation4.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,87 @@ +--TEST-- +Test ctype_xdigit() function : usage variations - heaxadecimal and octal values +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_xdigit(mixed $c) + * Description: Checks for character(s) representing a hexadecimal digit + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass different hexadecimal and octal values that: + * 1. contain hexadecimal digits + * 2. correspond to character codes recognised as hexadecimal digits (see variation2) + * referred to as 'correct' integers below + */ + +echo "*** Testing ctype_xdigit() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +// contain hexadecimal digits but do not correspond to 'correct' ints +$octal_values1 = array(012, 013, 014, 015); + +// correspond to 'correct' integers +$octal_values2 = array(061, 062, 063, 064); + +// contain hexadecimal digits but do not correspond to 'correct' ints +$hex_values1 = array(0x1A, 0x1B, 0x1C, 0x1D); + +//correspond to 'correct' integers +$hex_values2 = array(0x61, 0x62, 0x63, 0x64); + +echo "\n-- Octal values --\n"; +echo "'Incorrect' Integers: \n"; +foreach($octal_values1 as $c) { + var_dump(ctype_xdigit($c)); +} +echo "'Correct' Integers: \n"; +foreach($octal_values2 as $c) { + var_dump(ctype_xdigit($c)); +} + +echo "\n-- Hexadecimal values --\n"; +echo "'Incorrect' Integers: \n"; +foreach($hex_values1 as $c) { + var_dump(ctype_xdigit($c)); +} +echo "'Correct' Integers: \n"; +foreach($hex_values2 as $c) { + var_dump(ctype_xdigit($c)); +} +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_xdigit() : usage variations *** + +-- Octal values -- +'Incorrect' Integers: +bool(false) +bool(false) +bool(false) +bool(false) +'Correct' Integers: +bool(true) +bool(true) +bool(true) +bool(true) + +-- Hexadecimal values -- +'Incorrect' Integers: +bool(false) +bool(false) +bool(false) +bool(false) +'Correct' Integers: +bool(true) +bool(true) +bool(true) +bool(true) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_graph_variation3.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_graph_variation3.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_graph_variation3.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_graph_variation3.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,152 @@ +--TEST-- +Test ctype_graph() function : usage variations - different strings +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_graph(mixed $c) + * Description: Checks for any printable character(s) except space + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass strings containing different character types to ctype_graph() to test + * which are considered valid printable character only strings + */ + +echo "*** Testing ctype_graph() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$values = array( +/*1*/ "This string contains just letters and spaces", // Simple string + "but this one contains some numbers too 123+456 = 678", // Mixed string + "", + " ", +/*5*/ "a", + "ABCXYZ", + "abcxyz", + "ABCXYZ123DEF456", + "abczyz123DEF456", +/*10*/ "\r\n", + "123", + "03F", // hexadecimal 'digits' + ")speci@! ch@r$(", + '@!$*', +/*15*/ 'ABC', + 'abc', + 'ABC123', + 'abc123', + "abc123\n", +/*20*/ 'abc 123', + '', + ' ', + base64_decode("w4DDoMOHw6fDiMOo"), // non-ascii characters + "!$%^&*()_+-={}[]:;@~'#<,>.?/", +/*25*/ "\"ABC\"", + "String\twith\ttabs", + "Sample string with newline\n", +/*28*/ "123 ABC XYZ", +); + +$iterator = 1; +foreach($values as $value) { + echo "\n-- Iteration $iterator --\n"; + var_dump( ctype_graph($value) ); + $iterator++; +}; + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_graph() : usage variations *** + +-- Iteration 1 -- +bool(false) + +-- Iteration 2 -- +bool(false) + +-- Iteration 3 -- +bool(false) + +-- Iteration 4 -- +bool(false) + +-- Iteration 5 -- +bool(true) + +-- Iteration 6 -- +bool(true) + +-- Iteration 7 -- +bool(true) + +-- Iteration 8 -- +bool(true) + +-- Iteration 9 -- +bool(true) + +-- Iteration 10 -- +bool(false) + +-- Iteration 11 -- +bool(true) + +-- Iteration 12 -- +bool(true) + +-- Iteration 13 -- +bool(false) + +-- Iteration 14 -- +bool(true) + +-- Iteration 15 -- +bool(true) + +-- Iteration 16 -- +bool(true) + +-- Iteration 17 -- +bool(true) + +-- Iteration 18 -- +bool(true) + +-- Iteration 19 -- +bool(false) + +-- Iteration 20 -- +bool(false) + +-- Iteration 21 -- +bool(false) + +-- Iteration 22 -- +bool(false) + +-- Iteration 23 -- +bool(false) + +-- Iteration 24 -- +bool(true) + +-- Iteration 25 -- +bool(true) + +-- Iteration 26 -- +bool(false) + +-- Iteration 27 -- +bool(false) + +-- Iteration 28 -- +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_punct_variation4.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_punct_variation4.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_punct_variation4.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_punct_variation4.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,69 @@ +--TEST-- +Test ctype_punct() function : usage variations - Octal and Hexadecimal values +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_punct(mixed $c) + * Description: Checks for any printable character which is not whitespace + * or an alphanumeric character + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass different octal and hexadecimal values to ctype_punct() to test behaviour + */ + +echo "*** Testing ctype_punct() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$octal_values = array(045, 046, 047, 050); +$hex_values = array(0x25, 0x26, 0x27, 0x28); + +echo "\n-- Octal Values --\n"; +$iterator = 1; +foreach($octal_values as $c) { + echo "-- Iteration $iterator --\n"; + var_dump(ctype_punct($c)); + $iterator++; +} + +echo "\n-- Hexadecimal Values --\n"; +$iterator = 1; +foreach($hex_values as $c) { + echo "-- Iteration $iterator --\n"; + var_dump(ctype_punct($c)); + $iterator++; +} + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_punct() : usage variations *** + +-- Octal Values -- +-- Iteration 1 -- +bool(true) +-- Iteration 2 -- +bool(true) +-- Iteration 3 -- +bool(true) +-- Iteration 4 -- +bool(true) + +-- Hexadecimal Values -- +-- Iteration 1 -- +bool(true) +-- Iteration 2 -- +bool(true) +-- Iteration 3 -- +bool(true) +-- Iteration 4 -- +bool(true) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_digit_variation2.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_digit_variation2.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_digit_variation2.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_digit_variation2.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,46 @@ +--TEST-- +Test ctype_digit() function : usage variations - different integers +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_digit(mixed $c) + * Description: Checks for numeric character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass different integers to ctype_digit() to test which character codes are considered + * valid decimal digits + */ + +echo "*** Testing ctype_digit() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +for ($i = 0; $i < 256; $i++) { + if (ctype_digit($i)) { + echo "character code $i is a numeric digit\n"; + } +} + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_digit() : usage variations *** +character code 48 is a numeric digit +character code 49 is a numeric digit +character code 50 is a numeric digit +character code 51 is a numeric digit +character code 52 is a numeric digit +character code 53 is a numeric digit +character code 54 is a numeric digit +character code 55 is a numeric digit +character code 56 is a numeric digit +character code 57 is a numeric digit +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_print_basic.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_print_basic.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_print_basic.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_print_basic.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,33 @@ +--TEST-- +Test ctype_print() function : basic functionality +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_print(mixed $c) + * Description: Checks for printable character(s) + * Source code: ext/ctype/ctype.c + */ + +echo "*** Testing ctype_print() : basic functionality ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$c1 = "Hello, World!"; +$c2 = null; + +var_dump(ctype_print($c1)); +var_dump(ctype_print($c2)); + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_print() : basic functionality *** +bool(true) +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_cntrl_variation2.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_cntrl_variation2.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_cntrl_variation2.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_cntrl_variation2.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,102 @@ +--TEST-- +Test ctype_cntrl() function : usage variations - different integers +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_cntrl(mixed $c) + * Description: Checks for control character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass different integers to ctype_cntrl() to test which character codes are considered + * valid control characters + */ + +echo "*** Testing ctype_cntrl() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +for ($i = 0; $i < 256; $i++) { + if (ctype_cntrl($i)) { + echo "character code $i is control character\n"; + } +} + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_cntrl() : usage variations *** +character code 0 is control character +character code 1 is control character +character code 2 is control character +character code 3 is control character +character code 4 is control character +character code 5 is control character +character code 6 is control character +character code 7 is control character +character code 8 is control character +character code 9 is control character +character code 10 is control character +character code 11 is control character +character code 12 is control character +character code 13 is control character +character code 14 is control character +character code 15 is control character +character code 16 is control character +character code 17 is control character +character code 18 is control character +character code 19 is control character +character code 20 is control character +character code 21 is control character +character code 22 is control character +character code 23 is control character +character code 24 is control character +character code 25 is control character +character code 26 is control character +character code 27 is control character +character code 28 is control character +character code 29 is control character +character code 30 is control character +character code 31 is control character +character code 127 is control character +character code 128 is control character +character code 129 is control character +character code 130 is control character +character code 131 is control character +character code 132 is control character +character code 133 is control character +character code 134 is control character +character code 135 is control character +character code 136 is control character +character code 137 is control character +character code 138 is control character +character code 139 is control character +character code 140 is control character +character code 141 is control character +character code 142 is control character +character code 143 is control character +character code 144 is control character +character code 145 is control character +character code 146 is control character +character code 147 is control character +character code 148 is control character +character code 149 is control character +character code 150 is control character +character code 151 is control character +character code 152 is control character +character code 153 is control character +character code 154 is control character +character code 155 is control character +character code 156 is control character +character code 157 is control character +character code 158 is control character +character code 159 is control character +character code 173 is control character +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_print_error.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_print_error.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_print_error.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_print_error.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,45 @@ +--TEST-- +Test ctype_print() function : error conditions - incorrect number of args +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_print(mixed $c) + * Description: Checks for printable character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass incorrect number of arguments to ctype_print() to test behaviour + */ + +echo "*** Testing ctype_print() : error conditions ***\n"; + +// Zero arguments +echo "\n-- Testing ctype_print() function with Zero arguments --\n"; +var_dump( ctype_print() ); + +//Test ctype_print with one more than the expected number of arguments +echo "\n-- Testing ctype_print() function with more than expected no. of arguments --\n"; +$c = 1; +$extra_arg = 10; +var_dump( ctype_print($c, $extra_arg) ); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_print() : error conditions *** + +-- Testing ctype_print() function with Zero arguments -- + +Warning: ctype_print() expects exactly 1 parameter, 0 given in %s on line %d +NULL + +-- Testing ctype_print() function with more than expected no. of arguments -- + +Warning: ctype_print() expects exactly 1 parameter, 2 given in %s on line %d +NULL +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_alpha_variation4.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_alpha_variation4.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_alpha_variation4.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_alpha_variation4.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,68 @@ +--TEST-- +Test ctype_alpha() function : usage variations - Octal and hexadecimal values +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_alpha(mixed $c) + * Description: Checks for alphabetic character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass octal and hexadecimal values to ctype_alpha() to test behaviour + */ + +echo "*** Testing ctype_alpha() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$octal_values = array (0101, 0102, 0103, 0104); +$hex_values = array (0x41, 0x42, 0x43, 0x44); + +echo "\n-- Octal Values --\n"; +$iterator = 1; +foreach($octal_values as $c) { + echo "-- Iteration $iterator --\n"; + var_dump(ctype_alpha($c)); + $iterator++; +} + +echo "\n-- Hexadecimal Values --\n"; +$iterator = 1; +foreach($hex_values as $c) { + echo "-- Iteration $iterator --\n"; + var_dump(ctype_alpha($c)); + $iterator++; +} + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_alpha() : usage variations *** + +-- Octal Values -- +-- Iteration 1 -- +bool(true) +-- Iteration 2 -- +bool(true) +-- Iteration 3 -- +bool(true) +-- Iteration 4 -- +bool(true) + +-- Hexadecimal Values -- +-- Iteration 1 -- +bool(true) +-- Iteration 2 -- +bool(true) +-- Iteration 3 -- +bool(true) +-- Iteration 4 -- +bool(true) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_lower_variation3.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_lower_variation3.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_lower_variation3.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_lower_variation3.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,144 @@ +--TEST-- +Test ctype_lower() function : usage variations - different strings +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_lower(mixed $c) + * Description: Checks for lowercase character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass strings containing different character types to ctype_lower() to test + * which are considered valid lowercase character only strings + */ + +echo "*** Testing ctype_lower() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$values = array( +/*1*/ "This string contains just letters and spaces", // Simple string + "but this one contains some numbers too 123+456 = 678", // Mixed string + "", + " ", +/*5*/ "a", + "ABCXYZ", + "abcxyz", + "ABCXYZ123DEF456", + "abczyz123DEF456", +/*10*/ "\r\n", + "123", + "03F", // hexadecimal 'digits' + ")speci@! ch@r$(", + '@!$*', +/*15*/ 'ABC', + 'abc', + 'ABC123', + 'abc123', + 'abc123\n', +/*20*/ 'abc 123', + '', + ' ', + base64_decode("w4DDoMOHw6fDiMOo"), // non-ascii characters + "abcXYZ", +/*25*/ "abc xyz", +/*26*/ "abc+efg*xyz", +); + +$iterator = 1; +foreach($values as $value) { + echo "\n-- Iteration $iterator --\n"; + var_dump( ctype_lower($value) ); + $iterator++; +}; + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_lower() : usage variations *** + +-- Iteration 1 -- +bool(false) + +-- Iteration 2 -- +bool(false) + +-- Iteration 3 -- +bool(false) + +-- Iteration 4 -- +bool(false) + +-- Iteration 5 -- +bool(true) + +-- Iteration 6 -- +bool(false) + +-- Iteration 7 -- +bool(true) + +-- Iteration 8 -- +bool(false) + +-- Iteration 9 -- +bool(false) + +-- Iteration 10 -- +bool(false) + +-- Iteration 11 -- +bool(false) + +-- Iteration 12 -- +bool(false) + +-- Iteration 13 -- +bool(false) + +-- Iteration 14 -- +bool(false) + +-- Iteration 15 -- +bool(false) + +-- Iteration 16 -- +bool(true) + +-- Iteration 17 -- +bool(false) + +-- Iteration 18 -- +bool(false) + +-- Iteration 19 -- +bool(false) + +-- Iteration 20 -- +bool(false) + +-- Iteration 21 -- +bool(false) + +-- Iteration 22 -- +bool(false) + +-- Iteration 23 -- +bool(false) + +-- Iteration 24 -- +bool(false) + +-- Iteration 25 -- +bool(false) + +-- Iteration 26 -- +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_alnum_variation4.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_alnum_variation4.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_alnum_variation4.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_alnum_variation4.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,68 @@ +--TEST-- +Test ctype_alnum() function : usage variations - octal and hexadecimal values +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_alnum(mixed $c) + * Description: Checks for alphanumeric character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass octal and hexadecimal values to ctype_alnum() to test behaviour + */ + +echo "*** Testing ctype_alnum() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$octal_values = array (060, 061, 062, 063); +$hex_values = array(0x30, 0x31, 0x32, 0x33); + +echo "\n-- Octal Values --\n"; +$iterator = 1; +foreach($octal_values as $c) { + echo "-- Iteration $iterator --\n"; + var_dump(ctype_alnum($c)); + $iterator++; +} + +echo "\n-- Hexadecimal Values --\n"; +$iterator = 1; +foreach($hex_values as $c) { + echo "-- Iteration $iterator --\n"; + var_dump(ctype_alnum($c)); + $iterator++; +} + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_alnum() : usage variations *** + +-- Octal Values -- +-- Iteration 1 -- +bool(true) +-- Iteration 2 -- +bool(true) +-- Iteration 3 -- +bool(true) +-- Iteration 4 -- +bool(true) + +-- Hexadecimal Values -- +-- Iteration 1 -- +bool(true) +-- Iteration 2 -- +bool(true) +-- Iteration 3 -- +bool(true) +-- Iteration 4 -- +bool(true) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_graph_variation2.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_graph_variation2.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_graph_variation2.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_graph_variation2.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,224 @@ +--TEST-- +Test ctype_graph() function : usage variations - different integers +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_graph(mixed $c) + * Description: Checks for any printable character(s) except space + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass different integers to ctype_graph() to test which character codes are considered + * valid visibly printable characters + */ + +echo "*** Testing ctype_graph() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +for ($i = 0; $i < 256; $i++) { + if (ctype_graph($i)) { + echo "character code $i is a printable character\n"; + } +} + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_graph() : usage variations *** +character code 33 is a printable character +character code 34 is a printable character +character code 35 is a printable character +character code 36 is a printable character +character code 37 is a printable character +character code 38 is a printable character +character code 39 is a printable character +character code 40 is a printable character +character code 41 is a printable character +character code 42 is a printable character +character code 43 is a printable character +character code 44 is a printable character +character code 45 is a printable character +character code 46 is a printable character +character code 47 is a printable character +character code 48 is a printable character +character code 49 is a printable character +character code 50 is a printable character +character code 51 is a printable character +character code 52 is a printable character +character code 53 is a printable character +character code 54 is a printable character +character code 55 is a printable character +character code 56 is a printable character +character code 57 is a printable character +character code 58 is a printable character +character code 59 is a printable character +character code 60 is a printable character +character code 61 is a printable character +character code 62 is a printable character +character code 63 is a printable character +character code 64 is a printable character +character code 65 is a printable character +character code 66 is a printable character +character code 67 is a printable character +character code 68 is a printable character +character code 69 is a printable character +character code 70 is a printable character +character code 71 is a printable character +character code 72 is a printable character +character code 73 is a printable character +character code 74 is a printable character +character code 75 is a printable character +character code 76 is a printable character +character code 77 is a printable character +character code 78 is a printable character +character code 79 is a printable character +character code 80 is a printable character +character code 81 is a printable character +character code 82 is a printable character +character code 83 is a printable character +character code 84 is a printable character +character code 85 is a printable character +character code 86 is a printable character +character code 87 is a printable character +character code 88 is a printable character +character code 89 is a printable character +character code 90 is a printable character +character code 91 is a printable character +character code 92 is a printable character +character code 93 is a printable character +character code 94 is a printable character +character code 95 is a printable character +character code 96 is a printable character +character code 97 is a printable character +character code 98 is a printable character +character code 99 is a printable character +character code 100 is a printable character +character code 101 is a printable character +character code 102 is a printable character +character code 103 is a printable character +character code 104 is a printable character +character code 105 is a printable character +character code 106 is a printable character +character code 107 is a printable character +character code 108 is a printable character +character code 109 is a printable character +character code 110 is a printable character +character code 111 is a printable character +character code 112 is a printable character +character code 113 is a printable character +character code 114 is a printable character +character code 115 is a printable character +character code 116 is a printable character +character code 117 is a printable character +character code 118 is a printable character +character code 119 is a printable character +character code 120 is a printable character +character code 121 is a printable character +character code 122 is a printable character +character code 123 is a printable character +character code 124 is a printable character +character code 125 is a printable character +character code 126 is a printable character +character code 161 is a printable character +character code 162 is a printable character +character code 163 is a printable character +character code 164 is a printable character +character code 165 is a printable character +character code 166 is a printable character +character code 167 is a printable character +character code 168 is a printable character +character code 169 is a printable character +character code 170 is a printable character +character code 171 is a printable character +character code 172 is a printable character +character code 174 is a printable character +character code 175 is a printable character +character code 176 is a printable character +character code 177 is a printable character +character code 178 is a printable character +character code 179 is a printable character +character code 180 is a printable character +character code 181 is a printable character +character code 182 is a printable character +character code 183 is a printable character +character code 184 is a printable character +character code 185 is a printable character +character code 186 is a printable character +character code 187 is a printable character +character code 188 is a printable character +character code 189 is a printable character +character code 190 is a printable character +character code 191 is a printable character +character code 192 is a printable character +character code 193 is a printable character +character code 194 is a printable character +character code 195 is a printable character +character code 196 is a printable character +character code 197 is a printable character +character code 198 is a printable character +character code 199 is a printable character +character code 200 is a printable character +character code 201 is a printable character +character code 202 is a printable character +character code 203 is a printable character +character code 204 is a printable character +character code 205 is a printable character +character code 206 is a printable character +character code 207 is a printable character +character code 208 is a printable character +character code 209 is a printable character +character code 210 is a printable character +character code 211 is a printable character +character code 212 is a printable character +character code 213 is a printable character +character code 214 is a printable character +character code 215 is a printable character +character code 216 is a printable character +character code 217 is a printable character +character code 218 is a printable character +character code 219 is a printable character +character code 220 is a printable character +character code 221 is a printable character +character code 222 is a printable character +character code 223 is a printable character +character code 224 is a printable character +character code 225 is a printable character +character code 226 is a printable character +character code 227 is a printable character +character code 228 is a printable character +character code 229 is a printable character +character code 230 is a printable character +character code 231 is a printable character +character code 232 is a printable character +character code 233 is a printable character +character code 234 is a printable character +character code 235 is a printable character +character code 236 is a printable character +character code 237 is a printable character +character code 238 is a printable character +character code 239 is a printable character +character code 240 is a printable character +character code 241 is a printable character +character code 242 is a printable character +character code 243 is a printable character +character code 244 is a printable character +character code 245 is a printable character +character code 246 is a printable character +character code 247 is a printable character +character code 248 is a printable character +character code 249 is a printable character +character code 250 is a printable character +character code 251 is a printable character +character code 252 is a printable character +character code 253 is a printable character +character code 254 is a printable character +character code 255 is a printable character +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_xdigit_variation3.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_xdigit_variation3.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_xdigit_variation3.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_xdigit_variation3.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,144 @@ +--TEST-- +Test ctype_xdigit() function : usage variations - Different strings +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_xdigit(mixed $c) + * Description: Checks for character(s) representing a hexadecimal digit + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass strings containing different character types to ctype_xdigit() to test + * which are considered valid hexadecimal 'digit' only strings + */ + +echo "*** Testing ctype_xdigit() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$values = array( +/*1*/ "This string contains just letters and spaces", // Simple string + "but this one contains some numbers too 123+456 = 678", // Mixed string + "", + " ", +/*5*/ "a", + "ABCXYZ", + "abcxyz", + "ABCXYZ123DEF456", + "abczyz123DEF456", +/*10*/ "\r\n", + "123", + "03F", // hexadecimal 'digits' + ")speci@! ch@r$(", + '@!$*', +/*15*/ 'ABC', + 'abc', + 'ABC123', + 'abc123', + 'abc123\n', +/*20*/ 'abc 123', + '', + ' ', + base64_decode("w4DDoMOHw6fDiMOo"), // non-ascii characters + 'ABCdef07', + "56ea\tFB", + "0x2A" + ); + +$iterator = 1; +foreach($values as $value) { + echo "\n-- Iteration $iterator --\n"; + var_dump( ctype_xdigit($value) ); + $iterator++; +}; + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_xdigit() : usage variations *** + +-- Iteration 1 -- +bool(false) + +-- Iteration 2 -- +bool(false) + +-- Iteration 3 -- +bool(false) + +-- Iteration 4 -- +bool(false) + +-- Iteration 5 -- +bool(true) + +-- Iteration 6 -- +bool(false) + +-- Iteration 7 -- +bool(false) + +-- Iteration 8 -- +bool(false) + +-- Iteration 9 -- +bool(false) + +-- Iteration 10 -- +bool(false) + +-- Iteration 11 -- +bool(true) + +-- Iteration 12 -- +bool(true) + +-- Iteration 13 -- +bool(false) + +-- Iteration 14 -- +bool(false) + +-- Iteration 15 -- +bool(true) + +-- Iteration 16 -- +bool(true) + +-- Iteration 17 -- +bool(true) + +-- Iteration 18 -- +bool(true) + +-- Iteration 19 -- +bool(false) + +-- Iteration 20 -- +bool(false) + +-- Iteration 21 -- +bool(false) + +-- Iteration 22 -- +bool(false) + +-- Iteration 23 -- +bool(false) + +-- Iteration 24 -- +bool(true) + +-- Iteration 25 -- +bool(false) + +-- Iteration 26 -- +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_punct_basic.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_punct_basic.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_punct_basic.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_punct_basic.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,34 @@ +--TEST-- +Test ctype_punct() function : basic functionality +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_punct(mixed $c) + * Description: Checks for any printable character which is not whitespace + * or an alphanumeric character + * Source code: ext/ctype/ctype.c + */ + +echo "*** Testing ctype_punct() : basic functionality ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$c1 = '@!$*'; +$c2 = 'hello, world!'; + +var_dump(ctype_punct($c1)); +var_dump(ctype_punct($c2)); + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_punct() : basic functionality *** +bool(true) +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_space_error.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_space_error.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_space_error.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_space_error.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,49 @@ +--TEST-- +Test ctype_space() function : error conditions - Incorrect number of args +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_space(mixed $c) + * Description: Checks for whitespace character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass an incorrect number of arguments to ctype_space() to test behaviour + */ + +echo "*** Testing ctype_space() : error conditions ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +// Zero arguments +echo "\n-- Testing ctype_space() function with Zero arguments --\n"; +var_dump( ctype_space() ); + +//Test ctype_space with one more than the expected number of arguments +echo "\n-- Testing ctype_space() function with more than expected no. of arguments --\n"; +$c = " "; +$extra_arg = 10; +var_dump( ctype_space($c, $extra_arg) ); + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_space() : error conditions *** + +-- Testing ctype_space() function with Zero arguments -- + +Warning: ctype_space() expects exactly 1 parameter, 0 given in %s on line %d +NULL + +-- Testing ctype_space() function with more than expected no. of arguments -- + +Warning: ctype_space() expects exactly 1 parameter, 2 given in %s on line %d +NULL +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_upper_basic.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_upper_basic.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_upper_basic.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_upper_basic.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,33 @@ +--TEST-- +Test ctype_upper() function : basic functionality +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_upper(mixed $c) + * Description: Checks for uppercase character(s) + * Source code: ext/ctype/ctype.c + */ + +echo "*** Testing ctype_upper() : basic functionality ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$c1 = 'HELLOWORLD'; +$c2 = "Hello, World!\n"; + +var_dump(ctype_upper($c1)); +var_dump(ctype_upper($c2)); + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_upper() : basic functionality *** +bool(true) +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_upper_variation3.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_upper_variation3.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_upper_variation3.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_upper_variation3.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,143 @@ +--TEST-- +Test ctype_upper() function : usage variations - different strings +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_upper(mixed $c) + * Description: Checks for uppercase character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass strings containing different character types to ctype_upper() to test + * which are considered valid uppercase character only strings + */ + +echo "*** Testing ctype_upper() : usage variations ***\n"; +$orig = setlocale(LC_CTYPE, "C"); + +$values = array( +/*1*/ "This string contains just letters and spaces", // Simple string + "but this one contains some numbers too 123+456 = 678", // Mixed string + "", + " ", +/*5*/ "a", + "ABCXYZ", + "abcxyz", + "ABCXYZ123DEF456", + "abczyz123DEF456", +/*10*/ "\r\n", + "123", + "03F", // hexadecimal 'digits' + ")speci@! ch@r$(", + '@!$*', +/*15*/ 'ABC', + 'abc', + 'ABC123', + 'abc123', + 'abc123\n', +/*20*/ 'abc 123', + '', + ' ', + base64_decode("w4DDoMOHw6fDiMOo"), // non-ascii characters + "abcXYZ", +/*25*/ "ABC XYZ", +/*26*/ "ABC+EFG*XYZ", +); + +$iterator = 1; +foreach($values as $value) { + echo "\n-- Iteration $iterator --\n"; + var_dump( ctype_upper($value) ); + $iterator++; +}; + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_upper() : usage variations *** + +-- Iteration 1 -- +bool(false) + +-- Iteration 2 -- +bool(false) + +-- Iteration 3 -- +bool(false) + +-- Iteration 4 -- +bool(false) + +-- Iteration 5 -- +bool(false) + +-- Iteration 6 -- +bool(true) + +-- Iteration 7 -- +bool(false) + +-- Iteration 8 -- +bool(false) + +-- Iteration 9 -- +bool(false) + +-- Iteration 10 -- +bool(false) + +-- Iteration 11 -- +bool(false) + +-- Iteration 12 -- +bool(false) + +-- Iteration 13 -- +bool(false) + +-- Iteration 14 -- +bool(false) + +-- Iteration 15 -- +bool(true) + +-- Iteration 16 -- +bool(false) + +-- Iteration 17 -- +bool(false) + +-- Iteration 18 -- +bool(false) + +-- Iteration 19 -- +bool(false) + +-- Iteration 20 -- +bool(false) + +-- Iteration 21 -- +bool(false) + +-- Iteration 22 -- +bool(false) + +-- Iteration 23 -- +bool(false) + +-- Iteration 24 -- +bool(false) + +-- Iteration 25 -- +bool(false) + +-- Iteration 26 -- +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_cntrl_variation1.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_cntrl_variation1.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_cntrl_variation1.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_cntrl_variation1.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,184 @@ +--TEST-- +Test ctype_cntrl() function : usage variations - Different data types as $c arg +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_cntrl(mixed $c) + * Description: Checks for control character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass different data types as $c argument to ctype_cntrl() to test behaviour + */ + +echo "*** Testing ctype_cntrl() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +//get an unset variable +$unset_var = 10; +unset ($unset_var); + +// get a class +class classA +{ + public function __toString() { + return "\n\r\t"; + } +} + +// heredoc string +$heredoc = <<<EOT +\t\r\n +EOT; + +// get a resource variable +$fp = fopen(__FILE__, "r"); + +// unexpected values to be passed to $c argument +$inputs = array( + + // int data +/*1*/ 0, + 1, + 12345, + -2345, + + // float data +/*5*/ 10.5, + -10.5, + 12.3456789000e10, + 12.3456789000E-10, + .5, + + // null data +/*10*/ NULL, + null, + + // boolean data +/*12*/ true, + false, + TRUE, + FALSE, + + // empty data +/*16*/ "", + '', + array(), + + // string data +/*19*/ "\t\r\n", + ' +', + $heredoc, + + // object data +/*22*/ new classA(), + + // undefined data +/*23*/ @$undefined_var, + + // unset data +/*24*/ @$unset_var, + + // resource variable +/*25*/ $fp +); + +// loop through each element of $inputs to check the behavior of ctype_cntrl() +$iterator = 1; +foreach($inputs as $input) { + echo "\n-- Iteration $iterator --\n"; + var_dump( ctype_cntrl($input) ); + $iterator++; +}; + +fclose($fp); + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_cntrl() : usage variations *** + +-- Iteration 1 -- +bool(true) + +-- Iteration 2 -- +bool(true) + +-- Iteration 3 -- +bool(false) + +-- Iteration 4 -- +bool(false) + +-- Iteration 5 -- +bool(false) + +-- Iteration 6 -- +bool(false) + +-- Iteration 7 -- +bool(false) + +-- Iteration 8 -- +bool(false) + +-- Iteration 9 -- +bool(false) + +-- Iteration 10 -- +bool(false) + +-- Iteration 11 -- +bool(false) + +-- Iteration 12 -- +bool(false) + +-- Iteration 13 -- +bool(false) + +-- Iteration 14 -- +bool(false) + +-- Iteration 15 -- +bool(false) + +-- Iteration 16 -- +bool(false) + +-- Iteration 17 -- +bool(false) + +-- Iteration 18 -- +bool(false) + +-- Iteration 19 -- +bool(true) + +-- Iteration 20 -- +bool(true) + +-- Iteration 21 -- +bool(true) + +-- Iteration 22 -- +bool(false) + +-- Iteration 23 -- +bool(false) + +-- Iteration 24 -- +bool(false) + +-- Iteration 25 -- +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_graph_basic.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_graph_basic.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_graph_basic.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_graph_basic.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,33 @@ +--TEST-- +Test ctype_graph() function : basic functionality +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_graph(mixed $c) + * Description: Checks for any printable character(s) except space + * Source code: ext/ctype/ctype.c + */ + +echo "*** Testing ctype_graph() : basic functionality ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$c1 = 'helloWorld!'; +$c2 = "Hello, world!\n"; + +var_dump(ctype_graph($c1)); +var_dump(ctype_graph($c2)); + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_graph() : basic functionality *** +bool(true) +bool(false) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_graph_error.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_graph_error.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_graph_error.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_graph_error.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,45 @@ +--TEST-- +Test ctype_graph() function : error conditions - incorrect number of arguments +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_graph(mixed $c) + * Description: Checks for any printable character(s) except space + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass an incorrect number of arguments to ctype_graph() to test behaviour + */ + +echo "*** Testing ctype_graph() : error conditions ***\n"; + +// Zero arguments +echo "\n-- Testing ctype_graph() function with Zero arguments --\n"; +var_dump( ctype_graph() ); + +//Test ctype_graph with one more than the expected number of arguments +echo "\n-- Testing ctype_graph() function with more than expected no. of arguments --\n"; +$c = 1; +$extra_arg = 10; +var_dump( ctype_graph($c, $extra_arg) ); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_graph() : error conditions *** + +-- Testing ctype_graph() function with Zero arguments -- + +Warning: ctype_graph() expects exactly 1 parameter, 0 given in %s on line %d +NULL + +-- Testing ctype_graph() function with more than expected no. of arguments -- + +Warning: ctype_graph() expects exactly 1 parameter, 2 given in %s on line %d +NULL +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_punct_variation2.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_punct_variation2.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_punct_variation2.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_punct_variation2.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,65 @@ +--TEST-- +Test ctype_punct() function : usage variations - different integers +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_punct(mixed $c) + * Description: Checks for any printable character which is not whitespace + * or an alphanumeric character + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass different integers to ctype_punct() to test which character codes are considered + * valid punctuation characters + */ + +echo "*** Testing ctype_punct() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +for ($c = 1; $c < 256; $c++) { + if (ctype_punct($c)) { + echo "character code $c is punctuation\n"; + } +} + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_punct() : usage variations *** +character code 33 is punctuation +character code 34 is punctuation +character code 35 is punctuation +character code 37 is punctuation +character code 38 is punctuation +character code 39 is punctuation +character code 40 is punctuation +character code 41 is punctuation +character code 42 is punctuation +character code 44 is punctuation +character code 45 is punctuation +character code 46 is punctuation +character code 47 is punctuation +character code 58 is punctuation +character code 59 is punctuation +character code 63 is punctuation +character code 64 is punctuation +character code 91 is punctuation +character code 92 is punctuation +character code 93 is punctuation +character code 95 is punctuation +character code 123 is punctuation +character code 125 is punctuation +character code 161 is punctuation +character code 171 is punctuation +character code 183 is punctuation +character code 187 is punctuation +character code 191 is punctuation +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_cntrl_variation4.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_cntrl_variation4.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_cntrl_variation4.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_cntrl_variation4.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,67 @@ +--TEST-- +Test ctype_cntrl() function : usage variations - Octal and hexadecimal values +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_cntrl(mixed $c) + * Description: Checks for control character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass hexadecimal and octal values to ctype_cntrl() to test behaviour + */ + +echo "*** Testing ctype_cntrl() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +$octal_values = array(01, 02, 03, 04); +$hex_values = array(0x1, 0x2, 0x3, 0x4); + +echo "\n-- Octal Values --\n"; +$iterator = 1; +foreach($octal_values as $c) { + echo "-- Iteration $iterator --\n"; + var_dump(ctype_cntrl($c)); + $iterator++; +} + +echo "\n-- Hexadecimal Values --\n"; +$iterator = 1; +foreach($hex_values as $c) { + echo "-- Iteration $iterator --\n"; + var_dump(ctype_cntrl($c)); + $iterator++; +} +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_cntrl() : usage variations *** + +-- Octal Values -- +-- Iteration 1 -- +bool(true) +-- Iteration 2 -- +bool(true) +-- Iteration 3 -- +bool(true) +-- Iteration 4 -- +bool(true) + +-- Hexadecimal Values -- +-- Iteration 1 -- +bool(true) +-- Iteration 2 -- +bool(true) +-- Iteration 3 -- +bool(true) +-- Iteration 4 -- +bool(true) +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_lower_error.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_lower_error.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_lower_error.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_lower_error.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,45 @@ +--TEST-- +Test ctype_lower() function : error conditions - incorrect number of args +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_lower(mixed $c) + * Description: Checks for lowercase character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass incorrect number of arguments to ctype_lower() to test behaviour + */ + +echo "*** Testing ctype_lower() : error conditions ***\n"; + +// Zero arguments +echo "\n-- Testing ctype_lower() function with Zero arguments --\n"; +var_dump( ctype_lower() ); + +//Test ctype_lower with one more than the expected number of arguments +echo "\n-- Testing ctype_lower() function with more than expected no. of arguments --\n"; +$c = 1; +$extra_arg = 10; +var_dump( ctype_lower($c, $extra_arg) ); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_lower() : error conditions *** + +-- Testing ctype_lower() function with Zero arguments -- + +Warning: ctype_lower() expects exactly 1 parameter, 0 given in %s on line %d +NULL + +-- Testing ctype_lower() function with more than expected no. of arguments -- + +Warning: ctype_lower() expects exactly 1 parameter, 2 given in %s on line %d +NULL +===DONE=== http://cvs.php.net/viewvc.cgi/php-src/ext/ctype/tests/ctype_lower_variation1.phpt?r1=1.1&r2=1.2&diff_format=u Index: php-src/ext/ctype/tests/ctype_lower_variation1.phpt diff -u /dev/null php-src/ext/ctype/tests/ctype_lower_variation1.phpt:1.2 --- /dev/null Mon Mar 17 09:54:37 2008 +++ php-src/ext/ctype/tests/ctype_lower_variation1.phpt Mon Mar 17 09:54:36 2008 @@ -0,0 +1,183 @@ +--TEST-- +Test ctype_lower() function : usage variations - different data types as $c arg +--SKIPIF-- +<?php +if( ini_get("unicode.semantics") == "1") { + die('skip do not run when unicode on'); +} +?> +--FILE-- +<?php +/* Prototype : bool ctype_lower(mixed $c) + * Description: Checks for lowercase character(s) + * Source code: ext/ctype/ctype.c + */ + +/* + * Pass different data types as $c argument to ctype_lower() to test behaviour + */ + +echo "*** Testing ctype_lower() : usage variations ***\n"; + +$orig = setlocale(LC_CTYPE, "C"); + +//get an unset variable +$unset_var = 10; +unset ($unset_var); + +// get a class +class classA +{ + public function __toString() { + return "class"; + } +} + +// heredoc string +$heredoc = <<<EOT +heredoc +EOT; + +// get a resource variable +$fp = fopen(__FILE__, "r"); + +// unexpected values to be passed to $c argument +$inputs = array( + + // int data +/*1*/ 0, + 1, + 12345, + -2345, + + // float data +/*5*/ 10.5, + -10.5, + 12.3456789000e10, + 12.3456789000E-10, + .5, + + // null data +/*10*/ NULL, + null, + + // boolean data +/*12*/ true, + false, + TRUE, + FALSE, + + // empty data +/*16*/ "", + '', + array(), + + // string data +/*19*/ "string", + 'string', + $heredoc, + + // object data +/*22*/ new classA(), + + // undefined data +/*23*/ @$undefined_var, + + // unset data +/*24*/ @$unset_var, + + // resource variable +/*25*/ $fp +); + +// loop through each element of $inputs to check the behavior of ctype_lower() +$iterator = 1; +foreach($inputs as $input) { + echo "\n-- Iteration $iterator --\n"; + var_dump( ctype_lower($input) ); + $iterator++; +}; + +fclose($fp); + +setlocale(LC_CTYPE, $orig); +?> +===DONE=== +--EXPECTF-- +*** Testing ctype_lower() : usage variations *** + +-- Iteration 1 -- +bool(false) + +-- Iteration 2 -- +bool(false) + +-- Iteration 3 -- +bool(false) + +-- Iteration 4 -- +bool(false) + +-- Iteration 5 -- +bool(false) + +-- Iteration 6 -- +bool(false) + +-- Iteration 7 -- +bool(false) + +-- Iteration 8 -- +bool(false) + +-- Iteration 9 -- +bool(false) + +-- Iteration 10 -- +bool(false) + +-- Iteration 11 -- +bool(false) + +-- Iteration 12 -- +bool(false) + +-- Iteration 13 -- +bool(false) + +-- Iteration 14 -- +bool(false) + +-- Iteration 15 -- +bool(false) + +-- Iteration 16 -- +bool(false) + +-- Iteration 17 -- +bool(false) + +-- Iteration 18 -- +bool(false) + +-- Iteration 19 -- +bool(true) + +-- Iteration 20 -- +bool(true) + +-- Iteration 21 -- +bool(true) + +-- Iteration 22 -- +bool(false) + +-- Iteration 23 -- +bool(false) + +-- Iteration 24 -- +bool(false) + +-- Iteration 25 -- +bool(false) +===DONE===
« previous php.cvs (#49138) next »