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.
		
		
		
		
		
			
		
			
				
					
					
						
							325 lines
						
					
					
						
							8.5 KiB
						
					
					
				
			
		
		
	
	
							325 lines
						
					
					
						
							8.5 KiB
						
					
					
				<?php
 | 
						|
require_once(api_get_path(LIBRARY_PATH).'database.lib.php');
 | 
						|
require_once(api_get_path(LIBRARY_PATH).'add_course.lib.inc.php');
 | 
						|
require_once(api_get_path(LIBRARY_PATH).'course.lib.php');
 | 
						|
class TestDatabase extends UnitTestCase {
 | 
						|
 | 
						|
	 public $dbase;
 | 
						|
	 public function TestDatabase() {
 | 
						|
	 	$this->UnitTestCase('data base test');
 | 
						|
	 }
 | 
						|
 | 
						|
	 public function setUp() {
 | 
						|
	 	global $_configuration;
 | 
						|
 	 	$this->dbase = new Database();
 | 
						|
 	 	
 | 
						|
 	 	$course_datos = array(
 | 
						|
				'wanted_code'=> 'COD16',
 | 
						|
				'title'=>'CURSO1',
 | 
						|
				'tutor_name'=>'R. J. Wolfagan',
 | 
						|
				'category_code'=>'2121',
 | 
						|
				'course_language'=>'english',
 | 
						|
				'course_admin_id'=>'1211',
 | 
						|
				'db_prefix'=> $_configuration['db_prefix'],
 | 
						|
				'firstExpirationDelay'=>'112'
 | 
						|
				);
 | 
						|
		$res = create_course($course_datos['wanted_code'], $course_datos['title'],
 | 
						|
							 $course_datos['tutor_name'], $course_datos['category_code'],
 | 
						|
							 $course_datos['course_language'],$course_datos['course_admin_id'],
 | 
						|
							 $course_datos['db_prefix'], $course_datos['firstExpirationDelay']);
 | 
						|
 	 	
 | 
						|
	 }
 | 
						|
 | 
						|
	 public function tearDown() {
 | 
						|
	 	$this->dbase = null;
 | 
						|
	 	$code = 'COD16';				
 | 
						|
		$res = CourseManager::delete_course($code);			
 | 
						|
		$path = api_get_path(SYS_PATH).'archive';		
 | 
						|
		if ($handle = opendir($path)) {
 | 
						|
			while (false !== ($file = readdir($handle))) {				
 | 
						|
				if (strpos($file,$code)!==false) {										
 | 
						|
					if (is_dir($path.'/'.$file)) {						
 | 
						|
						rmdirr($path.'/'.$file);						
 | 
						|
					}				
 | 
						|
				}				
 | 
						|
			}
 | 
						|
			closedir($handle);
 | 
						|
		}
 | 
						|
	 	
 | 
						|
	 }
 | 
						|
	
