- fix HttpQueryString failures with objects as argument
[m6w6/ext-http] / tests / HttpQueryString_004.phpt
diff --git a/tests/HttpQueryString_004.phpt b/tests/HttpQueryString_004.phpt
new file mode 100644 (file)
index 0000000..cf70e66
--- /dev/null
@@ -0,0 +1,44 @@
+--TEST--
+HttpQueryString w/ objects
+--SKIPIF--
+<?php
+include 'skip.inc';
+checkmin(5);
+?>
+--FILE--
+<?php
+echo "-TEST\n";
+$foo = (object) array("bar" => (object) array("baz" => 1), "\0*\0prop" => "dontshow");
+$foo->bar->baz = 1;
+var_dump($q = new HttpQueryString(false, $foo));
+$foo->bar->baz = 0;
+var_dump($q->mod($foo));
+echo "Done\n";
+?>
+--EXPECTF--
+%sTEST
+object(HttpQueryString)#3 (2) {
+  ["queryArray:private"]=>
+  array(1) {
+    ["bar"]=>
+    array(1) {
+      ["baz"]=>
+      int(1)
+    }
+  }
+  ["queryString:private"]=>
+  string(14) "bar%5Bbaz%5D=1"
+}
+object(HttpQueryString)#4 (2) {
+  ["queryArray:private"]=>
+  array(1) {
+    ["bar"]=>
+    array(1) {
+      ["baz"]=>
+      int(0)
+    }
+  }
+  ["queryString:private"]=>
+  string(14) "bar%5Bbaz%5D=0"
+}
+Done