/test/class/block.class.php

https://github.com/easysoft/zentaopms · PHP · 688 lines · 333 code · 143 blank · 212 comment · 50 complexity · b12e6c76d46e083292ddc6727667b1cf MD5 · raw file

  1. <?php
  2. class blockTest
  3. {
  4. public function __construct()
  5. {
  6. global $tester;
  7. $this->objectModel = $tester->loadModel('block');
  8. }
  9. /**
  10. * Test save params.
  11. *
  12. * @param object $block
  13. * @param int $id
  14. * @param string $source
  15. * @param string $type
  16. * @param string $module
  17. * @access public
  18. * @return object
  19. */
  20. public function saveTest($block, $id, $source, $type, $module = 'my')
  21. {
  22. foreach($block as $key => $value) $_POST[$key] = $value;
  23. $this->objectModel->save($id, $source, $type, $module);
  24. unset($_POST);
  25. if(dao::isError()) a(dao::getError());
  26. if(dao::isError()) return dao::getError();
  27. $object = $this->objectModel->getByID($id);
  28. return $object;
  29. }
  30. /**
  31. * Get block by ID.
  32. *
  33. * @param int $blockID
  34. * @access public
  35. * @return void
  36. */
  37. public function getByIDTest($blockID)
  38. {
  39. $objects = $this->objectModel->getByID($blockID);
  40. if(dao::isError()) return dao::getError();
  41. return $objects;
  42. }
  43. /**
  44. * Get saved block config.
  45. *
  46. * @param int $id
  47. * @access public
  48. * @return object
  49. */
  50. public function getBlockTest($id)
  51. {
  52. $objects = $this->objectModel->getBlock($id);
  53. if(dao::isError()) return dao::getError();
  54. return $objects;
  55. }
  56. /**
  57. * Get last key.
  58. *
  59. * @param string $appName
  60. * @access public
  61. * @return int
  62. */
  63. public function getLastKeyTest($module = 'my')
  64. {
  65. $objects = $this->objectModel->getLastKey($module);
  66. $objects[$module] = $objects;
  67. if(dao::isError()) return dao::getError();
  68. return $objects;
  69. }
  70. /**
  71. * Get block list for account.
  72. *
  73. * @param string $appName
  74. * @access public
  75. * @return void
  76. */
  77. public function getBlockListTest($module = 'my', $type = '')
  78. {
  79. $objects = $this->objectModel->getBlockList($module, $type);
  80. if(dao::isError()) return dao::getError();
  81. return $objects;
  82. }
  83. /**
  84. * Get hidden blocks
  85. *
  86. * @access public
  87. * @return array
  88. */
  89. public function getHiddenBlocksTest($module = 'my')
  90. {
  91. $objects = $this->objectModel->getHiddenBlocks($module);
  92. if(dao::isError()) return dao::getError();
  93. if(empty($objects))
  94. {
  95. $objects['code'] = 'fail';
  96. $objects['message'] = '未获取到隐藏的区块';
  97. }
  98. return $objects;
  99. }
  100. /**
  101. * Test get data of welcome block.
  102. *
  103. * @access public
  104. * @return string
  105. */
  106. public function getWelcomeBlockDataTest()
  107. {
  108. $objects = $this->objectModel->getWelcomeBlockData();
  109. if(dao::isError()) return dao::getError();
  110. return json_encode($objects);
  111. }
  112. /**
  113. * Init block when account use first.
  114. *
  115. * @param string $module project|product|execution|qa|my
  116. * @param string $type scrum|waterfall|kanban
  117. * @access public
  118. * @return bool
  119. */
  120. public function initBlockTest($module, $type = '')
  121. {
  122. global $tester;
  123. $this->objectModel->initBlock($module, $type);
  124. if(dao::isError()) return dao::getError();
  125. $object = new stdclass();
  126. $account = $tester->app->user->account;
  127. $section = $module == 'project' ? $type . 'common' : 'common';
  128. $object->blockInited = $tester->loadModel('setting')->getItem("owner=$account&module=$module&section=$section&key=blockInited");
  129. $object->blockversion = $tester->loadModel('setting')->getItem("owner=$account&module=$module&section=block&key=initVersion");
  130. $blockData = $this->objectModel->getBlockList($module, $type);
  131. $object->blockData = current($blockData);
  132. return $object;
  133. }
  134. /**
  135. * Get block list.
  136. *
  137. * @param string $module
  138. * @param string $dashboard
  139. * @param object $model
  140. *
  141. * @access public
  142. * @return string
  143. */
  144. public function getAvailableBlocksTest($module = '', $dashboard = '', $model = '')
  145. {
  146. $objects = json_decode($this->objectModel->getAvailableBlocks($module, $dashboard, $model));
  147. if(dao::isError()) return dao::getError();
  148. return $objects;
  149. }
  150. public function getListParamsTest($module = '')
  151. {
  152. $objects = json_decode($this->objectModel->getListParams($module));
  153. if(dao::isError()) return dao::getError();
  154. return $objects;
  155. }
  156. /**
  157. * Test get todo param.
  158. *
  159. * @param string $module
  160. * @access public
  161. * @return string
  162. */
  163. public function getTodoParamsTest($module = '')
  164. {
  165. $objects = $this->objectModel->getTodoParams($module = '');
  166. if(dao::isError()) return dao::getError();
  167. return json_encode(json_decode($objects), JSON_UNESCAPED_UNICODE);
  168. }
  169. /**
  170. * Test get task params.
  171. *
  172. * @param string $module
  173. * @access public
  174. * @return string
  175. */
  176. public function getTaskParamsTest($module = '')
  177. {
  178. $objects = $this->objectModel->getTaskParams($module = '');
  179. if(dao::isError()) return dao::getError();
  180. return json_encode(json_decode($objects), JSON_UNESCAPED_UNICODE);
  181. }
  182. /**
  183. * Get Bug Params.
  184. *
  185. * @access public
  186. * @return json
  187. */
  188. public function getBugParamsTest($module = '')
  189. {
  190. $objects = json_decode($this->objectModel->getBugParams($module));
  191. if(dao::isError()) return dao::getError();
  192. return $objects;
  193. }
  194. /**
  195. * Get case params.
  196. *
  197. * @access public
  198. * @return json
  199. */
  200. public function getCaseParamsTest($module = '')
  201. {
  202. $objects = json_decode($this->objectModel->getCaseParams($module));
  203. if(dao::isError()) return dao::getError();
  204. return $objects;
  205. }
  206. /**
  207. * Test get testtask params.
  208. *
  209. * @param string $module
  210. * @access public
  211. * @return string
  212. */
  213. public function getTesttaskParamsTest($module = '')
  214. {
  215. $objects = $this->objectModel->getTesttaskParams($module = '');
  216. if(dao::isError()) return dao::getError();
  217. return json_encode(json_decode($objects), JSON_UNESCAPED_UNICODE);
  218. }
  219. /**
  220. * Test get story params.
  221. *
  222. * @param string $module
  223. * @access public
  224. * @return void
  225. */
  226. public function getStoryParamsTest($module = '')
  227. {
  228. $objects = $this->objectModel->getStoryParams($module);
  229. if(dao::isError()) return dao::getError();
  230. return json_encode(json_decode($objects), JSON_UNESCAPED_UNICODE);
  231. }
  232. /**
  233. * Get plan params.
  234. *
  235. * @access public
  236. * @return json
  237. */
  238. public function getPlanParamsTest()
  239. {
  240. $objects = $this->objectModel->getPlanParams();
  241. if(dao::isError()) return dao::getError();
  242. return $objects;
  243. }
  244. public function getReleaseParamsTest()
  245. {
  246. $objects = $this->objectModel->getReleaseParams();
  247. if(dao::isError()) return dao::getError();
  248. $objects = json_decode($objects);
  249. return $objects->count;
  250. }
  251. public function getProjectParamsTest()
  252. {
  253. $objects = $this->objectModel->getProjectParams();
  254. if(dao::isError()) return dao::getError();
  255. return $objects;
  256. }
  257. public function getProjectTeamParamsTest()
  258. {
  259. $objects = $this->objectModel->getProjectTeamParams();
  260. if(dao::isError()) return dao::getError();
  261. $objects = json_decode($objects);
  262. $return = '';
  263. foreach($objects as $type => $params)
  264. {
  265. $return .= "$type:{";
  266. foreach($params as $param => $paramValue)
  267. {
  268. if(is_object($paramValue))
  269. {
  270. foreach($paramValue as $key => $value) $return .= "$key=>$value,";
  271. }
  272. else
  273. {
  274. $return .= "$param:$paramValue,";
  275. }
  276. }
  277. $return = trim($return, ',');
  278. $return .= '};';
  279. }
  280. return $return;
  281. }
  282. /**
  283. * Get Build params.
  284. *
  285. * @access public
  286. * @return json
  287. */
  288. public function getBuildParamsTest()
  289. {
  290. $objects = json_decode($this->objectModel->getBuildParams());
  291. if(dao::isError()) return dao::getError();
  292. return $objects;
  293. }
  294. public function getProductParamsTest()
  295. {
  296. $objects = $this->objectModel->getProductParams();
  297. if(dao::isError()) return dao::getError();
  298. return $objects;
  299. }
  300. /**
  301. * Get statistic params.
  302. *
  303. * @param string $module product|project|execution|qa
  304. * @access public
  305. * @return string
  306. */
  307. public function getStatisticParamsTest($module = 'product')
  308. {
  309. $objects = $this->objectModel->getStatisticParams($module);
  310. if(dao::isError()) return dao::getError();
  311. return json_encode(json_decode($objects), JSON_UNESCAPED_UNICODE);
  312. }
  313. public function getProductStatisticParamsTest()
  314. {
  315. $objects = $this->objectModel->getProductStatisticParams();
  316. if(dao::isError()) return dao::getError();
  317. return $objects;
  318. }
  319. /**
  320. * Test get project statistic params.
  321. *
  322. * @access public
  323. * @return string
  324. */
  325. public function getProjectStatisticParamsTest()
  326. {
  327. $objects = $this->objectModel->getProjectStatisticParams();
  328. if(dao::isError()) return dao::getError();
  329. return json_encode(json_decode($objects), JSON_UNESCAPED_UNICODE);
  330. }
  331. /**
  332. * Get execution statistic params.
  333. *
  334. * @access public
  335. * @return void
  336. */
  337. public function getExecutionStatisticParamsTest()
  338. {
  339. $objects = json_decode($this->objectModel->getExecutionStatisticParams());
  340. if(dao::isError()) return dao::getError();
  341. return $objects;
  342. }
  343. public function getQaStatisticParamsTest()
  344. {
  345. $object = $this->objectModel->getQaStatisticParams();
  346. if(dao::isError()) return dao::getError();
  347. return json_decode($object);
  348. }
  349. public function getRecentProjectParamsTest()
  350. {
  351. $objects = $this->objectModel->getRecentProjectParams();
  352. if(dao::isError()) return dao::getError();
  353. return $objects;
  354. }
  355. /**
  356. * Test get waterfall issue param.
  357. *
  358. * @param string $module
  359. * @access public
  360. * @return string
  361. */
  362. public function getWaterfallIssueParamsTest($module = '')
  363. {
  364. $objects = $this->objectModel->getWaterfallIssueParams($module = '');
  365. if(dao::isError()) return dao::getError();
  366. return json_encode(json_decode($objects), JSON_UNESCAPED_UNICODE);
  367. }
  368. /**
  369. * Test get waterfall risk param.
  370. *
  371. * @param string $module
  372. * @access public
  373. * @return string
  374. */
  375. public function getWaterfallRiskParamsTest($module = '')
  376. {
  377. $objects = $this->objectModel->getWaterfallRiskParams($module = '');
  378. if(dao::isError()) return dao::getError();
  379. return json_encode(json_decode($objects), JSON_UNESCAPED_UNICODE);
  380. }
  381. /**
  382. * Get execution params.
  383. *
  384. * @access public
  385. * @return json
  386. */
  387. public function getExecutionParamsTest()
  388. {
  389. $objects = json_decode($this->objectModel->getExecutionParams());
  390. if(dao::isError()) return dao::getError();
  391. return $objects;
  392. }
  393. /**
  394. * Get assign to me params.
  395. *
  396. * @access public
  397. * @return json
  398. */
  399. public function getAssignToMeParamsTest()
  400. {
  401. $objects = json_decode($this->objectModel->getAssignToMeParams());
  402. if(dao::isError()) return dao::getError();
  403. return $objects;
  404. }
  405. /**
  406. * Get closed block pairs.
  407. *
  408. * @param string $closedBlock
  409. * @access public
  410. * @return array
  411. */
  412. public function getClosedBlockPairsTest($closedBlock)
  413. {
  414. $objects = $this->objectModel->getClosedBlockPairs($closedBlock);
  415. if(dao::isError()) return dao::getError();
  416. if(empty($objects))
  417. {
  418. $objects['code'] = 'fail';
  419. $objects['message'] = '未获取到关闭的区域';
  420. }
  421. return $objects;
  422. }
  423. /**
  424. * Test append count params.
  425. *
  426. * @param string|object $params
  427. * @access public
  428. * @return object
  429. */
  430. public function appendCountParamsTest($params = '')
  431. {
  432. $objects = $this->objectModel->appendCountParams($params);
  433. if(dao::isError()) return dao::getError();
  434. $string = '';
  435. foreach($objects as $key => $param)
  436. {
  437. if(is_array($param))
  438. {
  439. $string .= "$key:{";
  440. foreach($param as $key => $value) $string .= "$key:$value,";
  441. $string = trim($string, ',');
  442. $string .= '}';
  443. }
  444. else
  445. {
  446. $string .= "$key:$param";
  447. }
  448. $string .= ';';
  449. }
  450. return $string;
  451. }
  452. /**
  453. * Test check whether long block.
  454. *
  455. * @param object $block
  456. * @access public
  457. * @return bool
  458. */
  459. public function isLongBlockTest($block)
  460. {
  461. $bool = $this->objectModel->isLongBlock($block);
  462. if(dao::isError()) return dao::getError();
  463. return $bool ? 1 : 2;
  464. }
  465. public function checkAPITest($hash)
  466. {
  467. $objects = $this->objectModel->checkAPI($hash);
  468. if(dao::isError()) return dao::getError();
  469. return $objects;
  470. }
  471. /**
  472. * Get testtask params.
  473. *
  474. * @access public
  475. * @return string
  476. */
  477. public function getScrumTestParamsTest()
  478. {
  479. $objects = json_decode($this->objectModel->getScrumTestParams());
  480. if(dao::isError()) return dao::getError();
  481. return $objects;
  482. }
  483. public function getScrumListParamsTest($module = '')
  484. {
  485. $objects = $this->objectModel->getScrumListParams($module = '');
  486. if(dao::isError()) return dao::getError();
  487. $objects = json_decode($objects);
  488. return $objects->type;
  489. }
  490. public function getScrumOverviewParamsTest($module = '')
  491. {
  492. $objects = $this->objectModel->getScrumOverviewParams($module = '');
  493. if(dao::isError()) return dao::getError();
  494. return $objects;
  495. }
  496. /**
  497. * Get scrum roadmap list params.
  498. *
  499. * @access public
  500. * @return string
  501. */
  502. public function getScrumRoadMapParamsTest()
  503. {
  504. $objects = $this->objectModel->getScrumRoadMapParams();
  505. if(dao::isError()) return dao::getError();
  506. return $objects;
  507. }
  508. /**
  509. * Get scrum product list params.
  510. *
  511. * @access public
  512. * @return string
  513. */
  514. public function getScrumProductParamsTest()
  515. {
  516. $objects = json_decode($this->objectModel->getScrumProductParams());
  517. if(dao::isError()) return dao::getError();
  518. return $objects;
  519. }
  520. public function getProjectDynamicParamsTest($module = '')
  521. {
  522. $objects = $this->objectModel->getProjectDynamicParams($module = '');
  523. if(dao::isError()) return dao::getError();
  524. return $objects;
  525. }
  526. public function getSprintParamsTest($module = '')
  527. {
  528. $objects = $this->objectModel->getSprintParams($module = '');
  529. if(dao::isError()) return dao::getError();
  530. return $objects;
  531. }
  532. /**
  533. * Test get the total estimated man hours required.
  534. *
  535. * @param int $storyID
  536. * @access public
  537. * @return string
  538. */
  539. public function getStorysEstimateHoursTest($storyID)
  540. {
  541. $object = $this->objectModel->getStorysEstimateHours($storyID);
  542. if(dao::isError()) return dao::getError();
  543. return $object;
  544. }
  545. }