php-src/ext/standard/tests/strings/str_increment_errors.phpt
George Peter Banyard d8696f9216
[RFC] Path to Saner Increment/Decrement operators (#10358)
* Add behavioural tests for incdec operators

* Add support to ++/-- for objects castable to _IS_NUMBER

* Add str_increment() function

* Add str_decrement() function

RFC: https://wiki.php.net/rfc/saner-inc-dec-operators

Co-authored-by: Ilija Tovilo <ilija.tovilo@me.com>
Co-authored-by: Arnaud Le Blanc <arnaud.lb@gmail.com>
2023-07-17 15:51:24 +01:00

53 lines
1.9 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

--TEST--
str_increment(): Invalid strings to increment should throw a ValueError
--FILE--
<?php
$strings = [
// Empty string
"",
// String increments are unaware of being "negative"
"-cc",
// Trailing whitespace
"Z ",
// Leading whitespace
" Z",
// Non-ASCII characters
"é",
"あいうえお",
"α",
"ω",
"Α", // Capital alpha
"Ω",
// With period
"foo1.txt",
"1f.5",
// With multiple period
"foo.1.txt",
"1.f.5",
];
foreach ($strings as $s) {
try {
var_dump(str_increment($s));
} catch (ValueError $e) {
echo $e->getMessage(), PHP_EOL;
}
}
?>
--EXPECT--
str_increment(): Argument #1 ($string) cannot be empty
str_increment(): Argument #1 ($string) must be composed only of alphanumeric ASCII characters
str_increment(): Argument #1 ($string) must be composed only of alphanumeric ASCII characters
str_increment(): Argument #1 ($string) must be composed only of alphanumeric ASCII characters
str_increment(): Argument #1 ($string) must be composed only of alphanumeric ASCII characters
str_increment(): Argument #1 ($string) must be composed only of alphanumeric ASCII characters
str_increment(): Argument #1 ($string) must be composed only of alphanumeric ASCII characters
str_increment(): Argument #1 ($string) must be composed only of alphanumeric ASCII characters
str_increment(): Argument #1 ($string) must be composed only of alphanumeric ASCII characters
str_increment(): Argument #1 ($string) must be composed only of alphanumeric ASCII characters
str_increment(): Argument #1 ($string) must be composed only of alphanumeric ASCII characters
str_increment(): Argument #1 ($string) must be composed only of alphanumeric ASCII characters
str_increment(): Argument #1 ($string) must be composed only of alphanumeric ASCII characters
str_increment(): Argument #1 ($string) must be composed only of alphanumeric ASCII characters