summaryrefslogtreecommitdiff
path: root/Zend/tests/enum/no-implement-serializable-indirect.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'Zend/tests/enum/no-implement-serializable-indirect.phpt')
-rw-r--r--Zend/tests/enum/no-implement-serializable-indirect.phpt24
1 files changed, 24 insertions, 0 deletions
diff --git a/Zend/tests/enum/no-implement-serializable-indirect.phpt b/Zend/tests/enum/no-implement-serializable-indirect.phpt
new file mode 100644
index 0000000000..5e7bdc9338
--- /dev/null
+++ b/Zend/tests/enum/no-implement-serializable-indirect.phpt
@@ -0,0 +1,24 @@
+--TEST--
+Enum must not implement Serializable indirectly
+--FILE--
+<?php
+
+interface MySerializable extends Serializable {}
+
+enum Foo implements MySerializable {
+ case Bar;
+
+ public function serialize() {
+ return serialize('Hello');
+ }
+
+ public function unserialize($data) {
+ return unserialize($data);
+ }
+}
+
+var_dump(unserialize(serialize(Foo::Bar)));
+
+?>
+--EXPECTF--
+Fatal error: Enums may not implement the Serializable interface in %s on line %d