summaryrefslogtreecommitdiff
path: root/src/tests/harden_rand_php8
diff options
context:
space:
mode:
authorjvoisin2020-12-31 15:33:08 +0100
committerjvoisin2020-12-31 15:42:17 +0100
commit22793562313fd7efaeaa663d405357bbb788da5f (patch)
treec70a2c28946ce640060e130a8d2128b0fe8de4dc /src/tests/harden_rand_php8
parentc3a35b46107fc5ddf94b15ccd6a4d1697610e48f (diff)
Add tests for harden_rand
Diffstat (limited to 'src/tests/harden_rand_php8')
-rw-r--r--src/tests/harden_rand_php8/config/harden_rand.ini1
-rw-r--r--src/tests/harden_rand_php8/harden_rand_noargs.phpt43
2 files changed, 44 insertions, 0 deletions
diff --git a/src/tests/harden_rand_php8/config/harden_rand.ini b/src/tests/harden_rand_php8/config/harden_rand.ini
new file mode 100644
index 0000000..89e19be
--- /dev/null
+++ b/src/tests/harden_rand_php8/config/harden_rand.ini
@@ -0,0 +1 @@
sp.harden_random.enable();
diff --git a/src/tests/harden_rand_php8/harden_rand_noargs.phpt b/src/tests/harden_rand_php8/harden_rand_noargs.phpt
new file mode 100644
index 0000000..5f00c8f
--- /dev/null
+++ b/src/tests/harden_rand_php8/harden_rand_noargs.phpt
@@ -0,0 +1,43 @@
1--TEST--
2Harden rand without any arguments
3--SKIPIF--
4<?php if (!extension_loaded("snuffleupagus")) print "skip"; ?>
5<?php if (PHP_VERSION_ID < 80000) print "skip"; ?>
6--INI--
7sp.configuration_file={PWD}/config/harden_rand.ini
8--FILE--
9<?php
10rand();
11mt_rand();
12
13rand(1);
14mt_rand(1);
15
16rand(1, 2);
17mt_rand(1, 2);
18
19rand(2, 1);
20mt_rand(2, 1);
21
22rand(2, 1, 0);
23mt_rand(2, 1, 0);
24
25rand("test", 1);
26mt_rand("test", 1);
27
28rand(1, "test");
29mt_rand(1, "test");
30
31rand(1, 2, "test");
32mt_rand(1, 2, "test");
33
34echo "Everything is fine\n";
35echo "Absolutely everything\n";
36echo 'Even with single quotes';
37?>
38--EXPECTF--
39Fatal error: Uncaught ArgumentCountError: rand() expects exactly 2 arguments, 1 given in %s/tests/harden_rand_php8/harden_rand_noargs.php:5
40Stack trace:
41#0 %s/tests/harden_rand_php8/harden_rand_noargs.php(5): rand(1)
42#1 {main}
43 thrown in %s/tests/harden_rand_php8/harden_rand_noargs.php on line 5