@ -1,150 +1,40 @@
<?php //$id:$
<?php
require_once(api_get_path(LIBRARY_PATH).'course.lib.php');
class TestMainApi extends UnitTestCase {
function TestMainApi() {
$this->UnitTestCase('Main API tests');
}
// todo function testApiProtectCourseScriptReturnsFalse()
// todo function testApiProtectAdminScriptReturnsFalse()
// todo function testApiBlockAnonymousUsers()
// todo function testApiGetNavigatorReturnArray($name,$version)
// todo function testApiIsSelfRegistrationAllowedReturnTrue()
// todo function testApiGetPathReturnString()
// todo function testApiGetUserIdReturnInteger()
// todo function testApiGetUserCoursesReturnArray()
// todo function testApiGetUserInfoReturnArray($user_id)
// todo function testApiGetUserInfoFromUsernameReturnArray($username)
// todo function testApiGetCourseIdReturnInteger()
// todo function testApiGetCoursePath()
// todo function testApiGetCourseSetting()
// todo function testApiGetAnonymousIdReturnInt()
// todo function testApiGetCidreq()
// todo function testApiGetCourseInfoReturnString()
// todo function testApiSqlQuery()
// todo function testApiStoreResultReturnArray()
// todo function testApiSessionStartReturnTrue()
// todo function testApiSessionRegister()
// todo function testApiSessionUnregister()
// todo function testApiSessionClearReturnArray()
// todo function testApiSessionDestroyReturnArray()
// todo function testApiAdd_UrlParamReturnString()
// todo function testApiGeneratePasswordReurnPassword()
// todo function testApiCheckPasswordReturnTrue()
// todo function testApiClearAnonymousReturnFalse()
// todo function testApiTruncStr()
// todo function testDomesticate
// todo function testGetStatusFromCodeReturnString()
// todo function testApiSetFailureReturnFalse()
// todo function testApiSetAnonymousReturnTrue()
// todo function testGetLastFailureRetunrString()
// todo function testApiGetSessionIdReturnInt()
// todo function testApiGetSessionNameReturnString()
// todo function testApiGetSelfReturnRightValue()
// todo function testGetLangReturnRightValue()
// todo function testApiGetInterfaceLanguageReturnString()
// todo function testApiIsPlatformAdminReturnTrue()
// todo function testApiIsAllowedToCreateCourseReturnTrue()
// todo function testApiIsCourseAdminRetunTrue()
// todo function testApiIsCourseCoachReturnTrue()
// todo function testApiIsCourseTutorReturnTrue()
// todo function testApiIsCoachReturnTrue()
// todo function testApiIsSessionAdminReturnTrue()
// todo function testApiDisplayToolTitle($titleElement)
// todo function testApiDisplayToolViewOption()
// todo function testApiDisplayArray()
// todo function testApiDisplayDebugInfo()
// todo function testApiIsAllowedToEdit()
// todo function testApiIsAllowed()
// todo function testApiIsAnonymous()
// todo function testApiNotAllowed()
// todo function testConvertMysqlDate()
// todo function testApiGetDatetime()
// todo function testApiGetItemVisibility()
// todo function testApiItemPropertyUpdate()
// todo function testApiGetLanguagesCombo()
// todo function testApiDisplayLanguageForm()
// todo function testApiGetLanguages()
// todo function testApiGetLanguageIsocode()
// todo function testApiGetThemesReturnArray()
// todo function testApiDispHtmlArea()
// todo function testApiReturnHtmlArea()
// todo function testApiSendMail()
// todo function testApiMaxSortValue()
// todo function testString2Boolean()
// todo function testApiNumberOfPlugins()
// todo function testApiPlugin()
// todo function testApiIsPluginInstalled()
// todo function testApiParseTex()
// todo function testApiTimeToHms()
// todo function testCopyr()
// todo function testApiChmodR()
// todo function testApiGetVersionReturnString()
// todo function testApiStatusExistsReturnTrue()
// todo function testApiStatusKeyReturnTrue()
// todo function testApiStatusLangvarsReturnArray()
// todo function testApiSetSetting()
// todo function testApiSetSettingsCategoryReturnTrue()
// todo function testApiGetAccessUrlsReturnArray()
// todo function testApiGetAccessUrlReturnArray()
// todo function testApiAddAccessUrlReturnInt()
// todo function testApiGetSettingsReturnArray()
// todo function testApiGetSettingsCategoriesReturnArray()
// todo function testApiDeleteSettingReturnTrue()
// todo function testApiDeleteCategorySettingsReturnTrue()
// todo function testApiAddSettingReturnTrue()
// todo function testApiIsCourseVisibleForUserReturnBooleanValue()
// todo function testApiIsElementInTheSessionReturnBooleanValue()
// todo function testReplaceDangerousChar()
// todo function testApiRequestUri()
// todo function testApiCreateIncludePathSetting()
// todo function testApiGetCurrentAccessUrlIdReturnInt()
// todo function testApiAccessUrlFromUserReturnInt()
// todo function testApiGetStatusOfUserInCourseReturnInteger()
// todo function testApiIsInCourseReturnBooleanValue()
// todo function testApiIsInGroupReturnBooleanValue()
// todo function testApiIsXmlHttpRequest()
// todo function testApiGetEncryptedPassword()
// todo function testApiIsValidSecretKeyReturnBooleanValue()
// todo function testApiIsUserOfCourseReturnBooleanValue()
// todo function testApiIsWnidowsOsReturnBooleanValue()
// todo function testApiUrlToLocalPathReturnString()
// todo function testApiResizeImage()
// todo function testApiCalculateImageSizeReturnArray()
/*
* Test out of a course context
*/
function testApiProtectCourseScriptReturnsFalseWhenOutOfCourseContext(){
/*
function testApiProtectCourseScript(){
ob_start();
// $res= api_protect_course_script();
$res = ob_get_contents();
$res= api_protect_course_script($print_headers=null);
ob_get_contents();
$this->assertTrue(is_string($res));
ob_end_clean();
}
function testApiProtectAdminScriptReturnsFalseWhenOutOfCourseContext (){
function testApiProtectAdminScript(){
ob_start();
//api_protect_admin_script();
$res = ob_get_contents();
$this->assertTrue(is_string($res));
$res = api_protect_admin_script($allow_sessions_admins=false);
ob_end_clean();
//$this->assertTrue(is_string($res));
}
function testApiBlockAnonymousUsersReturnTrueWhenUserIsAnonymous (){
function testApiBlockAnonymousUser(){
ob_start();
//api_block_anonymous_users();
$res = ob_get_contents();
$res = api_block_anonymous_users();
$this->assertTrue(is_string($res));
ob_end_clean();
}
*/
function testApiGetNavigator(){
ob_start();
$res=api_get_navigator();
$this->assertTrue($res);
ob_end_clean();
}
function testApiIsSelfRegistrationAllowed(){
@ -230,8 +120,10 @@ class TestMainApi extends UnitTestCase {
}
function testApiGetCourseSettingReturnFalseWhenOutOfCourseSeetingContext(){
global $_course;
$course_code = $_course;
$setting_name = 1;
$res = api_get_course_setting($setting_name, $course_code = null);
$res = api_get_course_setting($setting_name, $course_code);
$this->assertTrue($res);
}
@ -253,7 +145,9 @@ class TestMainApi extends UnitTestCase {
}
function testApiSessionStart(){
if (!headers_sent()) {
$res = api_session_start($already_sintalled=true);
}
$this->assertTrue(is_null($res));
//var_dump($res);
}
@ -261,7 +155,9 @@ class TestMainApi extends UnitTestCase {
function testApiSessionRegister(){
$$variable[session_register]=false;
global $$variable;
if (!headers_sent()) {
$res=api_session_register($$variable);
}
$this->assertTrue(is_null($res));
$this->assertTrue(is_null($variable[session_register]));
//var_dump($variable);
@ -284,20 +180,21 @@ class TestMainApi extends UnitTestCase {
}
function testApiSessionDestroy(){
$res=api_session_destroy();
if (!headers_sent()) {
$res=api_session_destroy();
}
$this->assertTrue(is_null($res));
//var_dump($res);
}
function testApiAddUrlParam(){
function testApiAddUrlParam() {
global $url , $param ;
$res=api_add_url_param($url, $param, $filter_xss=true);
$this->assertTrue(is_null($res));
//var_dump($res);
}
function testApiGeneratePassword(){
function testApiGeneratePassword() {
$res = api_generate_password($length = 8);
$this->assertTrue(is_string($res));
//var_dump($res);
@ -360,9 +257,7 @@ class TestMainApi extends UnitTestCase {
$this->assertTrue(is_numeric($res));
//var_dump($res);
}
/** If there is not a session name not return nothing, return null
* @author aportugal
*/
function testApiGetSessionName(){
$session_id='';
@ -428,23 +323,25 @@ class TestMainApi extends UnitTestCase {
//var_dump($res);
}
function testApiIsAllowedToCreateCourse(){
function testApiIsAllowedToCreateCourse() {
$res=api_is_allowed_to_create_course();
$this->assertTrue(is_null($res));
//var_dump($res );
if(!is_bool($res)){
$this->assertTrue(is_null($res) );
}
}
function testApiIsCourseAdmin(){
function testApiIsCourseAdmin() {
$res=api_is_course_admin();
$this->assertTrue(is_null($res));
//var_dump($res);
if(!is_numeric($res)) {
$this->assertTrue(is_null($res));
}
}
function testApiIsCourseCoach(){
function testApiIsCourseCoach() {
$res=api_is_course_coach();
$this->assertTrue(is_null($res));
//var_dump($res);
if(!is_bool($res)){
$this->assertTrue(is_null($res));
}
}
function testApiIsCoach(){
@ -509,10 +406,6 @@ class TestMainApi extends UnitTestCase {
ob_end_clean();
}
/**
* function is_allowed_to_edit() is deprecated and have been instead by
* api_is_allowed_to_edit()
*/
function testApiIsAllowedToEdit(){
$is_courseAdmin=false;
@ -522,18 +415,15 @@ class TestMainApi extends UnitTestCase {
}
function testApiIsAllowed(){
ob_start();
global $_course, $_user;
$_user['user_id']=1;
$_course['code']=0;
$tool= 'full';
$action = 'delete';
$res=api_is_allowed($tool, $action, $task_id=0);
if(!is_bool($res)){
$this->assertTrue(is_null($res));
}
$this->assertTrue($action);
$this->assertTrue($_user['user_id']);
ob_end_clean();
//var_dump($res);
}
function testApiIsAnonymous(){
@ -548,10 +438,6 @@ class TestMainApi extends UnitTestCase {
//var_dump($db_check);
}
/**
* test was stopped because of errors in the interpretation of
* the role, find out more details.
*/
function testApiNotAllowed(){
ob_start();
//api_not_allowed($print_headers = false);
@ -589,12 +475,8 @@ class TestMainApi extends UnitTestCase {
}
function testApiGetLanguagesCombo(){
$platformLanguage = api_get_setting('platformLanguage');
$language_list = api_get_languages();
$res=api_get_languages_combo($name="language");
$this->assertTrue($res);
$this->assertTrue($platformLanguage);
$this->assertTrue($language_list['name']);
}
function testApiDisplayLanguageForm(){
@ -827,8 +709,11 @@ class TestMainApi extends UnitTestCase {
//var_dump($res);
}
function testApiIsCourseVisibleForUser(){
$res = api_is_course_visible_for_user($userid=null, $cid=null);
function testApiIsCourseVisibleForUser() {
global $_user, $cidReq;
$userid = $_user;
$cid = $cidReq ;
$res = api_is_course_visible_for_user($userid, $cid);
$this->assertTrue(is_bool($res));
//var_dump($res);
}
@ -964,5 +849,20 @@ class TestMainApi extends UnitTestCase {
$this->assertTrue($tool_list);
//var_dump($res);
}
public function TestDeleteCourse() {
$code = 'COURSEX';
$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);
}
}
}
?>