public function assertObjectEqualsEntity($object, $entity, $adapter = null)
{
if (empty($adapter)) {
$classParts = preg_split('/\\\\/', get_class($entity));
$adapter = $this->getAdapter(lcfirst(array_pop($classParts)));
} else {
if (is_string($adapter)) {
$adapter = $this->getAdapter($adapter);
}
}
/* @var $adapter ApiEntityAdapter */
if ($adapter instanceof GlobalVariableAdapter) {
$data = (object) $adapter->convertData($entity);
} else {
$data = $adapter->toData($entity);
}
foreach ($object as $property => $value) {
$this->assertObjectHasAttribute($property, $data);
$this->assertEquals(json_decode(json_encode($data->{$property})), json_decode(json_encode($value)), $property);
}
}