Make assertEquals pass for message (#4947)

This change only makes assertEquals pass for message in c extension. However, it actually does nothing.
This is the same behavior before 3.6.0 release.
pull/4949/head
Paul Yang 7 years ago committed by GitHub
parent d85ffdce41
commit fc90fd6df1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 8
      php/ext/google/protobuf/message.c
  2. 13
      php/tests/generated_class_test.php

@ -222,13 +222,7 @@ static zval* message_get_property_ptr_ptr(zval* object, zval* member, int type,
}
static HashTable* message_get_properties(zval* object TSRMLS_DC) {
// User cannot get property directly (e.g., $a = $m->a)
zend_error(E_USER_ERROR, "Cannot access private properties.");
#if PHP_MAJOR_VERSION < 7
return zend_std_get_properties(object TSRMLS_CC);
#else
return zend_std_get_properties(object);
#endif
return NULL;
}
static HashTable* message_get_gc(zval* object, CACHED_VALUE** table,

@ -1342,4 +1342,17 @@ class GeneratedClassTest extends TestBase
TestUtil::assertTestMessage($m);
}
#########################################################
# Test message equals.
#########################################################
public function testMessageEquals()
{
$m = new TestMessage();
TestUtil::setTestMessage($m);
$n = new TestMessage();
TestUtil::setTestMessage($n);
$this->assertEquals($m, $n);
}
}

Loading…
Cancel
Save