From e19b1b396c57affaff4394427b570d12ea2d2b7b Mon Sep 17 00:00:00 2001 From: Ricardo Rodriguez Date: Mon, 10 Aug 2009 17:22:25 -0500 Subject: [PATCH 1/2] Created new file test function install_upgrade.lib --- .../main/install/install_upgrade.lib.test.php | 156 ++++++++++++++++++ 1 file changed, 156 insertions(+) create mode 100644 tests/main/install/install_upgrade.lib.test.php diff --git a/tests/main/install/install_upgrade.lib.test.php b/tests/main/install/install_upgrade.lib.test.php new file mode 100644 index 0000000000..57a9c32bb1 --- /dev/null +++ b/tests/main/install/install_upgrade.lib.test.php @@ -0,0 +1,156 @@ +UnitTestCase('testing the function used by '. + 'the install and upgrade scripts'); + } + + public function testSetFileFolderPermissions(){ + $res = set_file_folder_permissions(); + $this->assertTrue(is_null($res)); + $this->assertNull($res); + //var_dump($res); + } + + public function testFillLanguageTable(){ + $language_table='en'; + $res = fill_language_table($language_table); + $this->assertTrue(is_null($res)); + //var_dump($res); + } + /** + * Fatal error: Call to undefined function trueFalse() in + * /var/www/dokeos1861/main/install/install_upgrade.lib.php on line 114 + */ + /*public function testFillCurrentSettingsTable(){ + $current_settings_table=''; + $installation_settings=''; + $res = fill_current_settings_table($current_settings_table, $installation_settings); + $this->assertTrue($res); + var_dump($res); + }*/ + + public function testFillSettingsTable(){ + $settings_options_table=''; + $res = fill_settings_options_table($settings_options_table); + $this->assertTrue(is_null($res)); + //var_dump($res); + } + + public function testFillTrackCountriesTable(){ + $track_countries_table=''; + $res = fill_track_countries_table($track_countries_table); + $this->assertEqual(null,$res); + //var_dump($res); + } + + public function testWriteCoursesHtaccessFile(){ + $url_append='/var/www/dokeos1861/main/install/'; + $res = write_courses_htaccess_file($url_append); + if(is_bool($res)){ + $this->assertTrue(is_bool($res)); + $this->assertTrue($res === true || $res === false); + }else + $this->assertEqual('/var/www/dokeos1861/main/install/',$res); + //var_dump($res); + } + /** + * Call to undefined function trueFalse() in + * /var/www/dokeos1861/main/install/install_upgrade.lib.php on line 192 + */ + /*public function testWriteDokeosConfigFile(){ + global $dbHostForm; + global $dbUsernameForm; + global $dbPassForm; + global $enableTrackingForm; + global $singleDbForm; + global $dbPrefixForm; + global $dbNameForm; + global $dbStatsForm; + global $dbScormForm; + global $dbUserForm; + global $urlForm; + global $pathForm; + global $urlAppendPath; + global $languageForm; + global $encryptPassForm; + global $installType; + global $updatePath; + global $session_lifetime; + global $new_version; + global $new_version_stable; + $path=''; + $res = write_dokeos_config_file($path); + $this->assertTrue($res); + var_dump($res); + + }*/ + + public function testLoadMainDatabase(){ + $installation_settings=array(); + $res = load_main_database($installation_settings); + $this->assertTrue(is_null($res)); + $this->assertNull($res); + //var_dump($res); + } + + public function testLoadDatabaseScript(){ + $db_script='install_db'; + $res = load_database_script($db_script); + $this->assertTrue(is_null($res)); + //var_dump($res); + } + + public function testSplitSqlFile(){ + $ret=''; + $sql=''; + $res = split_sql_file($ret, $sql); + $this->assertTrue($res); + $this->assertTrue(is_bool($res)); + $this->assertTrue($res===true); + //var_dump($res); + } + + public function testGetSqlFileContents(){ + ob_start(); + $file='txt'; + $section='course'; + $print_errors=true; + $res = get_sql_file_contents($file,$section,$print_errors); + ob_end_clean(); + if(is_bool($res)); + $this->assertTrue(is_bool($res)); + $this->assertTrue($res===true || $res === false); + //var_dump($res); + } + + public function testDirectoryToArray(){ + $directory=array('aaa','bbb','ccc'); + $res = directory_to_array($directory); + $this->assertTrue(is_array($res)); + //var_dump($res); + } + + public function testAddDocument180(){ + $_course='testing'; + $path='http://dokeos186.net/courses/001/?id_session=0'; + $filetype='doc'; + $filesize='10'; + $title='testing'; + $comment=NULL; + $res = add_document_180($res); + if(is_bool($res)){ + $this->assertTrue(is_bool($res)); + $this->assertTrue($res === false); + }else + $this->assertTrue($res); + //var_dump($res); + } +} + + + +?> From 6a34018940d034ff34d2d10250bd2b8bbe9353d3 Mon Sep 17 00:00:00 2001 From: Ricardo Rodriguez Date: Mon, 10 Aug 2009 17:23:39 -0500 Subject: [PATCH 2/2] Created new test file function survey --- tests/main/survey/survey.lib.test.php | 447 ++++++++++++++++++++++++++ 1 file changed, 447 insertions(+) create mode 100644 tests/main/survey/survey.lib.test.php diff --git a/tests/main/survey/survey.lib.test.php b/tests/main/survey/survey.lib.test.php new file mode 100644 index 0000000000..b30af49fd8 --- /dev/null +++ b/tests/main/survey/survey.lib.test.php @@ -0,0 +1,447 @@ +UnitTestCase(''); + + } + public function setUp() { + $this-> smanager = new survey_manager(); + $this-> squestion = new question(); + } + + public function tearDown() { + $this-> smanager = null; + $this-> squestion = null; + } + /* + public function testGetSurvey() { + $instans = new MockDatabase(); + global $_course; + $survey_id=1; + $shared=1; + $my_course_id=$_GET['course']; + $res = $this->smanager->get_survey($survey_id,$shared); + $my_course_info=api_get_course_info($my_course_id); + $table_survey = Database :: get_course_table(TABLE_SURVEY, $my_course_info['dbName']); + $sql = "SELECT * FROM $table_survey WHERE survey_id='".Database::escape_string($survey_id)."'"; + $result = api_sql_query($sql, __FILE__, __LINE__); + $instans->expectCallCount($table_survey); + $this->assertTrue(is_array($res)); + $this->assertFalse($result); + //var_dump($table_survey); + //var_dump($result); + //var_dump($res); + } + + public function testStoreSurvey(){ + $instans = new MockDatabase(); + global $_user; + $values=array('002','003','003'); + $table_survey=Database::get_course_table(TABLE_SURVEY); + $shared_survey_id=0; + $instans->expectCallCount($table_survey); + //if(!$values['survey_id'] OR !is_numeric($values['survey_id'])) + $res = $this->smanager->store_survey($values); + $this->assertTrue($res); + $this->assertTrue(is_array($res)); + $this->assertTrue($res); + $this->assertTrue($table_survey); + //var_dump($res); + //var_dump($table_survey); + } + /* + public function testStoreSharedSurvey($values){ + $instans = new MockDatabase(); + $values=array(''); + global $_user; + global $_course; + $table_survey=Database::get_main_table(TABLE_MAIN_SHARED_SURVEY); + $instans->expectCallCount(Database::get_main_table(TABLE_MAIN_SHARED_SURVEY)); + if(!$values['survey_id'] OR !is_numeric($values['survey_id']) OR $values['survey_share']['survey_share'] == 'true') { + $sql = "INSERT INTO $table_survey (code, title, subtitle, author, lang, template, intro, surveythanks, creation_date, course_code)"; + $result = api_sql_query($sql, __FILE__, __LINE__); + $return = Database::insert_id(); + }else{ + $sql = "UPDATE $table_survey SET"; + $result = api_sql_query($sql, __FILE__, __LINE__); + $return = $values['survey_share']['survey_share']; + } + $res = $this->smanager->store_shared_survey($values); + $this->assertTrue($res); + //var_dump($res); + //var_dump($table_survey); + //var_dump($table_survey); + }*/ + + public function testDeleteSurvey(){ + $instans = new MockDatabase(); + $survey_id=1; + $shared=false; + $course_code=001; + $table_survey= Database :: get_course_table(TABLE_SURVEY,$course_code); + $table_survey_question_group = Database :: get_course_table(TABLE_SURVEY_QUESTION_GROUP,$course_code); + $instans->expectOnce($table_survey); + $res = $this->smanager->delete_survey($survey_id, $shared, $course_code); + $this->assertTrue($res); + $this->assertTrue(is_bool($res)); + $this->assertTrue($table_survey); + //var_dump($table_survey_question_group); + //var_dump($res); + } + + public function testCopySurvey(){ + $instans = new MockDatabase(); + $parent_survey=null; + $new_survey_id=null; + $instans->expectCallCount(Database::get_course_table(TABLE_SURVEY)); + $sql = "SELECT * from $table_survey_question_group " . + "WHERE survey_id='".$parent_survey."'"; + $result = api_sql_query($sql, __FILE__, __LINE__); + $res = $this->smanager->copy_survey($parent_survey,$new_survey_id); + $this->assertTrue(is_bool($res)); + $this->assertTrue($res); + $this->assertTrue($instans); + //var_dump($res); + //var_dump($result); + } + + public function testEmpty_survey(){ + $instans = new MockDatabase(); + $table_survey_invitation = Database :: get_course_table(TABLE_SURVEY_INVITATION); + $table_survey_answer = Database :: get_course_table(TABLE_SURVEY_ANSWER); + $table_survey = Database :: get_course_table(TABLE_SURVEY); + $survey_id=null; + $instans->expectOnce($table_survey); + $instans->expectCallCount(count($table_survey)); + $instans->expectCallCount($table_survey); + $res = $this->smanager->empty_survey($survey_id); + $this->assertTrue($res); + $this->assertTrue(is_object($instans)); + //var_dump($res); + //var_dump($table_survey); + } + + public function testUpdateSurveyAnswered(){ + $instans = new MockDatabase(); + global $_course; + $survey_id=1; + $user=001; + $survey_code=001; + $table_survey= Database :: get_course_table(TABLE_SURVEY, $_course['db_name']); + $table_survey_invitation = Database :: get_course_table(TABLE_SURVEY_INVITATION, $_course['db_name']); + $instans->expectCallCount($table_survey); + $instans->expectCallCount(count($table_survey_invitation)); + $sql = "UPDATE $table_survey_invitation SET answered='1' WHERE session_id='".api_get_session_id()."' AND user='".Database::escape_string($user)."' AND survey_code='".Database::escape_string($survey_code)."'"; + $res = api_sql_query($sql, __FILE__, __LINE__); + $result = $this->smanager->update_survey_answered($survey_id, $user, $survey_code); + $this->assertTrue(is_bool($res)); + $this->assertTrue($res === false); + //var_dump($result); + //var_dump($res); + + } + + public function testGetCompleteSurveyStructure(){ + $survey_id=''; + $shared=0; + $res = $this->smanager->get_complete_survey_structure($survey_id, $shared); + $this->assertNull($res); + $this->assertTrue($res=== null); + //var_dump($res); + } + + public function testIconQuestion(){ + $type='open'; + $res = $this->smanager->icon_question($type); + if(is_bool($res)) { + $this->assertTrue($res ===false); + $this->assertTrue(is_bool($res)); + }else{ + $this->assertTrue($res); + $this->assertTrue(is_string($res)); + } + //var_dump($res); + } + + public function testGetQuestion(){ + $instans = new MockDatabase(); + $question_id=01; + $shared=false; + $tbl_survey_question = Database :: get_course_table(TABLE_SURVEY_QUESTION); + $table_survey_question_option = Database :: get_course_table(TABLE_SURVEY_QUESTION_OPTION); + $sql = "SELECT * FROM $tbl_survey_question WHERE question_id='".Database::escape_string($question_id)."' ORDER BY `sort`"; + $result = api_sql_query($sql, __FILE__, __LINE__); + $row = Database::fetch_array($result,'ASSOC'); + $res = $this->smanager->get_question($question_id,$shared); + $this->assertTrue($res); + $instans->expectOnce(count($res)); + //var_dump($res); + //var_dump($result); + } + + public function testGetQuestions(){ + $get_questions = new MockDatabase(); + $survey_id =1; + $tbl_survey_question = Database :: get_course_table(TABLE_SURVEY_QUESTION); + $table_survey_question_option = Database :: get_course_table(TABLE_SURVEY_QUESTION_OPTION); + $sql = "SELECT * FROM $tbl_survey_question WHERE survey_id='".Database::escape_string($survey_id)."'"; + $result = api_sql_query($sql, __FILE__, __LINE__); + $row = Database::fetch_array($result,'ASSOC'); + $res= $this->smanager->get_questions($survey_id); + $get_questions->expectCallCount($result); + $this->assertNull($res); + //var_dump($res); + //var_dump($row); + //var_dump($get_questions); + } + + public function testSaveQuestion(){ + global $survey_data; + global $_course; + $form_content=array('question'=>'121212'); + $res = $this->smanager->save_question($form_content['question']); + $this->assertTrue($res); + $this->assertTrue(is_string($res)); + //var_dump($res); + + } + + public function testSaveSharedQuestion(){ + $instans = new MockDatabase(); + global $_course; + $form_content=array(''); + $survey_data=array(''); + $tbl_survey_question= Database :: get_main_table(TABLE_MAIN_SHARED_SURVEY_QUESTION); + $res = $this->smanager->save_shared_question($form_content,$survey_data); + $instans->expectOnce($tbl_survey_question); + $this->assertTrue($res); + $this->assertTrue($instans); + //var_dump($res); + //var_dump($instans); + } + + public function testMoveSurveyQuestion(){ + $instans = new MockDatabase(); + $table_survey_question = Database :: get_course_table(TABLE_SURVEY_QUESTION); + $direction='moveup'; + $survey_question_id=01; + $survey_id=1; + /*$sql = "SELECT * FROM $table_survey_question WHERE survey_id='".Database::escape_string($survey_id)."' ORDER BY sort $sort"; + $result = api_sql_query($sql, __FILE__, __LINE__); + */ + $res = $this->smanager->move_survey_question($direction,$survey_question_id,$survey_id); + $this->assertTrue(is_null($res)); + //var_dump($res); + } + + public function testDeleteAllSurveyQuestions(){ + $instans = new MockDatabase(); + $table_survey_question = Database :: get_course_table(TABLE_SURVEY_QUESTION); + $survey_id=1; + $shared=false; + $sql = "DELETE from $table_survey_question WHERE survey_id='".Database::escape_string($survey_id)."'"; + $res = api_sql_query($sql, __FILE__, __LINE__); + $result = $this->smanager->delete_all_survey_questions($survey_id,$shared); + $instans->expectOnce($res); + $this->assertTrue(is_null($result)); + $this->assertTrue(is_bool($res)); + $this->assertTrue($res === true || $res === false); + //var_dump($result); + //var_dump($res); + } + + public function testDeleteSurveyQuestion(){ + $instans = new MockDatabase(); + $table_survey_question = Database :: get_course_table(TABLE_SURVEY_QUESTION); + $survey_id =1; + $question_id=01; + $shared=false; + $sql = "DELETE from $table_survey_question WHERE survey_id='".Database::escape_string($survey_id)."' AND question_id='".Database::escape_string($question_id)."'"; + $res = api_sql_query($sql, __FILE__, __LINE__); + $instans->expectOnce($res); + $result = $this->smanager->delete_survey_question($survey_id,$question_id); + $this->assertTrue(is_null($result)); + $this->assertTrue(is_object($instans)); + $this->assertFalse($res); + //var_dump($result); + //var_dump($res); + } + + public function testDeleteSharedSurveyQuestion(){ + $instans = new MockDatabase(); + $survey_id=1; + $question_id=01; + $table_survey_question = Database :: get_main_table(TABLE_MAIN_SHARED_SURVEY_QUESTION); + $table_survey_question_option = Database :: get_main_table(TABLE_MAIN_SHARED_SURVEY_QUESTION_OPTION); + $res = $this->smanager->delete_shared_survey_question($survey_id,$question_id); + $instans->expectOnce($table_survey_question); + $this->assertTrue(is_null($res)); + $this->assertTrue(is_object($instans)); + //var_dump($res); + } + + public function testSaveQuestionOptions(){ + $instans = new MockDatabase(); + $form_content=array('percentage'); + $survey_data=array('survey_share'); + $table_survey_question_option = Database :: get_course_table(TABLE_SURVEY_QUESTION_OPTION); + $instans->expectOnce($table_survey_question_option); + $res = $this->smanager->save_question_options($form_content,$survey_data); + $this->assertTrue(is_null($res)); + $this->assertTrue(is_object($instans)); + //var_dump($res); + //var_dump($table_survey_question_option); + } + + public function testSaveSharedQuestionOptions(){ + $instans = new MockDatabase(); + $form_content=array('answers'); + $survey_data=array(''); + $table_survey_question_option = Database :: get_main_table(TABLE_MAIN_SHARED_SURVEY_QUESTION_OPTION); + $sql = "DELETE FROM $table_survey_question_option WHERE question_id = '".Database::escape_string($form_content['shared_question_id'])."'"; + $result = api_sql_query($sql, __FILE__, __LINE__); + $instans->expectCallCount($result); + $res = $this->smanager->save_shared_question_options($form_content,$survey_data); + $this->assertTrue(is_bool($result)); + $this->assertTrue($result === true || $result === false); + $this->assertTrue(is_null($res)); + $this->assertNull($res); + //var_dump($res); + //var_dump($result); + } + + public function testDeleteAllSurveyQuestionsOptions(){ + $instans = new MockDatabase(); + $table_survey_question_option = Database :: get_course_table(TABLE_SURVEY_QUESTION_OPTION); + $survey_id=1; + $shared=false; + $sql = "DELETE from $table_survey_question_option WHERE survey_id='".Database::escape_string($survey_id)."'"; + $res = api_sql_query($sql, __FILE__, __LINE__); + $result = $this->smanager->delete_all_survey_questions_options($survey_id,$shared); + $instans->expectCallCount($res); + $this->assertTrue($result); + $this->assertFalse($res); + $this->assertTrue(is_bool($res)); + //var_dump($result); + //var_dump($res); + } + + public function testDeleteSurveyQuestionOption(){ + $instans = new MockDatabase(); + $survey_id=1; + $question_id=01; + $shared=false; + $table_survey_question_option = Database :: get_course_table(TABLE_SURVEY_QUESTION_OPTION); + $sql = "DELETE from $table_survey_question_option WHERE survey_id='".Database::escape_string($survey_id)."' AND question_id='".Database::escape_string($question_id)."'"; + $res = api_sql_query($sql, __FILE__, __LINE__); + $instans->expectOnce($res); + $instans->expectCallCount($res); + $result = $this->smanager->delete_survey_question_option($survey_id,$question_id,$shared); + if(is_bool($result)) + $this->assertTrue(is_bool($result)); + $this->assertTrue($result === true || $result===false); + $this->assertTrue($result); + if(is_bool($res)) + $this->assertTrue(is_bool($res)); + $this->assertTrue($res === true || $res===false); + $this->assertFalse($res); + //var_dump($result); + //var_dump($res); + } + + public function testDeleteAllSurveyAnswers(){ + $instans = new MockDatabase(); + $survey_id=1; + $table_survey_answer = Database :: get_course_table(TABLE_SURVEY_ANSWER); + $instans->expectCallCount($table_survey_answer); + $res = $this->smanager->delete_all_survey_answers($survey_id); + $this->assertTrue(is_bool($res)); + $this->assertTrue($res); + $this->assertTrue($res === true || $res === false); + $this->assertTrue($table_survey_answer); + //var_dump($res); + //var_dump($table_survey_answer); + } + + public function testGetPeopleWhoFilledSurvey(){ + $instans = new MockDatabase(); + $survey_id=1; + $all_user_info=false; + global $_course; + $table_survey_answer = Database :: get_course_table(TABLE_SURVEY_ANSWER, $_course['db_name']); + $table_user = Database :: get_main_table('user'); + $survey_data = survey_manager::get_survey($survey_id); + $sql = "SELECT DISTINCT user FROM $table_survey_answer WHERE survey_id= '".Database::escape_string($survey_data['survey_id'])."'"; + $res = api_sql_query($sql, __FILE__, __LINE__); + $instans->expectCallCount($table_user); + $result = $this->smanager->get_people_who_filled_survey($survey_id,$all_user_info); + $this->assertTrue(is_array($result)); + $this->assertNotNull($res); + $this->assertFalse($res); + $this->assertTrue(is_bool($res)); + $this->assertTrue($res=== true || $res === false); + $this->assertTrue($sql); + //var_dump($res); + //var_dump($result); + //var_dump($sql); + } + + public function testCreateForm(){ + $instans = new MockDisplay(); + global $charset; + global $survey_data; + $tool_name = 'AddQuestion'; + $tool_name = Display::return_icon(survey_manager::icon_question(Security::remove_XSS($_GET['type'])),get_lang(ucfirst(Security::remove_XSS($_GET['type']))),array('align'=>'middle', 'height'=>'22px')).' '; + $form_content=array(''); + $res = $this->squestion->create_form($form_content); + $instans->expectCallCount($tool_name); + $this->assertTrue($res); + $this->assertTrue($tool_name); + //var_dump($res); + //var_dump($tool_name); + } + + public function testRenderForm(){ + ob_start(); + $res = $this->squestion->render_form(); + ob_end_clean(); + $this->assertTrue(is_null($res)); + $this->assertNull($res); + //var_dump($res); + } + + public function testHandleAction(){ + global $config; + $form_content['answers']=array(''); + $message = 'PleaseEnterAQuestion'; + $max_answer = count($form_content['answers']); + foreach ($_POST['delete_answer'] as $key=>$value) { + $delete = $key; + } + $res = $this->squestion->handle_action($form_content); + $this->assertTrue(is_array($res)); + $this->assertTrue(isset($form_content['answers'][$max_answer-1])); + //var_dump($res); + } + + public function testAddRemoveButtons(){ + $form_content['answers'] =array(); + $res = $this->squestion->add_remove_buttons($form_content); + $this->assertTrue($res); + } + + + + +} + +?>