aboutsummaryrefslogtreecommitdiffhomepage
path: root/php/tests
diff options
context:
space:
mode:
authorGravatar Bo Yang <teboring@google.com>2017-12-05 16:44:19 -0800
committerGravatar Bo Yang <teboring@google.com>2017-12-06 10:38:18 -0800
commit3b7a5f451546888ad96aaa143ef86fea904a03ec (patch)
treeb0ed22f963a6caaf360424bcdf14f078f051d312 /php/tests
parent7d3437152ad420d4382b883f0a52a86526166ef5 (diff)
Fix several more memory leak
Diffstat (limited to 'php/tests')
-rw-r--r--php/tests/memory_leak_test.php23
1 files changed, 21 insertions, 2 deletions
diff --git a/php/tests/memory_leak_test.php b/php/tests/memory_leak_test.php
index 772b466f..29ca7787 100644
--- a/php/tests/memory_leak_test.php
+++ b/php/tests/memory_leak_test.php
@@ -106,15 +106,34 @@ $m->mergeFromString(hex2bin('F80601'));
assert('F80601', bin2hex($m->serializeToString()));
// Test create repeated field via array.
-$str_arr = array();
+$str_arr = array("abc");
$m = new TestMessage();
$m->setRepeatedString($str_arr);
// Test create map field via array.
-$str_arr = array();
+$str_arr = array("abc"=>"abc");
$m = new TestMessage();
$m->setMapStringString($str_arr);
+// Test unset
+$from = new TestMessage();
+TestUtil::setTestMessage($from);
+unset($from);
+
+// Test wellknown
+$from = new \Google\Protobuf\Timestamp();
+$from->setSeconds(1);
+assert(1, $from->getSeconds());
+
+$from = new \Google\Protobuf\Value();
+$from->setNumberValue(1);
+assert(1, $from->getNumberValue());
+
+// Test descriptor
+$pool = \Google\Protobuf\DescriptorPool::getGeneratedPool();
+$desc = $pool->getDescriptorByClassName("\Foo\TestMessage");
+$field = $desc->getField(1);
+
# $from = new TestMessage();
# $to = new TestMessage();
# TestUtil::setTestMessage($from);