usermanager.lib.test.php 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392
  1. <?php //$id$
  2. //require_once('../../../simpletest/autorun.php');
  3. require_once (api_get_path(LIBRARY_PATH).'urlmanager.lib.php');
  4. require_once(api_get_path(LIBRARY_PATH).'usermanager.lib.php');
  5. class TestUserManager extends UnitTestCase
  6. {
  7. /*
  8. function testCreateUserReturnsInt() {
  9. $user = array('username' => 'ywarnier',
  10. 'pass' => 'ywarnier',
  11. 'firstname' => 'Yannick',
  12. 'lastname' => 'Warnier',
  13. 'auth_source' => 'platform',
  14. 'email' => 'yannick.warnier@testdokeos.com',
  15. 'status' => 6,
  16. 'creator_id' => 1,
  17. 'active' => 1,
  18. );
  19. $res = UserManager::create_user($user['firstname'],$user['lastname'],$user['status'],$user['email'],$user['username'],$user['pass'],null,null,null,null,$user['auth_source'],null,$user['active']);
  20. //var_dump($res);
  21. $this->assertTrue(is_bool($res));
  22. $res = UserManager::delete_user($res);
  23. }
  24. */
  25. function testCreateUser() {
  26. $firstName='test_first';
  27. $lastName='test_last';
  28. $status='1';
  29. $email='test@dokeos.com';
  30. $loginName='testlogin';
  31. $password='testlogin';
  32. $official_code='testcode';
  33. $language='english';
  34. $phone = '';
  35. $picture_uri ='';
  36. global $_user, $userPasswordCrypted;
  37. ob_start();
  38. $res= ob_get_contents();
  39. UserManager::create_user($firstName, $lastName, $status, $email, $loginName, $password, $official_code, $language, $phone, $picture_uri);
  40. ob_end_clean();
  41. //var_dump($res);
  42. $this->assertTrue(is_string($res));
  43. }
  44. /*
  45. function testDeleteUserReturnsTrue() {
  46. $user = array('username' => 'ywarnier',
  47. 'pass' => 'ywarnier',
  48. 'firstname' => 'Yannick',
  49. 'lastname' => 'Warnier',
  50. 'status' => 6,
  51. 'auth_source' => 'platform',
  52. 'email' => 'yannick.warnier@testdokeos.com',
  53. 'creator_id' => 1,
  54. 'active' => 1,
  55. );
  56. $res = UserManager::create_user($user['firstname'],$user['lastname'],$user['status'],$user['email'],$user['username'],$user['pass'],null,null,null,null,$user['auth_source'],null,$user['active']);
  57. $res = UserManager::delete_user($res);
  58. $this->assertTrue($res);
  59. }
  60. */
  61. function testDeleteUser() {
  62. $user_id='';
  63. $res = UserManager::delete_user($user_id);
  64. $this->assertTrue(is_bool($res));
  65. $_configuration['user_id']='';
  66. $res1= UserManager::delete_user($_configuration['user_id']);
  67. $this->assertTrue(is_bool($res1));
  68. //var_dump($res1);
  69. }
  70. /*
  71. function testUpdateUser() {
  72. $user = array('username' => 'ywarnier',
  73. 'pass' => 'ywarnier',
  74. 'firstname' => 'Yannick',
  75. 'lastname' => 'Warnier',
  76. 'status' => 6,
  77. 'auth_source' => 'platform',
  78. 'email' => 'yannick.warnier@testdokeos.com',
  79. 'creator_id' => 1,
  80. 'active' => 1,
  81. );
  82. $update = array('user_id'=>'12',
  83. 'firstname'=>'Ricardo',
  84. 'lastname'=>'Rodriguez',
  85. 'username'=>'richi',
  86. 'email'=>'xxxx@xxxx.com',
  87. 'status'=>6,
  88. 'official_code'=>'2121',
  89. 'phone'=>'',
  90. 'picture_uri'=>'',
  91. 'expiration_date'=>'',
  92. 'active'=>1
  93. );
  94. $res = UserManager::create_user($user['firstname'],$user['lastname'],$user['status'],$user['email'],$user['username'],$user['pass'],null,null,null,null,$user['auth_source'],null,$user['active']);
  95. $this->assertTrue(is_bool($res));
  96. $res = UserManager::update_user($update['user_id'],$update['firstname'],$update['lastname'],$update['username'],null,null,$update['email'],$update['status'],$update['official_code'],$update['phone'],
  97. $update['picture_uri'],$update['expiration_date'],$update['active'],null,null,null,null);
  98. $this->assertTrue($res);
  99. $res=UserManager::delete_user($res);
  100. $this->assertTrue(is_bool($res));
  101. }*/
  102. /*
  103. function testCreateExtraField() {
  104. $extra = array('fieldvarname' =>'nuevo campo',
  105. 'fieldtype' => '2',
  106. 'fieldtitle' => 'english',
  107. 'fielddefault' => 'default'
  108. );
  109. $res = UserManager::create_extra_field($extra['fieldvarname'],$extra['fieldtype'],$extra['fieldtitle'],$extra['fielddefault'],null);
  110. $this->assertTrue('/\d/',$res);
  111. }*/
  112. function testCreateExtraField() {
  113. $fieldvarname='nuevo campo';
  114. $fieldtype='1';
  115. $fieldtitle='english';
  116. $fielddefault='5';
  117. $res=UserManager::create_extra_field($fieldvarname, $fieldtype, $fieldtitle, $fielddefault,null);
  118. //var_dump($res);
  119. $this->assertTrue(is_numeric($fieldtype));
  120. }
  121. function testCanDeleteUser() {
  122. $user_id='';
  123. $res=UserManager::can_delete_user($user_id);
  124. $this->assertTrue(is_bool($res));
  125. }
  126. function testAddApiKey() {
  127. $res=UserManager::add_api_key();
  128. $this->assertTrue(is_bool($res));
  129. }
  130. function testBuildProductionList() {
  131. $user_id= '';
  132. $res=UserManager::build_production_list($user_id, $force = false, $showdelete=false);
  133. $this->assertTrue(is_string($res));
  134. }
  135. function testDeleteApiKey() {
  136. $key_id= '';
  137. $res=UserManager::delete_api_key($key_id);
  138. //var_dump($res);
  139. $this->assertTrue(is_bool($res));
  140. }
  141. function testGetApiKeyId() {
  142. $user_id= '';
  143. $api_service= '';
  144. $res=UserManager::get_api_key_id($user_id,$api_service);
  145. //var_dump($res);
  146. $this->assertTrue(is_bool($res));
  147. }
  148. function testGetApiKeys() {
  149. $res=UserManager::get_api_keys();
  150. //var_dump($res);
  151. $this->assertTrue(is_bool($res));
  152. }
  153. function testGetExtraFieldInformation() {
  154. $field_id='1';
  155. $res=UserManager::get_extra_field_information($field_id);
  156. $this->assertTrue(is_array($res));
  157. }
  158. function testGetExtraFieldInformationByName() {
  159. $sql="SELECT 1";
  160. $field_variable=Database::query($sql,__FILE__,__LINE__);
  161. $res=UserManager::get_extra_field_information_by_name($field_variable);
  162. //var_dump($res);
  163. $this->assertTrue(is_bool($res));
  164. }
  165. function testGetExtraFieldOptions() {
  166. $field_name='field name';
  167. $res=UserManager::get_extra_field_options($field_name);
  168. //var_dump($res);
  169. $this->assertTrue(!(bool)$res);
  170. }
  171. function testGetEextraFields() {
  172. $res=UserManager::get_extra_fields($from=0, $number_of_items=0, $column=5, $direction='ASC', $all_visibility=true);
  173. $this->assertTrue($res);
  174. }
  175. function testGetExtraUserData() {
  176. $user_id=1;
  177. $res=UserManager::get_extra_user_data($user_id, null,null,null);
  178. $this->assertFalse($res);
  179. }
  180. function testGetExtraUserDataByField() {
  181. $user_id=1;
  182. $field_variable='field variable';
  183. $res=UserManager::get_extra_user_data_by_field($user_id, $field_variable, null,null, null);
  184. $this->assertTrue(is_array($res));
  185. }
  186. function testGetExtraUserDataByValue(){
  187. $field_variable='able';
  188. $field_value=454;
  189. $res=UserManager::get_extra_user_data_by_value($field_variable, $field_value, null);
  190. $this->assertTrue(is_array($res));
  191. }
  192. function testGetNumberOfExtraFields() {
  193. $res=UserManager::get_number_of_extra_fields($all_visibility=true);
  194. $this->assertFalse(!(bool)$res);
  195. }
  196. function testGetNumberOfUsers() {
  197. $res=UserManager::get_number_of_users();
  198. $this->assertFalse(!(bool)$res);
  199. }
  200. function testGetPersonalSessionCourseList() {
  201. $user_id=1;
  202. global $_configuration;
  203. $res=UserManager::get_personal_session_course_list($user_id);
  204. //var_dump($res);
  205. $this->assertTrue(is_array($res));
  206. }
  207. function testGetPictureUser() {
  208. $user_id=1;
  209. $picture_file='unknown.jpg';
  210. $height= 200;
  211. $res=UserManager::get_picture_user($user_id, $picture_file, $height, null, null);
  212. $this->assertFalse(!(bool)$res);
  213. }
  214. function testGetTeacherList() {
  215. ob_start();
  216. $course_id='1212';
  217. UserManager::get_teacher_list($course_id,null);
  218. $res =ob_get_contents();
  219. ob_end_clean();
  220. $this->assertFalse(!(bool)$res);
  221. }
  222. function testGetUserIdFromUsername() {
  223. $username='arthur3';
  224. $res=UserManager::get_user_id_from_username($username);
  225. $this->assertTrue(!(bool)$res);
  226. }
  227. function testGetUserInfo() {
  228. $username='arthur2';
  229. $res=UserManager::get_user_info($username);
  230. $this->assertTrue(!(bool)$res);
  231. }
  232. function testGetUserInfoById() {
  233. $user_id='2';
  234. $res=UserManager::get_user_info_by_id($user_id);
  235. //var_dump($res);
  236. $this->assertTrue(is_array($res));
  237. }
  238. function testGetUserList() {
  239. $res=UserManager::get_user_list(null,null);
  240. $this->assertTrue(is_array($res));
  241. }
  242. function testGetUserListLike() {
  243. $res=UserManager::get_user_list_like(null,null);
  244. $this->assertTrue(is_array($res));
  245. }
  246. function testGetUserPicturePathById() {
  247. $id=5;
  248. $res=UserManager::get_user_picture_path_by_id($id,null,null,null);
  249. $this->assertTrue(is_array($res));
  250. }
  251. function testGetUserProductions() {
  252. $user_id='1';
  253. $res=UserManager::get_user_productions($user_id);
  254. $this->assertFalse(is_array($res===0));
  255. }
  256. function testGetUserUploadFilesByCourse() {
  257. $user_id='1';
  258. $course='MATH';
  259. $res=UserManager::get_user_upload_files_by_course($user_id, $course,null);
  260. $this->assertTrue(is_string($res));
  261. }
  262. function testIsAdmin() {
  263. $user_id=1;
  264. $res=UserManager::is_admin($user_id);
  265. //var_dump($res);
  266. $this->assertTrue(is_bool($res));
  267. }
  268. function testIsExtraFieldAvailable() {
  269. $fieldname='name3';
  270. $res=UserManager::is_extra_field_available($fieldname);
  271. $this->assertFalse(is_string($res));
  272. }
  273. function testIsUsernameAvailable() {
  274. $username='Arthur';
  275. $res=UserManager::is_username_available($username);
  276. $this->assertFalse(is_string($res));
  277. }
  278. function testRemoveUserProduction() {
  279. $user_id=1;
  280. $production='my_files';
  281. $res=UserManager::remove_user_production($user_id,$production);
  282. $this->assertTrue(is_null($res));
  283. }
  284. function testResizePicture() {
  285. $file='';
  286. $max_size_for_picture='';
  287. $res=UserManager::resize_picture($file, $max_size_for_picture);
  288. $this->assertTrue($res instanceof image);
  289. }
  290. function testSaveExtraFieldChanges() {
  291. $fieldid='1';
  292. $fieldvarname='name';
  293. $fieldtype='1';
  294. $fieldtitle='title';
  295. $fielddefault='5';
  296. $res=UserManager::save_extra_field_changes($fieldid, $fieldvarname, $fieldtype, $fieldtitle, $fielddefault, null);
  297. $this->assertFalse(is_a($res,UserManager));
  298. $this->assertNotNull($res,'');
  299. $this->assertTrue($res);
  300. }
  301. function testSendMessageInOutbox() {
  302. $email_administrator='arthur@dokeos.com';
  303. $user_id='1';
  304. $title='hola í';
  305. $content='prueba de este í mensaje';
  306. global $charset;
  307. $res=UserManager::send_message_in_outbox($email_administrator,$user_id,$title, $content);
  308. $this->assertNull($res);
  309. $this->assertTrue(is_null($res));
  310. }
  311. /*
  312. //DEPRECATED
  313. function testSuscribeUsersToSession() {
  314. $id_session=1;
  315. $UserList='';
  316. $res=UserManager::suscribe_users_to_session($id_session,$UserList);
  317. $this->assertTrue(is_null($res));
  318. }
  319. */
  320. function testUpdateApiKey() {
  321. $user_id=121;
  322. $api_service='string';
  323. $res=UserManager::update_api_key($user_id,$api_service);
  324. $this->assertTrue(is_numeric($user_id),is_string($api_service));
  325. $this->assertTrue(is_numeric($res));
  326. $this->assertTrue($this->$res===null);
  327. $this->assertNull(null,$res);
  328. }
  329. function testUpdateExtraField() {
  330. $fid=5;
  331. $columns=array();
  332. $res=UserManager::update_extra_field($fid,$columns);
  333. $this->assertTrue(is_bool($res));
  334. }
  335. function testUpdateExtraFieldValue() {
  336. $user_id='121';
  337. $fname='name';
  338. $res=UserManager::update_extra_field_value($user_id,$fname,null);
  339. $this->assertTrue(is_bool($res));
  340. }
  341. function testUpdateOpenid() {
  342. $user_id='121';
  343. $openid='default';
  344. $res=UserManager::update_openid($user_id, $openid);
  345. $this->assertTrue(is_bool($res));
  346. }
  347. }
  348. ?>