diff options
author | andy wharmby <wharmby@php.net> | 2009-01-19 15:46:41 +0000 |
---|---|---|
committer | andy wharmby <wharmby@php.net> | 2009-01-19 15:46:41 +0000 |
commit | 68b5346285de07fe2c08cf0c02a4af6a2d43d70a (patch) | |
tree | e664a613a822fca86409ef3298e122c96884bf4e /ext/standard/tests/strings/str_shuffle_basic.phpt | |
parent | c422d15d0e97335c6d7e9cc8b0f5c48f46c55b6d (diff) | |
download | php-git-68b5346285de07fe2c08cf0c02a4af6a2d43d70a.tar.gz |
New tests for str_pad(), str_shuffle(), stristr() and strlen(). Tested on WIndows, Linux and Linux 64 bit
Diffstat (limited to 'ext/standard/tests/strings/str_shuffle_basic.phpt')
-rw-r--r-- | ext/standard/tests/strings/str_shuffle_basic.phpt | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/ext/standard/tests/strings/str_shuffle_basic.phpt b/ext/standard/tests/strings/str_shuffle_basic.phpt new file mode 100644 index 0000000000..b60a35f560 --- /dev/null +++ b/ext/standard/tests/strings/str_shuffle_basic.phpt @@ -0,0 +1,59 @@ +--TEST-- +Test str_shuffle() function : basic functionality +--FILE-- +<?php +/* Prototype : string str_shuffle ( string $str ) + * Description: Randomly shuffles a string + * Source code: ext/standard/string.c +*/ + +/* + * Testing str_shuffle() : basic functionality +*/ + +echo "*** Testing str_shuffle() : basic functionality ***\n"; + +// Initialize all required variables +$str = 'This testcase tests the str_shuffle() function.'; +var_dump(str_shuffle($str)); + + +// For a given i/p string ensure that all combinations are +// generated given a reasonable sample of calls +$a = array(); +$trys = 1000; +$ip = 'abcd'; +$len_ip = strlen($ip); + +for ($i = 0; $i < $trys; $i++) { + $op = str_shuffle($ip); + + if (!is_string($op) || strlen($op) != $len_ip) { + echo "TEST FAILED\n"; + } + + // Combination already hit ? + if (empty($a[$op])) { + // No first time init + $a[$op] = 0; + } + + // Increment count for this combination + $a[$op]++; +} + +$combinations = count($a); + +if ($combinations != 24) { + echo "TEST FAILED.. Only $combinations out of a possible 24 combinations used\n"; +} else { + echo "TEST PASSED\n"; +} + +?> +===DONE=== +--EXPECTF-- +*** Testing str_shuffle() : basic functionality *** +string(47) "%s" +TEST PASSED +===DONE===
\ No newline at end of file |