From ccfaf3e4713b1878241f1235a6fcb66ad0582d47 Mon Sep 17 00:00:00 2001 From: jvoisin Date: Wed, 7 Dec 2022 21:02:22 +0100 Subject: Add unserialize_noclass --- .../unserialize/config/config_serialize_noclass.ini | 1 + .../unserialize/unserialize_noclass_forced.phpt | 21 +++++++++++++++++++++ src/tests/unserialize/unserialize_wrong_call.phpt | 2 +- 3 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 src/tests/unserialize/config/config_serialize_noclass.ini create mode 100644 src/tests/unserialize/unserialize_noclass_forced.phpt (limited to 'src/tests/unserialize') diff --git a/src/tests/unserialize/config/config_serialize_noclass.ini b/src/tests/unserialize/config/config_serialize_noclass.ini new file mode 100644 index 0000000..b84de51 --- /dev/null +++ b/src/tests/unserialize/config/config_serialize_noclass.ini @@ -0,0 +1 @@ +sp.unserialize_noclass.enable(); diff --git a/src/tests/unserialize/unserialize_noclass_forced.phpt b/src/tests/unserialize/unserialize_noclass_forced.phpt new file mode 100644 index 0000000..3b1e8d3 --- /dev/null +++ b/src/tests/unserialize/unserialize_noclass_forced.phpt @@ -0,0 +1,21 @@ +--TEST-- +Unserialize with noclass forced +--SKIPIF-- += 80000) print "skip"; ?> +--INI-- +sp.configuration_file={PWD}/config/config_serialize_noclass.ini +--FILE-- +name = "test"; + +$a = serialize($c); +var_dump(unserialize($a, ['allowed_classes' => false])); +var_dump(unserialize($a, ['allowed_classes' => true ])); +var_dump(unserialize($a)); +?> +--EXPECTF-- +Fatal error: [snuffleupagus][0.0.0.0][unserialize_noclass][drop] unserialize_noclass is only supported on PHP8+ in %s/tests/unserialize/unserialize_noclass_forced.php on line 9 diff --git a/src/tests/unserialize/unserialize_wrong_call.phpt b/src/tests/unserialize/unserialize_wrong_call.phpt index a6fe140..afa42f6 100644 --- a/src/tests/unserialize/unserialize_wrong_call.phpt +++ b/src/tests/unserialize/unserialize_wrong_call.phpt @@ -12,4 +12,4 @@ var_dump(unserialize($a, "too", "many", "aaaaaaaarguments!")); ?> --EXPECTF-- Warning: unserialize() expects at most 2 parameters, 4 given in %a/unserialize_wrong_call.php on line %d -bool(false) +NULL -- cgit v1.3