41 'TYPO3\\CMS\\Core\\Resource\\FileRepository',
42 $this->getMock(
'TYPO3\\CMS\\Core\\Resource\\FileRepository')
44 $databaseMock = $this->getMock(
'TYPO3\\CMS\Core\\Database\\DatabaseConnection');
45 $databaseMock->expects($this->any())->method(
'exec_SELECTgetRows')->with(
'*',
'sys_file_storage',
'1=1',
'',
'name',
'',
'uid')->willReturn(array());
46 $GLOBALS[
'TYPO3_DB'] = $databaseMock;
61 protected function prepareFixture($configuration, $mockPermissionChecks = FALSE, $driverObject = NULL, array $storageRecord = array()) {
62 $permissionMethods = array(
'assureFileAddPermissions',
'checkFolderActionPermission',
'checkFileActionPermission',
'checkUserActionPermission',
'checkFileExtensionPermission',
'isWithinFileMountBoundaries');
63 $mockedMethods = array();
65 $overruleArray = array(
'configuration' => $configuration);
67 if ($driverObject == NULL) {
69 $driverObject = $this->getMockForAbstractClass(
'TYPO3\\CMS\\Core\\Resource\\Driver\\AbstractDriver', array(),
'', FALSE);
71 if ($mockPermissionChecks) {
72 $mockedMethods = $permissionMethods;
74 $mockedMethods[] =
'getIndexer';
76 $this->fixture = $this->getMock(
'TYPO3\\CMS\\Core\\Resource\\ResourceStorage', $mockedMethods, array($driverObject, $storageRecord));
77 $this->fixture->expects($this->any())->method(
'getIndexer')->will($this->returnValue($this->getMock(
'TYPO3\CMS\Core\Resource\Index\Indexer', array(), array(),
'', FALSE)));
78 foreach ($permissionMethods as $method) {
79 $this->fixture->expects($this->any())->method($method)->will($this->returnValue(TRUE));
91 $flexformArray = array(
'data' => array(
'sDEF' => array(
'lDEF' => array())));
92 foreach ($configuration as $key => $value) {
93 $flexformArray[
'data'][
'sDEF'][
'lDEF'][$key] = array(
'vDEF' => $value);
96 return $configuration;
112 if (!isset($driverConfiguration[
'basePath'])) {
116 if ($mockedDriverMethods === NULL) {
117 $driver = new \TYPO3\CMS\Core\Resource\Driver\LocalDriver($driverConfiguration);
121 $driver = $this->getMock(
'TYPO3\\CMS\\Core\\Resource\\Driver\\LocalDriver', $mockedDriverMethods, array($driverConfiguration));
123 if ($storageObject !== NULL) {
124 $storageObject->setDriver(
$driver);
127 $driver->processConfiguration();
137 'Permissions evaluated, extension not in allowed list' => array(
138 'fileName' =>
'foo.txt',
139 'configuration' => array(
'allow' =>
'jpg'),
140 'evaluatePermissions' => TRUE,
143 'Permissions evaluated, extension in deny list' => array(
144 'fileName' =>
'foo.txt',
145 'configuration' => array(
'deny' =>
'txt'),
146 'evaluatePermissions' => TRUE,
147 'isAllowed' => FALSE,
149 'Permissions not evaluated, extension is php' => array(
150 'fileName' =>
'foo.php',
151 'configuration' => array(),
152 'evaluatePermissions' => FALSE,
153 'isAllowed' => FALSE,
155 'Permissions evaluated, extension is php' => array(
156 'fileName' =>
'foo.php',
158 'configuration' => array(
'allow' =>
'php'),
159 'evaluatePermissions' => TRUE,
160 'isAllowed' => FALSE,
174 $GLOBALS[
'TYPO3_CONF_VARS'][
'BE'][
'fileExtensions'][
'webspace'] = $configuration;
175 $driverMock = $this->getMockForAbstractClass(
'TYPO3\\CMS\\Core\\Resource\\Driver\\AbstractDriver', array(),
'',
false);
176 $subject = $this->
getAccessibleMock(
'TYPO3\\CMS\\Core\\Resource\\ResourceStorage', array(
'dummy'), array($driverMock, array()));
177 $subject->_set(
'evaluatePermissions', $evaluatePermissions);
178 $this->assertSame($isAllowed, $subject->_call(
'checkFileExtensionPermission', $fileName));
186 'Access to file in ro file mount denied for write request' => array(
187 '$fileIdentifier' =>
'/fooBaz/bar.txt',
188 '$fileMountFolderIdentifier' =>
'/fooBaz/',
189 '$isFileMountReadOnly' => TRUE,
190 '$checkWriteAccess' => TRUE,
191 '$expectedResult' => FALSE,
193 'Access to file in ro file mount allowed for read request' => array(
194 '$fileIdentifier' =>
'/fooBaz/bar.txt',
195 '$fileMountFolderIdentifier' =>
'/fooBaz/',
196 '$isFileMountReadOnly' => TRUE,
197 '$checkWriteAccess' => FALSE,
198 '$expectedResult' => TRUE,
200 'Access to file in rw file mount allowed for write request' => array(
201 '$fileIdentifier' =>
'/fooBaz/bar.txt',
202 '$fileMountFolderIdentifier' =>
'/fooBaz/',
203 '$isFileMountReadOnly' => FALSE,
204 '$checkWriteAccess' => TRUE,
205 '$expectedResult' => TRUE,
207 'Access to file in rw file mount allowed for read request' => array(
208 '$fileIdentifier' =>
'/fooBaz/bar.txt',
209 '$fileMountFolderIdentifier' =>
'/fooBaz/',
210 '$isFileMountReadOnly' => FALSE,
211 '$checkWriteAccess' => FALSE,
212 '$expectedResult' => TRUE,
214 'Access to file not in file mount denied for write request' => array(
215 '$fileIdentifier' =>
'/fooBaz/bar.txt',
216 '$fileMountFolderIdentifier' =>
'/barBaz/',
217 '$isFileMountReadOnly' => FALSE,
218 '$checkWriteAccess' => TRUE,
219 '$expectedResult' => FALSE,
221 'Access to file not in file mount denied for read request' => array(
222 '$fileIdentifier' =>
'/fooBaz/bar.txt',
223 '$fileMountFolderIdentifier' =>
'/barBaz/',
224 '$isFileMountReadOnly' => FALSE,
225 '$checkWriteAccess' => FALSE,
226 '$expectedResult' => FALSE,
241 public function isWithinFileMountBoundariesRespectsReadOnlyFileMounts($fileIdentifier, $fileMountFolderIdentifier, $isFileMountReadOnly, $checkWriteAccess, $expectedResult) {
243 $driverMock = $this->getMockForAbstractClass(
'TYPO3\\CMS\\Core\\Resource\\Driver\\AbstractDriver', array(),
'', FALSE);
244 $driverMock->expects($this->any())
245 ->method(
'getFolderInfoByIdentifier')
246 ->willReturnCallback(
function($identifier) use ($isFileMountReadOnly) {
248 'identifier' => $identifier,
249 'name' => trim($identifier,
'/'),
252 $driverMock->expects($this->any())
254 ->willReturnCallback(
function($folderIdentifier, $fileIdentifier) {
258 return strpos($fileIdentifier, $folderIdentifier) === 0;
261 $this->prepareFixture(array(), FALSE, $driverMock);
263 $this->fixture->setEvaluatePermissions(TRUE);
264 $this->fixture->addFileMount(
'/' . $this->
getUniqueId(
'random') .
'/', array(
'read_only' => FALSE));
265 $this->fixture->addFileMount($fileMountFolderIdentifier, array(
'read_only' => $isFileMountReadOnly));
266 $this->fixture->addFileMount(
'/' . $this->
getUniqueId(
'random') .
'/', array(
'read_only' => FALSE));
267 $this->assertSame($expectedResult, $this->fixture->isWithinFileMountBoundaries($fileMock, $checkWriteAccess));
275 'only public' => array(
282 'only writable' => array(
289 'only browsable' => array(
296 'all capabilities' => array(
319 $this->markTestSkipped(
'This test does way to much and is mocked incomplete. Skipped for now.');
320 $storageRecord = array(
321 'is_public' => $capabilities[
'public'],
322 'is_writable' => $capabilities[
'writable'],
323 'is_browsable' => $capabilities[
'browsable'],
328 'pathType' =>
'relative',
329 'basePath' =>
'fileadmin/',
334 $this->prepareFixture(array(), FALSE, $mockedDriver, $storageRecord);
335 $this->assertEquals($capabilities[
'public'], $this->fixture->isPublic(),
'Capability "public" is not correctly set.');
336 $this->assertEquals($capabilities[
'writable'], $this->fixture->isWritable(),
'Capability "writable" is not correctly set.');
337 $this->assertEquals($capabilities[
'browsable'], $this->fixture->isBrowsable(),
'Capability "browsable" is not correctly set.');
345 $this->markTestSkipped(
'This test does way to much and is mocked incomplete. Skipped for now.');
346 $this->prepareFixture(array());
347 $this->assertEquals(
$GLOBALS[
'TYPO3_CONF_VARS'][
'SYS'][
'fal'][
'defaultFilterCallbacks'], $this->fixture->getFileAndFolderNameFilters());
354 $mockedFolder = $this->getMock(
'TYPO3\\CMS\\Core\\Resource\\Folder', array(), array(),
'', FALSE);
355 $this->setExpectedException(
'InvalidArgumentException',
'', 1319552745);
356 $this->prepareFixture(array());
357 $this->fixture->addFile(
'/some/random/file', $mockedFolder);
363 public function getPublicUrlReturnsNullIfStorageIsNotOnline() {
365 $driver = $this->getMock(
'TYPO3\\CMS\\Core\\Resource\\Driver\\LocalDriver', array(), array(array(
'basePath' => $this->
getMountRootUrl())));
367 $fixture = $this->getMock(
'TYPO3\\CMS\\Core\\Resource\\ResourceStorage', array(
'isOnline'), array(
$driver, array(
'configuration' => array())));
368 $fixture->expects($this->once())->method(
'isOnline')->will($this->returnValue(FALSE));
370 $sourceFileIdentifier =
'/sourceFile.ext';
373 $this->assertSame(
$result, NULL);
383 'read action on readable/writable folder' => array(
385 array(
'r' => TRUE,
'w' => TRUE),
388 'read action on unreadable folder' => array(
390 array(
'r' => FALSE,
'w' => TRUE),
393 'write action on read-only folder' => array(
395 array(
'r' => TRUE,
'w' => FALSE),
408 public function checkFolderPermissionsRespectsFilesystemPermissions($action, $permissionsFromDriver, $expectedResult) {
409 $mockedDriver = $this->getMock(
'TYPO3\\CMS\\Core\\Resource\\Driver\\LocalDriver');
410 $mockedDriver->expects($this->any())->method(
'getPermissions')->will($this->returnValue($permissionsFromDriver));
411 $mockedFolder = $this->getMock(
'TYPO3\\CMS\\Core\\Resource\\Folder', array(), array(),
'', FALSE);
414 $fixture = $this->getMock(
'TYPO3\\CMS\\Core\\Resource\\ResourceStorage', array(
'isWritable',
'isBrowsable',
'checkUserActionPermission'), array($mockedDriver, array()),
'', FALSE);
415 $fixture->expects($this->any())->method(
'isWritable')->will($this->returnValue(TRUE));
416 $fixture->expects($this->any())->method(
'isBrowsable')->will($this->returnValue(TRUE));
417 $fixture->expects($this->any())->method(
'checkUserActionPermission')->will($this->returnValue(TRUE));
420 $this->assertSame($expectedResult,
$fixture->checkFolderActionPermission($action, $mockedFolder));
427 $this->prepareFixture(array());
428 $this->assertTrue($this->fixture->checkUserActionPermission(
'read',
'folder'));
435 $this->prepareFixture(array());
436 $this->fixture->setUserPermissions(array(
'readFolder' => TRUE,
'writeFile' => TRUE));
437 $this->assertTrue($this->fixture->checkUserActionPermission(
'read',
'folder'));
442 'all lower cased' => array(
443 array(
'readFolder' => TRUE),
447 'all upper case' => array(
448 array(
'readFolder' => TRUE),
452 'mixed case' => array(
453 array(
'readFolder' => TRUE),
465 $this->prepareFixture(array());
466 $this->fixture->setUserPermissions($permissions);
467 $this->assertTrue($this->fixture->checkUserActionPermission($action, $type));
474 $this->prepareFixture(array());
475 $this->fixture->setEvaluatePermissions(TRUE);
476 $this->fixture->setUserPermissions(array(
'readFolder' => FALSE));
477 $this->assertFalse($this->fixture->checkUserActionPermission(
'read',
'folder'));
484 $this->prepareFixture(array());
485 $this->fixture->setEvaluatePermissions(TRUE);
486 $this->fixture->setUserPermissions(array(
'readFolder' => TRUE));
487 $this->assertFalse($this->fixture->checkUserActionPermission(
'write',
'folder'));
494 $this->prepareFixture(array());
495 $this->fixture->setEvaluatePermissions(FALSE);
496 $this->assertFalse($this->fixture->getEvaluatePermissions());
503 $this->prepareFixture(array());
504 $this->fixture->setEvaluatePermissions(TRUE);
505 $this->assertTrue($this->fixture->getEvaluatePermissions());
514 $this->markTestSkipped(
'This test does way to much and is mocked incomplete. Skipped for now.');
516 $driverObject = $this->getMockForAbstractClass(
'TYPO3\\CMS\\Core\\Resource\\Driver\\AbstractDriver', array(),
'', FALSE);
517 $this->fixture = $this->getMock(
'TYPO3\\CMS\\Core\\Resource\\ResourceStorage', array(
'getFileIndexRepository',
'checkFileActionPermission'), array($driverObject, array()));
518 $this->fixture->expects($this->any())->method(
'checkFileActionPermission')->will($this->returnValue(TRUE));
528 $newProperties = array(
529 'storage' => $fileInfo[
'storage'],
530 'identifier' => $fileInfo[
'identifier'],
531 'tstamp' => $fileInfo[
'mtime'],
532 'crdate' => $fileInfo[
'ctime'],
533 'mime_type' => $fileInfo[
'mimetype'],
534 'size' => $fileInfo[
'size'],
535 'name' => $fileInfo[
'name']
538 $driver = $this->getMock(
'TYPO3\\CMS\\Core\\Resource\\Driver\\LocalDriver', array(), array(array(
'basePath' => $this->
getMountRootUrl())));
539 $driver->expects($this->once())->method(
'getFileInfoByIdentifier')->will($this->returnValue($fileInfo));
540 $driver->expects($this->once())->method(
'hash')->will($this->returnValue($hash));
541 $this->fixture->setDriver(
$driver);
542 $indexFileRepositoryMock = $this->getMock(
'TYPO3\\CMS\\Core\\Resource\\Index\\FileIndexRepository');
543 $this->fixture->expects($this->any())->method(
'getFileIndexRepository')->will($this->returnValue($indexFileRepositoryMock));
544 $mockedFile = $this->getMock(
'TYPO3\\CMS\\Core\\Resource\\File', array(), array(),
'', FALSE);
545 $mockedFile->expects($this->any())->method(
'getIdentifier')->will($this->returnValue($fileInfo[
'identifier']));
547 $this->fixture->expects($this->any())->method(
'getFileInfoByIdentifier')->will($this->returnValue($newProperties));
548 $mockedFile->expects($this->any())->method(
'getStorage')->will($this->returnValue($this->fixture));
549 $mockedFile->expects($this->any())->method(
'getProperties')->will($this->returnValue(array_keys($fileInfo)));
550 $mockedFile->expects($this->any())->method(
'getUpdatedProperties')->will($this->returnValue(array_keys($newProperties)));
552 $indexFileRepositoryMock->expects($this->never())->method(
'update');
553 $this->fixture->setFileContents($mockedFile, $this->
getUniqueId());
561 public function moveFileCallsDriversMethodsWithCorrectArguments() {
562 $this->markTestSkipped(
'This test does way to much and is mocked incomplete. Skipped for now.');
563 $localFilePath =
'/path/to/localFile';
564 $sourceFileIdentifier =
'/sourceFile.ext';
565 $fileInfoDummy = array(
575 'targetFolder' => array()
579 $sourceDriver = $this->getMock(
'TYPO3\\CMS\\Core\\Resource\\Driver\\LocalDriver');
580 $sourceDriver->expects($this->once())->method(
'deleteFile')->with($this->equalTo($sourceFileIdentifier));
582 $sourceStorage = new \TYPO3\CMS\Core\Resource\ResourceStorage($sourceDriver, array(
'configuration' => $configuration));
584 $sourceFile->expects($this->once())->method(
'getForLocalProcessing')->will($this->returnValue($localFilePath));
585 $sourceFile->expects($this->any())->method(
'getStorage')->will($this->returnValue($sourceStorage));
586 $sourceFile->expects($this->once())->method(
'getUpdatedProperties')->will($this->returnValue(array_keys($fileInfoDummy)));
587 $sourceFile->expects($this->once())->method(
'getProperties')->will($this->returnValue($fileInfoDummy));
589 $driver = $this->getMock(
'TYPO3\\CMS\\Core\\Resource\\Driver\\LocalDriver', array(), array(array(
'basePath' => $this->
getMountRootUrl())));
590 $driver->expects($this->once())->method(
'getFileInfoByIdentifier')->will($this->returnValue($fileInfoDummy));
591 $driver->expects($this->once())->method(
'addFile')->with($localFilePath,
'/targetFolder/', $this->equalTo(
'file.ext'))->will($this->returnValue(
'/targetFolder/file.ext'));
593 $fixture = $this->getMock(
'TYPO3\\CMS\\Core\\Resource\\ResourceStorage', array(
'assureFileMovePermissions'), array(
$driver, array(
'configuration' => $configuration)));
594 $fixture->moveFile($sourceFile, $targetFolder,
'file.ext');
603 $this->markTestSkipped(
'This test does way to much and is mocked incomplete. Skipped for now.');
606 'mountFolder' => array(
612 $this->prepareFixture(array(), NULL, $mockedDriver);
613 $this->fixture->addFileMount(
'/mountFolder');
614 $this->assertEquals(1, count($this->fixture->getFileMounts()));
615 $this->fixture->isWithinFileMountBoundaries($mockedFile);
624 $this->markTestSkipped(
'This test does way to much and is mocked incomplete. Skipped for now.');
627 $mockedDriver->expects($this->once())->method(
'folderExists')->with($this->equalTo(
'/someFolder/'))->will($this->returnValue(TRUE));
628 $mockedDriver->expects($this->once())->method(
'createFolder')->with($this->equalTo(
'newFolder'))->will($this->returnValue($mockedParentFolder));
629 $this->prepareFixture(array(), TRUE);
630 $this->fixture->setDriver($mockedDriver);
631 $this->fixture->createFolder(
'newFolder', $mockedParentFolder);
638 public function deleteFolderThrowsExceptionIfFolderIsNotEmptyAndRecursiveDeleteIsDisabled() {
640 $folderMock = $this->getMock(
'TYPO3\\CMS\\Core\\Resource\\Folder', array(), array(),
'', FALSE);
642 $driverMock = $this->getMockForAbstractClass(
'TYPO3\\CMS\\Core\\Resource\\Driver\\AbstractDriver');
643 $driverMock->expects($this->once())->method(
'isFolderEmpty')->will($this->returnValue(FALSE));
645 $fixture = $this->
getAccessibleMock(
'TYPO3\\CMS\\Core\\Resource\\ResourceStorage', array(
'checkFolderActionPermission'), array(),
'', FALSE);
646 $fixture->expects($this->any())->method(
'checkFolderActionPermission')->will($this->returnValue(TRUE));
647 $fixture->_set(
'driver', $driverMock);
648 $fixture->deleteFolder($folderMock, FALSE);
656 $this->markTestSkipped(
'This test does way to much and is mocked incomplete. Skipped for now.');
658 $this->prepareFixture(array(), TRUE);
660 $mockedDriver->expects($this->once())->method(
'createFolder')->with($this->equalTo(
'newFolder'), $this->equalTo(
'/someFolder/'))->will($this->returnValue(TRUE));
661 $mockedDriver->expects($this->once())->method(
'folderExists')->with($this->equalTo(
'/someFolder/'))->will($this->returnValue(TRUE));
662 $this->fixture->createFolder(
'newFolder', $mockedParentFolder);
670 $this->markTestSkipped(
'This test does way to much and is mocked incomplete. Skipped for now.');
671 $this->
addToMount(array(
'someFolder' => array()));
673 $this->prepareFixture(array(), TRUE, $mockedDriver);
674 $parentFolder = $this->fixture->getFolder(
'/someFolder/');
675 $newFolder = $this->fixture->createFolder(
'subFolder/secondSubfolder', $parentFolder);
676 $this->assertEquals(
'secondSubfolder', $newFolder->getName());
677 $this->assertFileExists($this->
getUrlInMount(
'/someFolder/subFolder/'));
678 $this->assertFileExists($this->
getUrlInMount(
'/someFolder/subFolder/secondSubfolder/'));
686 $this->markTestSkipped(
'This test does way to much and is mocked incomplete. Skipped for now.');
687 $this->prepareFixture(array(), TRUE);
689 $mockedDriver->expects($this->once())->method(
'getRootLevelFolder')->with()->will($this->returnValue(
'/'));
690 $mockedDriver->expects($this->once())->method(
'createFolder')->with($this->equalTo(
'someFolder'));
691 $this->fixture->createFolder(
'someFolder');
699 $this->markTestSkipped(
'This test does way to much and is mocked incomplete. Skipped for now.');
701 'existingFolder' => array()
705 $this->prepareFixture(array(), TRUE, $mockedDriver);
706 $rootFolder = $this->fixture->getFolder(
'/');
707 $newFolder = $this->fixture->createFolder(
'existingFolder/someFolder', $rootFolder);
708 $this->assertEquals(
'someFolder', $newFolder->getName());
709 $this->assertFileExists($this->
getUrlInMount(
'existingFolder/someFolder'));
716 $this->setExpectedException(
'InvalidArgumentException',
'', 1325689164);
718 $this->prepareFixture(array(), TRUE);
720 $mockedDriver->expects($this->once())->method(
'folderExists')->with($this->equalTo(
'/someFolder/'))->will($this->returnValue(FALSE));
721 $this->fixture->createFolder(
'newFolder', $mockedParentFolder);
728 $this->setExpectedException(
'InvalidArgumentException',
'', 1325842622);
729 $this->prepareFixture(array(), TRUE);
731 $this->fixture->replaceFile($mockedFile, PATH_site . $this->
getUniqueId());
739 $this->markTestSkipped(
'This test does way to much and is mocked incomplete. Skipped for now.');
742 $folderIdentifier => array()
744 $this->prepareFixture(array());
746 $role = $this->fixture->getRole($this->
getSimpleFolderMock(
'/' . $folderIdentifier .
'/'));
748 $this->assertSame(\
TYPO3\CMS\Core\Resource\FolderInterface::ROLE_DEFAULT, $role);
getSimpleFolderMock($identifier, $mockedMethods=array())
static getSingletonInstances()
static mergeRecursiveWithOverrule(array &$original, array $overrule, $addKeys=TRUE, $includeEmptyValues=TRUE, $enableUnsetFeature=TRUE)
const DEFAULT_ProcessingFolder
static setSingletonInstance($className, \TYPO3\CMS\Core\SingletonInterface $instance)
createFolderChecksIfParentFolderExistsBeforeCreatingFolder()
userActionIsDisallowedIfPermissionIsSetToFalse()
checkUserActionPermission_arbitraryPermissionDataProvider()
createFolderCanRecursivelyCreateFolders()
getSimpleFileMock($identifier, $mockedMethods=array())
setFileContentsUpdatesObjectProperties()
checkUserActionPermissionReturnsFalseIfPermissionIsSetToZero()
createFolderThrowsExceptionIfParentFolderDoesNotExist()
getEvaluatePermissionsWhenSetFalse()
fileExtensionPermissionDataProvider()
createDriverMock($driverConfiguration, \TYPO3\CMS\Core\Resource\ResourceStorage $storageObject=NULL, $mockedDriverMethods=array())
capabilitiesOfStorageObjectAreCorrectlySet(array $capabilities)
getRoleReturnsDefaultForRegularFolders()
createFolderCallsDriverForFolderCreation()
addToMount(array $dirStructure)
convertConfigurationArrayToFlexformXml(array $configuration)
fileExtensionPermissionIsWorkingCorrectly($fileName, array $configuration, $evaluatePermissions, $isAllowed)
static array2xml(array $array, $NSprefix='', $level=0, $docTag='phparray', $spaceInd=0, array $options=array(), array $stackData=array())
static resetSingletonInstances(array $newSingletonInstances)
checkUserActionPermissionAcceptsArbitrarilyCasedArguments($permissions, $action, $type)
replaceFileFailsIfLocalFileDoesNotExist()
isWithinFileMountBoundariesDataProvider()
getAccessibleMock( $originalClassName, array $methods=array(), array $arguments=array(), $mockClassName='', $callOriginalConstructor=TRUE, $callOriginalClone=TRUE, $callAutoload=TRUE)
if($list_of_literals) if(!empty($literals)) if(!empty($literals)) $result
Analyse literals to prepend the N char to them if their contents aren't numeric.
userActionIsDisallowedIfPermissionIsNotSet()
getEvaluatePermissionsWhenSetTrue()
createFolderCreatesNestedStructureEvenIfPartsAlreadyExist()
checkUserActionPermissionsAlwaysReturnsTrueIfNoUserPermissionsAreSet()
checkFolderPermissionsFilesystemPermissionsDataProvider()
fileAndFolderListFiltersAreInitializedWithDefaultFilters()
if(!defined('TYPO3_MODE')) $GLOBALS['TYPO3_CONF_VARS']['SC_OPTIONS']['t3lib/class.t3lib_userauth.php']['logoff_pre_processing'][]
createFolderUsesRootFolderAsParentFolderIfNotGiven()
capabilitiesDataProvider()
addFileFailsIfFileDoesNotExist()
storageUsesInjectedFilemountsToCheckForMountBoundaries()