public function testConvertRepositoryCapabilitiesConvertsArrayToRepositoryCapabilitiesObject()
 {
     $expectedCapabilities = new RepositoryCapabilities();
     $expectedCapabilities->setSupportsUnfiling(true);
     $expectedCapabilities->setSupportsPwcUpdatable(true);
     $expectedCapabilities->setSupportsMultifiling(true);
     $expectedCapabilities->setSupportsGetFolderTree(true);
     $expectedCapabilities->setSupportsGetDescendants(true);
     $expectedCapabilities->setAclCapability(CapabilityAcl::cast(CapabilityAcl::MANAGE));
     $expectedCapabilities->setChangesCapability(CapabilityChanges::cast(CapabilityChanges::PROPERTIES));
     $expectedCapabilities->setContentStreamUpdatesCapability(CapabilityContentStreamUpdates::cast(CapabilityContentStreamUpdates::ANYTIME));
     $creatablePropertyTypes = new CreatablePropertyTypes();
     $creatablePropertyTypes->setCanCreate(array(PropertyType::cast(PropertyType::DATETIME), PropertyType::cast(PropertyType::ID), PropertyType::cast(PropertyType::HTML)));
     $creatablePropertyTypes->setExtensions($this->cmisExtensionsDummy);
     $expectedCapabilities->setCreatablePropertyTypes($creatablePropertyTypes);
     $expectedCapabilities->setQueryCapability(CapabilityQuery::cast(CapabilityQuery::BOTHCOMBINED));
     $newTypeSettableAttributes = new NewTypeSettableAttributes();
     $newTypeSettableAttributes->setCanSetId(true);
     $newTypeSettableAttributes->setExtensions($this->cmisExtensionsDummy);
     $expectedCapabilities->setNewTypeSettableAttributes($newTypeSettableAttributes);
     $expectedCapabilities->setJoinCapability(CapabilityJoin::cast(CapabilityJoin::NONE));
     $expectedCapabilities->setRenditionsCapability(CapabilityRenditions::cast(CapabilityRenditions::NONE));
     $expectedCapabilities->setOrderByCapability(CapabilityOrderBy::cast(CapabilityOrderBy::NONE));
     $expectedCapabilities->setExtensions($this->cmisExtensionsDummy);
     $repositoryInfoArray = current($this->getResponseFixtureContentAsArray('Cmis/v1.1/BrowserBinding/getRepositoryInfo-full-response.log'));
     $result = $this->jsonConverter->convertRepositoryCapabilities($repositoryInfoArray[JSONConstants::JSON_REPINFO_CAPABILITIES]);
     $this->assertEquals($expectedCapabilities, $result);
     return $result;
 }
Exemplo n.º 2
0
 /**
  * Create NewTypeSettableAttributes object and populate given data to it
  *
  * @param string[]|null $data
  * @return NewTypeSettableAttributes|null Returns object or <code>null</code> if given data is empty
  */
 public function convertNewTypeSettableAttributes(array $data = null)
 {
     if (empty($data)) {
         return null;
     }
     $object = new NewTypeSettableAttributes();
     $object->populate($data, array_combine(JSONConstants::getCapabilityNewTypeSettableAttributeKeys(), array_map(function ($key) {
         // add a prefix "canSet" to all keys as this are the property names
         return 'canSet' . ucfirst($key);
     }, JSONConstants::getCapabilityNewTypeSettableAttributeKeys())), true);
     $object->setExtensions($this->convertExtension($data, JSONConstants::getCapabilityNewTypeSettableAttributeKeys()));
     return $object;
 }