You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
167 lines
4.6 KiB
167 lines
4.6 KiB
<?php
|
|
require_once(api_get_path(LIBRARY_PATH).'fileUpload.lib.php');
|
|
require_once(api_get_path(LIBRARY_PATH).'document.lib.php');
|
|
Mock::generate('DocumentManager');
|
|
|
|
|
|
/** To can test this functions you need to comment "die ('can not create file')" line 1571 from fileUpload.lib.php
|
|
* @author aportugal arthur.portugal@dokeos.com
|
|
*/
|
|
|
|
class TestFileUpload extends UnitTestCase {
|
|
|
|
function testAddAllDocumentsInFolderToDatabase() {
|
|
$docman = new MockDocumentManager();
|
|
$_course='';
|
|
$user_id='';
|
|
$base_work_dir='';
|
|
$path = $base_work_dir;
|
|
$handle=opendir($path);
|
|
$file=readdir($handle);
|
|
$safe_file=replace_dangerous_char($file);
|
|
$res=add_all_documents_in_folder_to_database($_course,$user_id,$base_work_dir,$current_path='',$to_group_id=0);
|
|
$docman->expectOnce('DocumentManager::get_document_id',array($_course, $current_path.'/'.$safe_file));
|
|
$this->assertTrue(is_object($docman));
|
|
//var_dump($docman);
|
|
}
|
|
|
|
function testAddDocument() {
|
|
global $charset;
|
|
$_course['dbName']='';
|
|
$path='';
|
|
$filetype='';
|
|
$filesize='';
|
|
$title='';
|
|
$res=add_document($_course,$path,$filetype,$filesize,$title);
|
|
$this->assertTrue(is_bool($res));
|
|
//var_dump($_course);
|
|
}
|
|
|
|
function testAddExtOnMime() {
|
|
$fileName='';
|
|
$fileType='';
|
|
$res=add_ext_on_mime($fileName,$fileType);
|
|
$this->assertTrue(is_string($res));
|
|
//var_dump($res);
|
|
}
|
|
|
|
function testApiReplaceLinksInHtml() {
|
|
$upload_path='';
|
|
$doc_url = $_GET['file'];
|
|
$full_file_name = api_get_path(SYS_COURSE_PATH).api_get_course_path().'/upload/blog/'.$doc_url;
|
|
$res=api_replace_links_in_html($upload_path,$full_file_name);
|
|
$this->assertTrue(is_null($res));
|
|
//var_dump($res);
|
|
}
|
|
|
|
function testApiReplaceLinksInString() {
|
|
$upload_path='';
|
|
$buffer=ob_get_contents();
|
|
$res=api_replace_links_in_string($upload_path,$buffer);
|
|
$this->assertTrue(is_string($res));
|
|
//var_dump($res);
|
|
}
|
|
|
|
function testApiReplaceParameter() {
|
|
$count = 0;
|
|
$matches = array();
|
|
$href_list=array();
|
|
$file_path_list[] = $matches[1];
|
|
$upload_path='';
|
|
$replaceWhat[$count] = $href_list[$count];
|
|
/** To can test this function you need to comment "die ('can not create file')"
|
|
* $res return void
|
|
*/$replaceBy[$count] = " $param_name=\"" . $file_path_list[$count] . "\" target =\"_top\"";
|
|
$replaceBy[$count] = $replaceWhat[$count];
|
|
$buffer = str_replace($replaceWhat, $replaceBy, $buffer);
|
|
$param_name="src";
|
|
$res=api_replace_parameter($upload_path, $buffer, $param_name="src");
|
|
$this->assertTrue(is_string($res));
|
|
//var_dump($res);
|
|
}
|
|
|
|
function testBuildMissingFilesForm() {
|
|
|
|
$_course['path']='';
|
|
$courseDir = $_course['path']."/document";
|
|
$sys_course_path = api_get_path(SYS_COURSE_PATH);
|
|
$base_work_dir = $sys_course_path.$courseDir;
|
|
$missing_files = check_for_missing_files($base_work_dir.$new_path);
|
|
$upload_path='';
|
|
$file_name = '';
|
|
$res=build_missing_files_form($missing_files,$upload_path,$file_name);
|
|
$this->assertTrue(is_string($res));
|
|
//var_dump($res);
|
|
}
|
|
|
|
function testCheckForMissingFiles() {
|
|
$file='';
|
|
$res=check_for_missing_files($file);
|
|
$this->assertTrue(is_bool($res));
|
|
}
|
|
|
|
function testCleanUpFilesInZip() {
|
|
$p_event='';
|
|
$p_header['filename']='';
|
|
$res=clean_up_files_in_zip($p_event, &$p_header);
|
|
$this->assertTrue(is_numeric($res));
|
|
//var_dump($res);
|
|
}
|
|
|
|
function testCleanUpPath(&$path) {
|
|
$path_array = explode('/',$path);
|
|
$path = implode('/',$path_array);
|
|
$res=clean_up_path(&$path);
|
|
$this->assertTrue(is_numeric($res));
|
|
//var_dump($res);
|
|
}
|
|
|
|
/** To can test this function you need to comment "die ('can not create file')"
|
|
* $res return void/
|
|
*
|
|
*/
|
|
|
|
function testCreateLinkFile() {
|
|
$filePath='';
|
|
$url='';
|
|
$res= create_link_file($filePath, $url);
|
|
$this->assertTrue(is_null($res));
|
|
//var_dump($res);
|
|
}
|
|
|
|
function testCreateUnexistingDirectory() {
|
|
$_course='';
|
|
$user_id='';
|
|
$to_group_id='';
|
|
$to_user_id='';
|
|
$base_work_dir='';
|
|
$desired_dir_name='';
|
|
$res= create_unexisting_directory($_course,$user_id,$to_group_id,$to_user_id,$base_work_dir,$desired_dir_name);
|
|
$this->assertTrue(is_bool($res));
|
|
}
|
|
|
|
function testDirTotalSpace() {
|
|
$dirPath='/var/www/path';
|
|
$res= dir_total_space($dirPath);
|
|
$this->assertTrue(is_numeric($res));
|
|
//var_dump($res);
|
|
}
|
|
|
|
function testDisableDangerousFile($filename) {
|
|
$filename = php2phps($filename);
|
|
$filename = htaccess2txt($filename);
|
|
$res= disable_dangerous_file($filename);
|
|
$this->assertTrue(is_string($res));
|
|
//var_dump($res);
|
|
}
|
|
|
|
|
|
//function documents_total_space()
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
?>
|
|
|