test_suite.php 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199
  1. <?php
  2. //Set the time limit for the tests
  3. ini_set('memory_limit','256M');
  4. $maindir = dirname(__FILE__).'/../main/';
  5. $libdir = dirname(__FILE__).'/../main/inc/lib/';
  6. $incdir = dirname(__FILE__).'/../main/inc/';
  7. //Need the ob start and clean else will show the objects
  8. require_once $incdir.'global.inc.php';
  9. //List of files than need the tests
  10. require_once 'simpletest/unit_tester.php';
  11. require_once 'simpletest/web_tester.php';
  12. require_once 'simpletest/mock_objects.php';
  13. require_once 'simpletest/autorun.php';
  14. require_once $libdir.'urlmanager.lib.php';
  15. require_once $libdir.'fileDisplay.lib.php';
  16. require_once $maindir.'permissions/permissions_functions.inc.php';
  17. require_once $libdir.'groupmanager.lib.php';
  18. require_once $libdir.'course.lib.php';
  19. require_once $libdir.'usermanager.lib.php';
  20. require_once $libdir.'social.lib.php';
  21. require_once $libdir.'xht.lib.php';
  22. require_once $libdir.'xmd.lib.php';
  23. require_once $libdir.'formvalidator/FormValidator.class.php';
  24. //Need the ob start and clean else will show the objects
  25. ob_start();
  26. require_once $incdir.'lib/course_document.lib.php';
  27. require_once $incdir.'lib/banner.lib.php';
  28. require_once $incdir.'lib/add_course.lib.inc.php';
  29. require_once $incdir.'tool_navigation_menu.inc.php';
  30. require_once $incdir.'banner.inc.php';
  31. ob_end_clean();
  32. //List of files than need the tests since chamilo
  33. require_once $maindir.'admin/calendar.lib.php';
  34. require_once $maindir.'admin/statistics/statistics.lib.php';
  35. require_once $incdir.'lib/usermanager.lib.php';
  36. require_once $maindir.'survey/survey.lib.php';
  37. require_once $maindir.'install/install_upgrade.lib.php';
  38. require_once $incdir.'lib/fileManage.lib.php';
  39. class AllTestsSuite extends TestSuite {
  40. function setUp() {
  41. global $_configuration, $_user, $_course, $cidReq;
  42. $cidReq = 'COURSEX';
  43. // check if course exists
  44. $table_course = Database::get_main_table(TABLE_MAIN_COURSE);
  45. $sql = "SELECT code FROM $table_course WHERE code = '$cidReq' ";
  46. $rs = Database::query($sql, __FILE__, __LINE__);
  47. $row = Database::fetch_row($rs);
  48. if (empty($row[0])) {
  49. // create a course
  50. $course_datos = array(
  51. 'wanted_code'=> $cidReq,
  52. 'title'=>$cidReq,
  53. 'tutor_name'=>'John Doe',
  54. 'category_code'=>'LANG',
  55. 'course_language'=>'spanish',
  56. 'course_admin_id'=>'001',
  57. 'db_prefix'=> $_configuration['db_prefix'],
  58. 'firstExpirationDelay'=>'999'
  59. );
  60. $res = create_course($course_datos['wanted_code'], $course_datos['title'],
  61. $course_datos['tutor_name'], $course_datos['category_code'],
  62. $course_datos['course_language'],$course_datos['course_admin_id'],
  63. $course_datos['db_prefix'], $course_datos['firstExpirationDelay']);
  64. }
  65. $course_table = Database::get_main_table(TABLE_MAIN_COURSE);
  66. $course_cat_table = Database::get_main_table(TABLE_MAIN_CATEGORY);
  67. $sql = "SELECT course.*, course_category.code faCode, course_category.name faName
  68. FROM $course_table
  69. LEFT JOIN $course_cat_table
  70. ON course.category_code = course_category.code
  71. WHERE course.code = '$cidReq'";
  72. $result = Database::query($sql,__FILE__,__LINE__);
  73. //create the session
  74. if (Database::num_rows($result)>0) {
  75. $cData = Database::fetch_array($result);
  76. $_cid = $cData['code' ];
  77. $_course = array();
  78. $_course['id' ] = $cData['code' ]; //auto-assigned integer
  79. $_course['name' ] = $cData['title' ];
  80. $_course['official_code'] = $cData['visual_code' ]; // use in echo
  81. $_course['sysCode' ] = $cData['code' ]; // use as key in db
  82. $_course['path' ] = $cData['directory']; // use as key in path
  83. $_course['dbName' ] = $cData['db_name' ]; // use as key in db list
  84. $_course['dbNameGlu' ] = $_configuration['table_prefix'] . $cData['db_name'] . $_configuration['db_glue']; // use in all queries
  85. $_course['titular' ] = $cData['tutor_name' ];
  86. $_course['language' ] = $cData['course_language' ];
  87. $_course['extLink' ]['url' ] = $cData['department_url' ];
  88. $_course['extLink' ]['name'] = $cData['department_name'];
  89. $_course['categoryCode'] = $cData['faCode' ];
  90. $_course['categoryName'] = $cData['faName' ];
  91. $_course['visibility' ] = $cData['visibility'];
  92. $_course['subscribe_allowed'] = $cData['subscribe'];
  93. $_course['unubscribe_allowed'] = $cData['unsubscribe'];
  94. api_session_register('_cid');
  95. api_session_register('_course');
  96. }
  97. $_SESSION['_user']['user_id'] = 1;
  98. $_user['user_id'] = $_SESSION['_user']['user_id'];
  99. $_SESSION['is_courseAdmin'] = 1;
  100. }
  101. function AllTestsSuite() {
  102. $this->setUp();
  103. $this->TestSuite('All tests suite');
  104. //List of files from all.test.php
  105. /* //funciones corregidas por Ricardo
  106. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/add_course.lib.inc.test.php');
  107. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/blog.lib.test.php');
  108. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/classmanager.lib.test.php');
  109. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/course.lib.test.php');
  110. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/database.lib.test.php');
  111. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/debug.lib.inc.test.php');
  112. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/display.lib.test.php');
  113. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/document.lib.test.php');
  114. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/events.lib.inc.test.php');
  115. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/fileDisplay.lib.test.php');
  116. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/fileUpload.lib.test.php');
  117. // problemas con el envio de cabeceras - faltan corregir estas funciones
  118. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/export.lib.inc.test.php'); //20 excepciones en testExportTableCsv, testExportTableXls, testExportTableXml, testExportComplexTableXml.
  119. */ $this->addTestFile(dirname(__FILE__).'/main/inc/lib/fileManage.lib.test.php'); // 1excepcion testSetDefaultSettings
  120. /* $this->addTestFile(dirname(__FILE__).'/main/inc/lib/geometry.lib.test.php');
  121. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/groupmanager.lib.test.php');
  122. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/image.lib.test.php');
  123. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/import.lib.test.php');
  124. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/internationalization.lib.test.php');
  125. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/legal.lib.test.php');
  126. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/mail.lib.inc.test.php');
  127. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/main_api.lib.test.php');
  128. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/message.lib.test.php');
  129. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/online.inc.test.php');
  130. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/security.lib.test.php');
  131. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/session_handler.class.test.php');
  132. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/sessionmanager.lib.test.php');
  133. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/specific_fields_manager.lib.test.php');
  134. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/social.lib.test.php');
  135. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/sortabletable.class.test.php');
  136. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/stats.lib.inc.test.php');
  137. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/statsUtils.lib.inc.test.php');
  138. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/surveymanager.lib.test.php');
  139. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/system_announcements.lib.test.php');
  140. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/tablesort.lib.test.php');
  141. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/text.lib.test.php');
  142. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/tracking.lib.test.php');
  143. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/urlmanager.lib.test.php');
  144. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/usermanager.lib.test.php');
  145. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/xht.lib.test.php');
  146. $this->addTestFile(dirname(__FILE__).'/main/inc/lib/xmd.lib.test.php');
  147. //Funciones corregidas por Arthur
  148. //List of files from all.test1.php
  149. /* $this->addTestFile(dirname(__FILE__).'/main/inc/banner.lib.test.php');
  150. $this->addTestFile(dirname(__FILE__).'/main/inc/course_document.lib.test.php');
  151. $this->addTestFile(dirname(__FILE__).'/main/inc/tool_navigation_menu.inc.test.php');
  152. //List of files from all.test2.php
  153. $this->addTestFile(dirname(__FILE__).'/main/admin/calendar.lib.test.php');
  154. $this->addTestFile(dirname(__FILE__).'/main/admin/statistics/statistics.lib.test.php');
  155. $this->addTestFile(dirname(__FILE__).'/main/auth/lost_password.lib.test.php');
  156. $this->addTestFile(dirname(__FILE__).'/main/auth/openid/xrds.lib.test.php');
  157. $this->addTestFile(dirname(__FILE__).'/main/chat/chat_functions.lib.test.php');
  158. $this->addTestFile(dirname(__FILE__).'/main/conference/get_translation.lib.test.php');
  159. $this->addTestFile(dirname(__FILE__).'/main/exercice/hotpotatoes.lib.test.php');
  160. $this->addTestFile(dirname(__FILE__).'/main/newscorm/scorm.lib.test.php');
  161. $this->addTestFile(dirname(__FILE__).'/main/survey/survey.lib.test.php');
  162. $this->addTestFile(dirname(__FILE__).'/main/user/userInfoLib.test.php');
  163. $this->addTestFile(dirname(__FILE__).'/main/webservices/user_import/import.lib.test.php');
  164. $this->addTestFile(dirname(__FILE__).'/main/work/work.lib.test.php');
  165. $this->addTestFile(dirname(__FILE__).'/main/install/install_upgrade.lib.test.php');
  166. //List of files from all.test3.php
  167. $this->addTestFile(dirname(__FILE__).'/main/admin/sub_language.class.test.php');
  168. */
  169. }
  170. }
  171. $test = &new AllTestsSuite();
  172. ?>