 | 
						|
	public function testAffectedRows() {
 | 
						|
		$res=$this->dbase->affected_rows();
 | 
						|
		$this->assertTrue(is_numeric($res));
 | 
						|
	}
 | 
						|
 | 
						|
	public function testCountRows() {
 | 
						|
		$table='class';
 | 
						|
		$res=$this->dbase->count_rows($table);
 | 
						|
		$this->assertTrue(is_numeric($res));
 | 
						|
	}
 | 
						|
 | 
						|
	public function testError() {
 | 
						|
		$res=$this->dbase->error();
 | 
						|
		$this->assertTrue(is_string($res));
 | 
						|
	}
 | 
						|
 | 
						|
	public function testEscapeString() {
 | 
						|
		$string='Lore"May';
 | 
						|
		$res=$this->dbase->escape_string($string);
 | 
						|
		//print_r($string);
 | 
						|
		$this->assertTrue(is_string($res));
 | 
						|
	}
 | 
						|
 | 
						|
	public function testFetchArray() {
 | 
						|
		$sql = 'select 1';
 | 
						|
		$res=Database::query($sql,__FILE__,__LINE__);
 | 
						|
		$resu=$this->dbase->fetch_array($res);
 | 
						|
		$this->assertTrue(is_array($resu));
 | 
						|
		$this->assertFalse(is_null($resu));
 | 
						|
	}
 | 
						|
 | 
						|
	public function testFetchArrayError() {
 | 
						|
		$sql ="SELECT  1";
 | 
						|
		$res=Database::query($sql,__FILE__,__LINE__);
 | 
						|
		$resu=$this->dbase->fetch_array($res);
 | 
						|
		$this->assertTrue(is_array($resu));
 | 
						|
	}
 | 
						|
 | 
						|
	function testFetchObject() {
 | 
						|
		$sql ="SELECT  1";
 | 
						|
		$res=Database::query($sql,__FILE__,__LINE__);
 | 
						|
		$resu=$this->dbase->fetch_object($res);
 | 
						|
		$this->assertTrue(is_object($resu));
 | 
						|
	}
 | 
						|
 | 
						|
	function testFetchRow() {
 | 
						|
		$sql ="SELECT  1";
 | 
						|
		$res=Database::query($sql,__FILE__,__LINE__);
 | 
						|
		$resu=$this->dbase->fetch_row($res);
 | 
						|
		$this->assertTrue(is_array($resu));
 | 
						|
	}
 | 
						|
 | 
						|
	function testFixDatabaseParameterEmpty() {
 | 
						|
		$course_info = api_get_course_info();
 | 
						|
		$database_name= $course_info[""];
 | 
						|
		$res=$this->dbase->fix_database_parameter($database_name);
 | 
						|
		if(!is_null($res)) :
 | 
						|
		$this->assertTrue(is_string($res));
 | 
						|
		endif;
 | 
						|
		//var_dump($res);
 | 
						|
	}
 | 
						|
 | 
						|
	function testFixDatabaseParameterReturnString() {
 | 
						|
		$course_info = api_get_course_info();
 | 
						|
		$database_name= $course_info["dbName"];
 | 
						|
		$res=$this->dbase->fix_database_parameter($course_info);
 | 
						|
		$this->assertTrue(is_string($res));
 | 
						|
	}
 | 
						|
 | 
						|
	function testFormatGluedCourseTableName()  {
 | 
						|
		$database_name_with_glue='';
 | 
						|
		$table='';
 | 
						|
		$res=$this->dbase->format_glued_course_table_name($database_name_with_glue, $table);
 | 
						|
		$this->assertTrue(is_string($res));
 | 
						|
	}
 | 
						|
 | 
						|
	function testFormatTableName() {
 | 
						|
		$database='';
 | 
						|
		$table='';
 | 
						|
		$res=$this->dbase->format_table_name($database, $table);
 | 
						|
		$this->assertTrue(is_string($res));
 | 
						|
	}
 | 
						|
 | 
						|
	function testGenerateAbstractCourseFieldNames() {
 | 
						|
		$result_array='';
 | 
						|
		$res=$this->dbase->generate_abstract_course_field_names($result_array);
 | 
						|
		$this->assertTrue(is_array($res));
 | 
						|
	}
 | 
						|
 | 
						|
	function testGenerateAbstractUserFieldNames() {
 | 
						|
		$result_array='';
 | 
						|
		$res=$this->dbase->generate_abstract_user_field_names($result_array);
 | 
						|
		$this->assertTrue(is_array($res));
 | 
						|
	}
 | 
						|
 | 
						|
	function get_course_by_category() {
 | 
						|
		$category_id='1';
 | 
						|
		$res=$this->dbase->get_course_by_category($category_id);
 | 
						|
		$this->assertTrue(is_string($res));
 | 
						|
	}
 | 
						|
 | 
						|
	function testGetCourseChatConnectedTable() {
 | 
						|
		$database_name='dokeosla';
 | 
						|
		$res=$this->dbase->get_course_chat_connected_table($database_name);
 | 
						|
		$this->assertTrue(is_string($res));
 | 
						|
	}
 | 
						|
 | 
						|
	function testGetCourseInfo() {
 | 
						|
		$course_code='AYDD';
 | 
						|
		$res=$this->dbase->get_course_info($course_code);
 | 
						|
		$this->assertTrue(is_array($res));
 | 
						|
	}
 | 
						|
 | 
						|
	function testGetCourseList() {
 | 
						|
		$sql_query = "SELECT * FROM $table";
 | 
						|
		$res=$this->dbase->get_course_list($sql_query);
 | 
						|
		$this->assertTrue(is_array($res));
 | 
						|
	}
 | 
						|
 | 
						|
	function testGetCourseTable() {
 | 
						|
		$short_table_name='';
 | 
						|
		$database_name='';
 | 
						|
		$res=$this->dbase->get_course_table($short_table_name,$database_name);
 | 
						|
		$this->assertTrue(is_string($res));
 | 
						|
	}
 | 
						|
 | 
						|
	function testGetCourseTableFromCode() {
 | 
						|
		$course_code='AYDD';
 | 
						|
		$table='course';
 | 
						|
		$ret = NULL;
 | 
						|
		$res=$this->dbase->get_course_table_from_code($course_code, $table);
 | 
						|
		$this->assertTrue(is_string($res));
 | 
						|
	}
 | 
						|
 | 
						|
	function testGetCourseTablePrefix() {
 | 
						|
		global $_configuration;
 | 
						|
		$res=$this->dbase->get_course_table_prefix($_configuration);
 | 
						|
		$this->assertTrue(is_string($res));
 | 
						|
	}
 | 
						|
 | 
						|
	function testGetCurrentCourseDatabase() {
 | 
						|
		$res=$this->dbase->get_current_course_database();
 | 
						|
		if(!is_null($res)) :
 | 
						|
		$this->assertTrue(is_string($res));
 | 
						|
		endif;
 | 
						|
		//var_dump($res);
 | 
						|
	}
 | 
						|
 | 
						|
	function testGetCurrentCourseGluedDatabase() {
 | 
						|
		$res=$this->dbase->get_current_course_glued_database();
 | 
						|
		if(!is_null($res)):
 | 
						|
		$this->assertTrue(is_string($res));
 | 
						|
		endif;
 | 
						|
		//var_dump($res);
 | 
						|
	}
 | 
						|
 | 
						|
	function testGetDatabaseGlue()
 | 
						|
	{
 | 
						|
		global $_configuration;
 | 
						|
		$res=$this->dbase->get_database_glue($_configuration);
 | 
						|
		$this->assertTrue(is_string($res));
 | 
						|
	}
 | 
						|
 | 
						|
	function testGetDatabaseNamePrefix() {
 | 
						|
		global $_configuration;
 | 
						|
		$res=$this->dbase->get_database_name_prefix($_configuration);
 | 
						|
		$this->assertTrue(is_string($res));
 | 
						|
	}
 | 
						|
 | 
						|
	function testGetMainDatabase() {
 | 
						|
		global $_configuration;
 | 
						|
		$res=$this->dbase->get_main_database();
 | 
						|
		$this->assertTrue(is_string($res));
 | 
						|
	}
 | 
						|
 | 
						|
	function testGetMainTable() {
 | 
						|
		$short_table_name='';
 | 
						|
		$res=$this->dbase->get_main_table($short_table_name);
 | 
						|
		$this->assertTrue(is_string($res));
 | 
						|
	}
 | 
						|
 | 
						|
	function testGetScormDatabase() {
 | 
						|
		global $_configuration;
 | 
						|
		$res=$this->dbase->get_scorm_database();
 | 
						|
		$this->assertTrue(is_string($res));
 | 
						|
	}
 | 
						|
 | 
						|
		function testGetScorm_table() {
 | 
						|
		$short_table_name='';
 | 
						|
		$res=$this->dbase->get_scorm_table($short_table_name);
 | 
						|
		$this->assertTrue(is_string($res));
 | 
						|
		$this->assertTrue($res);
 | 
						|
	}
 | 
						|
 | 
						|
	function testGetStatisticDatabase() {
 | 
						|
		global $_configuration;
 | 
						|
		$res=$this->dbase->get_statistic_database($_configuration);
 | 
						|
		$this->assertTrue(is_string($res));
 | 
						|
		$this->assertTrue($res);
 | 
						|
	}
 | 
						|
 | 
						|
	function testGetStatisticTable() {
 | 
						|
		$short_table_name='';
 | 
						|
		$res=$this->dbase->get_statistic_table($short_table_name);
 | 
						|
		$this->assertTrue(is_string($res));
 | 
						|
		$this->assertTrue($res);
 | 
						|
	}
 | 
						|
 | 
						|
	function testGetUserInfoFromId() {
 | 
						|
		$user_id = '';
 | 
						|
		$res=$this->dbase->get_user_info_from_id($user_id);
 | 
						|
		$this->assertTrue(is_array($res));
 | 
						|
		$this->assertTrue($res);
 | 
						|
		//var_dump($res);
 | 
						|
	}
 | 
						|
 | 
						|
	function testGetUserPersonalDatabase() {
 | 
						|
		global $_configuration;
 | 
						|
		$res=$this->dbase->get_user_personal_database($_configuration);
 | 
						|
		$this->assertTrue(is_string($res));
 | 
						|
		$this->assertTrue($res);
 | 
						|
	}
 | 
						|
 | 
						|
	function testGetUserPersonalTable(){
 | 
						|
		$short_table_name='';
 | 
						|
		$res=$this->dbase->	get_user_personal_table($short_table_name);
 | 
						|
		$this->assertTrue(is_string($res));
 | 
						|
		$this->assertTrue($res);
 | 
						|
	}
 | 
						|
 | 
						|
	function testGlueCourseDatabaseName() {
 | 
						|
		$database_name='';
 | 
						|
		$res=$this->dbase->glue_course_database_name($database_name);
 | 
						|
		$this->assertTrue(is_string($res));
 | 
						|
		$this->assertTrue($res);
 | 
						|
	}
 | 
						|
 | 
						|
	function testInsertId() {
 | 
						|
		$res=$this->dbase->insert_id();
 | 
						|
		$this->assertTrue(is_numeric($res));
 | 
						|
	}
 | 
						|
 | 
						|
	function testNumRows() {
 | 
						|
		$sql= 	"SELECT * FROM chamilo_main.user";
 | 
						|
		$res = Database::query($sql);		
 | 
						|
		$resul=Database::num_rows($res);
 | 
						|
		$this->assertTrue(is_numeric($resul));
 | 
						|
		//var_Dump($res);
 | 
						|
	}
 | 
						|
 | 
						|
	function testQuery() {
 | 
						|
		$sql ="SELECT 1";
 | 
						|
		$res=$this->dbase->query($sql,__FILE__,__LINE__);
 | 
						|
		$this->assertTrue(is_resource($res));
 | 
						|
	}
 | 
						|
 | 
						|
	function testResult() {
 | 
						|
		$sql="SELECT * FROM chamilo_main.user";
 | 
						|
		$resource= Database::query($sql,__FILE__,__LINE__);
 | 
						|
		$row= 1;
 | 
						|
		$res= Database::result($resource, $row);
 | 
						|
		$this->assertTrue(is_string($res));
 | 
						|
		//var_dump($res);
 | 
						|
	}
 | 
						|
 | 
						|
	function testStoreResult(){
 | 
						|
		$sql="SELECT 1";
 | 
						|
		$resource=$this->dbase->query($sql,__FILE__,__LINE__);
 | 
						|
		$res = $this->dbase->store_result($resource);
 | 
						|
		$this->assertTrue(is_array($res));
 | 
						|
		//var_dump($res);
 | 
						|
	}
 | 
						|
 | 
						|
}
 | 
						|
?>
 |