summaryrefslogtreecommitdiff
path: root/ext/standard/tests/strings/rtrim_error.phpt
blob: 3cdfb9116d802d115bff04cfaa7d8844ba09a1d9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
--TEST--
Test rtrim() function : error conditions 
--FILE--
<?php

/* Prototype  : string rtrim  ( string $str  [, string $charlist  ] )
 * Description: Strip whitespace (or other characters) from the end of a string.
 * Source code: ext/standard/string.c
*/


echo "*** Testing rtrim() : error conditions ***\n";

echo "\n-- Testing rtrim() function with no arguments --\n";
var_dump( rtrim() );

echo "\n-- Testing rtrim() function with more than expected no. of arguments --\n";
$extra_arg = 10;
var_dump( rtrim("Hello World",  "Heo", $extra_arg) );


$hello = "  Hello World\n";
echo "\n-- Test rtrim function with various invalid charlists\n";
var_dump(rtrim($hello, "..a"));
var_dump(rtrim($hello, "a.."));
var_dump(rtrim($hello, "z..a"));
var_dump(rtrim($hello, "a..b..c"));

?>
===DONE===
--EXPECTF--
*** Testing rtrim() : error conditions ***

-- Testing rtrim() function with no arguments --

Warning: rtrim() expects at least 1 parameter, 0 given in %s on line %d
NULL

-- Testing rtrim() function with more than expected no. of arguments --

Warning: rtrim() expects at most 2 parameters, 3 given in %s on line %d
NULL

-- Test rtrim function with various invalid charlists

Warning: rtrim(): Invalid '..'-range, no character to the left of '..' in %s on line %d
string(14) "  Hello World
"

Warning: rtrim(): Invalid '..'-range, no character to the right of '..' in %s on line %d
string(14) "  Hello World
"

Warning: rtrim(): Invalid '..'-range, '..'-range needs to be incrementing in %s on line %d
string(14) "  Hello World
"

Warning: rtrim(): Invalid '..'-range in %s on line %d
string(14) "  Hello World
"
===DONE===