summaryrefslogtreecommitdiff
path: root/ext/standard/tests/serialize/serialization_objects_010.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'ext/standard/tests/serialize/serialization_objects_010.phpt')
-rw-r--r--ext/standard/tests/serialize/serialization_objects_010.phpt37
1 files changed, 37 insertions, 0 deletions
diff --git a/ext/standard/tests/serialize/serialization_objects_010.phpt b/ext/standard/tests/serialize/serialization_objects_010.phpt
new file mode 100644
index 0000000..0fbf072
--- /dev/null
+++ b/ext/standard/tests/serialize/serialization_objects_010.phpt
@@ -0,0 +1,37 @@
+--TEST--
+Serialize() must return a string or NULL
+--SKIPIF--
+<?php if (!interface_exists('Serializable')) die('skip Interface Serialzable not defined'); ?>
+--FILE--
+<?php
+/* Prototype : proto string serialize(mixed variable)
+ * Description: Returns a string representation of variable (which can later be unserialized)
+ * Source code: ext/standard/var.c
+ * Alias to functions:
+ */
+/* Prototype : proto mixed unserialize(string variable_representation)
+ * Description: Takes a string representation of variable and recreates it
+ * Source code: ext/standard/var.c
+ * Alias to functions:
+ */
+
+Class C implements Serializable {
+ public function serialize() {
+ return $this;
+ }
+
+ public function unserialize($blah) {
+ }
+}
+
+try {
+ var_dump(serialize(new C));
+} catch (Exception $e) {
+ echo $e->getMessage(). "\n";
+}
+
+echo "Done";
+?>
+--EXPECTF--
+C::serialize() must return a string or NULL
+Done \ No newline at end of file