Skip to content

Commit faef004

Browse files
committed
ext/spl: Add tests for disabled sort functions
1 parent aa0e8bf commit faef004

File tree

6 files changed

+108
-0
lines changed

6 files changed

+108
-0
lines changed
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
--TEST--
2+
ArrayObject when function asort() is disabled
3+
--INI--
4+
disable_functions=asort
5+
--FILE--
6+
<?php
7+
$a = ['hello', 'world', 'SPL', 'is', 'fun', '!'];
8+
$ao = new ArrayObject($a);
9+
$ao->asort();
10+
var_dump($ao);
11+
12+
?>
13+
--EXPECTF--
14+
Fatal error: Uncaught Error: Invalid callback asort, function "asort" not found or invalid function name in %s:%d
15+
Stack trace:
16+
#0 %s(%d): ArrayObject->asort()
17+
#1 {main}
18+
thrown in %s on line %d
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
--TEST--
2+
ArrayObject when function ksort() is disabled
3+
--INI--
4+
disable_functions=ksort
5+
--FILE--
6+
<?php
7+
$a = ['hello', 'world', 'SPL', 'is', 'fun', '!'];
8+
$ao = new ArrayObject($a);
9+
$ao->ksort();
10+
var_dump($ao);
11+
12+
?>
13+
--EXPECTF--
14+
Fatal error: Uncaught Error: Invalid callback ksort, function "ksort" not found or invalid function name in %s:%d
15+
Stack trace:
16+
#0 %s(%d): ArrayObject->ksort()
17+
#1 {main}
18+
thrown in %s on line %d
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
--TEST--
2+
ArrayObject when function natcasesort() is disabled
3+
--INI--
4+
disable_functions=natcasesort
5+
--FILE--
6+
<?php
7+
$a = ['hello', 'world', 'SPL', 'is', 'fun', '!'];
8+
$ao = new ArrayObject($a);
9+
$ao->natcasesort();
10+
var_dump($ao);
11+
12+
?>
13+
--EXPECTF--
14+
Fatal error: Uncaught Error: Invalid callback natcasesort, function "natcasesort" not found or invalid function name in %s:%d
15+
Stack trace:
16+
#0 %s(%d): ArrayObject->natcasesort()
17+
#1 {main}
18+
thrown in %s on line %d
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
--TEST--
2+
ArrayObject when function natsort() is disabled
3+
--INI--
4+
disable_functions=natsort
5+
--FILE--
6+
<?php
7+
$a = ['hello', 'world', 'SPL', 'is', 'fun', '!'];
8+
$ao = new ArrayObject($a);
9+
$ao->natsort();
10+
var_dump($ao);
11+
12+
?>
13+
--EXPECTF--
14+
Fatal error: Uncaught Error: Invalid callback natsort, function "natsort" not found or invalid function name in %s:%d
15+
Stack trace:
16+
#0 %s(%d): ArrayObject->natsort()
17+
#1 {main}
18+
thrown in %s on line %d
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
--TEST--
2+
ArrayObject when function uasort() is disabled
3+
--INI--
4+
disable_functions=uasort
5+
--FILE--
6+
<?php
7+
$a = ['hello', 'world', 'SPL', 'is', 'fun', '!'];
8+
$ao = new ArrayObject($a);
9+
$ao->uasort(fn ($l, $r) => $l <=> $r);
10+
var_dump($ao);
11+
12+
?>
13+
--EXPECTF--
14+
Fatal error: Uncaught Error: Invalid callback uasort, function "uasort" not found or invalid function name in %s:%d
15+
Stack trace:
16+
#0 %s(%d): ArrayObject->uasort(Object(Closure))
17+
#1 {main}
18+
thrown in %s on line %d
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
--TEST--
2+
ArrayObject when function uksort() is disabled
3+
--INI--
4+
disable_functions=uksort
5+
--FILE--
6+
<?php
7+
$a = ['hello', 'world', 'SPL', 'is', 'fun', '!'];
8+
$ao = new ArrayObject($a);
9+
$ao->uksort(fn ($l, $r) => $l <=> $r);
10+
var_dump($ao);
11+
12+
?>
13+
--EXPECTF--
14+
Fatal error: Uncaught Error: Invalid callback uksort, function "uksort" not found or invalid function name in %s:%d
15+
Stack trace:
16+
#0 %s(%d): ArrayObject->uksort(Object(Closure))
17+
#1 {main}
18+
thrown in %s on line %d

0 commit comments

Comments
 (0)