public function testGetRepositoryInfoKeysReturnsContentOfStaticArray()
 {
     $this->assertSame($this->getStaticAttribute('\\Dkd\\PhpCmis\\Bindings\\Browser\\JSONConstants', 'REPOSITORY_INFO_KEYS'), JSONConstants::getRepositoryInfoKeys());
 }
 /**
  * @param RepositoryInfoBrowserBinding $object
  * @param array $data
  * @return RepositoryInfoBrowserBinding
  */
 protected function setRepositoryInfoValues(RepositoryInfoBrowserBinding $object, $data)
 {
     if (isset($data[JSONConstants::JSON_REPINFO_CAPABILITIES]) && is_array($data[JSONConstants::JSON_REPINFO_CAPABILITIES])) {
         $repositoryCapabilities = $this->convertRepositoryCapabilities($data[JSONConstants::JSON_REPINFO_CAPABILITIES]);
         if ($repositoryCapabilities !== null) {
             $data[JSONConstants::JSON_REPINFO_CAPABILITIES] = $repositoryCapabilities;
         } else {
             unset($data[JSONConstants::JSON_REPINFO_CAPABILITIES]);
         }
     }
     if (isset($data[JSONConstants::JSON_REPINFO_ACL_CAPABILITIES]) && is_array($data[JSONConstants::JSON_REPINFO_ACL_CAPABILITIES])) {
         $aclCapabilities = $this->convertAclCapabilities($data[JSONConstants::JSON_REPINFO_ACL_CAPABILITIES]);
         if ($aclCapabilities !== null) {
             $data[JSONConstants::JSON_REPINFO_ACL_CAPABILITIES] = $aclCapabilities;
         } else {
             unset($data[JSONConstants::JSON_REPINFO_ACL_CAPABILITIES]);
         }
     }
     if (isset($data[JSONConstants::JSON_REPINFO_CHANGES_ON_TYPE]) && is_array($data[JSONConstants::JSON_REPINFO_CHANGES_ON_TYPE])) {
         $types = array();
         foreach ($data[JSONConstants::JSON_REPINFO_CHANGES_ON_TYPE] as $type) {
             if (!empty($type)) {
                 $types[] = BaseTypeId::cast($type);
             }
         }
         $data[JSONConstants::JSON_REPINFO_CHANGES_ON_TYPE] = $types;
     }
     if (isset($data[JSONConstants::JSON_REPINFO_EXTENDED_FEATURES]) && is_array($data[JSONConstants::JSON_REPINFO_EXTENDED_FEATURES])) {
         $data[JSONConstants::JSON_REPINFO_EXTENDED_FEATURES] = $this->convertExtensionFeatures($data[JSONConstants::JSON_REPINFO_EXTENDED_FEATURES]);
     }
     if (isset($data[JSONConstants::JSON_REPINFO_CMIS_VERSION_SUPPORTED])) {
         $data[JSONConstants::JSON_REPINFO_CMIS_VERSION_SUPPORTED] = CmisVersion::cast($data[JSONConstants::JSON_REPINFO_CMIS_VERSION_SUPPORTED]);
     }
     $object->setExtensions($this->convertExtension($data, JSONConstants::getRepositoryInfoKeys()));
     $object->populate($data, array_merge(array_combine(JSONConstants::getRepositoryInfoKeys(), JSONConstants::getRepositoryInfoKeys()), array(JSONConstants::JSON_REPINFO_DESCRIPTION => 'description', JSONConstants::JSON_REPINFO_CMIS_VERSION_SUPPORTED => 'cmisVersion', JSONConstants::JSON_REPINFO_ID => 'id', JSONConstants::JSON_REPINFO_ROOT_FOLDER_URL => 'rootUrl', JSONConstants::JSON_REPINFO_NAME => 'name', JSONConstants::JSON_REPINFO_EXTENDED_FEATURES => 'extensionFeatures')), true);
     return $object;
 }