/** * @test * @dataProvider capabilitiesDataProvider * @TODO: Rewrite or move to functional suite */ public function capabilitiesOfStorageObjectAreCorrectlySet(array $capabilities) { $this->markTestSkipped('This test does way to much and is mocked incomplete. Skipped for now.'); $storageRecord = array('is_public' => $capabilities['public'], 'is_writable' => $capabilities['writable'], 'is_browsable' => $capabilities['browsable'], 'is_online' => true); $mockedDriver = $this->createDriverMock(array('pathType' => 'relative', 'basePath' => 'fileadmin/'), $this->subject, null); $this->prepareSubject(array(), false, $mockedDriver, $storageRecord); $this->assertEquals($capabilities['public'], $this->subject->isPublic(), 'Capability "public" is not correctly set.'); $this->assertEquals($capabilities['writable'], $this->subject->isWritable(), 'Capability "writable" is not correctly set.'); $this->assertEquals($capabilities['browsable'], $this->subject->isBrowsable(), 'Capability "browsable" is not correctly set.'); }
/** * @test * @dataProvider capabilitiesDataProvider */ public function capabilitiesOfStorageObjectAreCorrectlySet(array $capabilites) { $storageRecord = array('is_public' => $capabilites['public'], 'is_writable' => $capabilites['writable'], 'is_browsable' => $capabilites['browsable'], 'is_online' => TRUE); $mockedDriver = $this->createDriverMock(array(), $this->fixture, array('hasCapability')); $mockedDriver->expects($this->any())->method('hasCapability')->will($this->returnValue(TRUE)); $this->prepareFixture(array(), FALSE, $mockedDriver, $storageRecord); $this->assertEquals($capabilites['public'], $this->fixture->isPublic(), 'Capability "public" is not correctly set.'); $this->assertEquals($capabilites['writable'], $this->fixture->isWritable(), 'Capability "writable" is not correctly set.'); $this->assertEquals($capabilites['browsable'], $this->fixture->isBrowsable(), 'Capability "browsable" is not correctly set.'); }
/** * Determines whether the passed storage object and record (sys_file_storage) can be * seen as equivalent during import. * * @param ResourceStorage $storageObject The storage object which should get compared * @param array $storageRecord The storage record which should get compared * @return bool Returns TRUE when both object storages can be seen as equivalent */ protected function isEquivalentObjectStorage(ResourceStorage $storageObject, array $storageRecord) { // compare the properties: driver, writable and online if ($storageObject->getDriverType() === $storageRecord['driver'] && (bool) $storageObject->isWritable() === (bool) $storageRecord['is_writable'] && (bool) $storageObject->isOnline() === (bool) $storageRecord['is_online']) { $storageRecordConfiguration = ResourceFactory::getInstance()->convertFlexFormDataToConfigurationArray($storageRecord['configuration']); $storageObjectConfiguration = $storageObject->getConfiguration(); // compare the properties: pathType and basePath if ($storageRecordConfiguration['pathType'] === $storageObjectConfiguration['pathType'] && $storageRecordConfiguration['basePath'] === $storageObjectConfiguration['basePath']) { return true; } } return false; }