diff --git a/test/class/tree.class.php b/test/class/tree.class.php index 9ea4ca8e94..1a658633b8 100644 --- a/test/class/tree.class.php +++ b/test/class/tree.class.php @@ -7,22 +7,36 @@ class treeTest $this->objectModel = $tester->loadModel('tree'); } + /** + * Test get module by id. + * + * @param int $moduleID + * @access public + * @return object + */ public function getByIDTest($moduleID) { - $objects = $this->objectModel->getByID($moduleID); + $object = $this->objectModel->getByID($moduleID); if(dao::isError()) return dao::getError(); - return $objects; + return $object; } + /** + * get all module pairs with path. + * + * @param string $type + * @access public + * @return int + */ public function getAllModulePairsTest($type = 'task') { - $objects = $this->objectModel->getAllModulePairs($type = 'task'); + $objects = $this->objectModel->getAllModulePairs($type); if(dao::isError()) return dao::getError(); - return $objects; + return count($objects); } /** @@ -44,22 +58,42 @@ class treeTest return $string; } + /** + * Test create an option menu in html. + * + * @param int $rootID + * @param string $type + * @param int $startModule + * @param int $branch + * @access public + * @return int + */ public function getOptionMenuTest($rootID, $type = 'story', $startModule = 0, $branch = 0) { - $objects = $this->objectModel->getOptionMenu($rootID, $type = 'story', $startModule = 0, $branch = 0); + $objects = $this->objectModel->getOptionMenu($rootID, $type, $startModule, $branch); if(dao::isError()) return dao::getError(); - return $objects; + return count($objects); } + /** + * getModulePairsTest + * + * @param int $rootID + * @param string $viewType + * @param string $showModule + * @param string $extra + * @access public + * @return int + */ public function getModulePairsTest($rootID, $viewType = 'story', $showModule = 'end', $extra = '') { - $objects = $this->objectModel->getModulePairs($rootID, $viewType = 'story', $showModule = 'end', $extra = ''); + $objects = $this->objectModel->getModulePairs($rootID, $viewType, $showModule, $extra); if(dao::isError()) return dao::getError(); - return $objects; + return count($objects); } public function getTaskOptionMenuTest($rootID, $productID = 0, $startModule = 0, $extra = '') @@ -176,16 +210,21 @@ class treeTest return $objects; } - public function createStoryLinkTest($type, $module, $extra = array()) + public function createStoryLinkTest($moduleID, $extra = array()) { - $objects = $this->objectModel->createStoryLink($type, $module, $extra = array()); + $type = ''; + $module = $this->objectModel->getByID($moduleID); + + $link = $this->objectModel->createStoryLink($type, $module, $extra); if(dao::isError()) return dao::getError(); - return $objects; + $string = preg_replace("/.*(projectstory|execution|product).*(title='.*').*/", '$1 $2', $link); + $string = str_replace("\n", '', $string); + return $string; } - public function createLineLinkTest($type, $module, $extra) + public function createLineLinkTest($moduleID, $extra) { $objects = $this->objectModel->createLineLink($type, $module, $extra); @@ -194,13 +233,26 @@ class treeTest return $objects; } - public function createTaskLinkTest($type, $module, $extra) + /** + * Test create task link. + * + * @param int $moduleID + * @param int $extra + * @access public + * @return string + */ + public function createTaskLinkTest($moduleID, $extra) { - $objects = $this->objectModel->createTaskLink($type, $module, $extra); + $type = ''; + $module = $this->objectModel->getByID($moduleID); + + $link = $this->objectModel->createTaskLink($type, $module, $extra); if(dao::isError()) return dao::getError(); - return $objects; + $string = preg_replace("/.*task.(\d*).*byModule.(\d*).*(title='.*').*/", '$1 $2 $3', $link); + $string = str_replace("\n", '', $string); + return $string; } public function createProjectStoryLinkTest($type, $module, $extra) @@ -212,13 +264,25 @@ class treeTest return $objects; } - public function createRequirementLinkTest($type, $module) + /** + * Test create requirment link. + * + * @param int $moduleID + * @access public + * @return string + */ + public function createRequirementLinkTest($moduleID) { - $objects = $this->objectModel->createRequirementLink($type, $module); + $type = ''; + $module = $this->objectModel->getByID($moduleID); + + $link = $this->objectModel->createBugLink($type, $module); if(dao::isError()) return dao::getError(); - return $objects; + $string = preg_replace("/.*(title='.*').*/", '$1', $link); + $string = str_replace("\n", '', $string); + return $string; } public function createDocLinkTest($type, $module, $extra = '') @@ -242,13 +306,18 @@ class treeTest return substr($link, 0, 15); } - public function createTaskManageLinkTest($type, $module, $extra) + public function createTaskManageLinkTest($moduleID, $extra) { - $objects = $this->objectModel->createTaskManageLink($type, $module, $extra); + $type = ''; + $module = $this->objectModel->getByID($moduleID); + + $link = $this->objectModel->createTaskManageLink($type, $module, $extra); if(dao::isError()) return dao::getError(); - return $objects; + $string = preg_replace("/((.*) ([\x{4e00}-\x{9fa5}]*)<\/a>.*)|( )/u", '$2 $3 $4', $link); + $string = str_replace("\n", '', $string); + return $string; } /** @@ -272,6 +341,14 @@ class treeTest return $string; } + /** + * Create case link. + * + * @param int $moduleID + * @param array $extra + * @access public + * @return string + */ public function createCaseLinkTest($moduleID, $extra = array('branchID' => 0)) { $type = ''; @@ -286,13 +363,26 @@ class treeTest return $string; } - public function createTestTaskLinkTest($type, $module, $extra) + /** + * Test create test task link. + * + * @param int $moduleID + * @param int $extra + * @access public + * @return string + */ + public function createTestTaskLinkTest($moduleID, $extra) { - $objects = $this->objectModel->createTestTaskLink($type, $module, $extra); + $type = ''; + $module = $this->objectModel->getByID($moduleID); + + $link = $this->objectModel->createTestTaskLink($type, $module, $extra); if(dao::isError()) return dao::getError(); - return $objects; + $string = preg_replace("/.*(title='.*').*/", '$1', $link); + $string = str_replace("\n", '', $string); + return $string; } /** @@ -391,13 +481,22 @@ class treeTest return $objects; } + /** + * Test get id list of a module's childs. + * + * @param int $moduleID + * @access public + * @return string + */ public function getAllChildIdTest($moduleID) { $objects = $this->objectModel->getAllChildId($moduleID); if(dao::isError()) return dao::getError(); - return $objects; + $ids = ''; + foreach($objects as $objectID) $ids .= ',' . $objectID; + return $ids; } public function getProjectModuleTest($projectID, $productID = 0) @@ -409,22 +508,38 @@ class treeTest return $objects; } + /** + * Test get parents of a module. + * + * @param int $moduleID + * @access public + * @return string + */ public function getParentsTest($moduleID) { $objects = $this->objectModel->getParents($moduleID); if(dao::isError()) return dao::getError(); - return $objects; + $ids = ''; + foreach($objects as $object) $ids .= ',' . $object->id; + return $ids; } + /** + * Test get product by moduleID. + * + * @param int $moduleID + * @access public + * @return object + */ public function getProductTest($moduleID) { - $objects = $this->objectModel->getProduct($moduleID); + $object = $this->objectModel->getProduct($moduleID); if(dao::isError()) return dao::getError(); - return $objects; + return $object; } public function getStoryModuleTest($moduleID) @@ -436,9 +551,18 @@ class treeTest return $objects; } + /** + * Test get modules name. + * + * @param array $moduleIdList + * @param bool $allPath + * @param bool $branchPath + * @access public + * @return array + */ public function getModulesNameTest($moduleIdList, $allPath = true, $branchPath = false) { - $objects = $this->objectModel->getModulesName($moduleIdList, $allPath = true, $branchPath = false); + $objects = $this->objectModel->getModulesName($moduleIdList, $allPath, $branchPath); if(dao::isError()) return dao::getError(); @@ -493,21 +617,40 @@ class treeTest return $type == 'story' ? count($objects) : 0; } + /** + * Test delete a module. + * + * @param int $moduleID + * @param object $null + * @access public + * @return object + */ public function deleteTest($moduleID, $null = null) { - $objects = $this->objectModel->delete($moduleID, $null = null); + $this->objectModel->delete($moduleID, $null); if(dao::isError()) return dao::getError(); - return $objects; + $object = $this->objectModel->getByID($moduleID); + return $object; } + /** + * Test fix the path, grade fields according to the id and parent fields. + * + * @param int $root + * @param string $type + * @access public + * @return object + */ public function fixModulePathTest($root, $type) { - $objects = $this->objectModel->fixModulePath($root, $type); + $this->objectModel->fixModulePath($root, $type); if(dao::isError()) return dao::getError(); + global $tester; + $objects = $tester->dao->select('*')->from(TABLE_MODULE)->where('root')->eq($root)->andWhere('type')->eq($type)->andWhere('deleted')->eq(0)->fetchAll('id'); return $objects; } @@ -550,13 +693,28 @@ class treeTest return $objects; } - public function getDataStructureTest($stmt, $viewType, $keepModules = array()) + /** + * Test get full task tree. + * + * @param int $root + * @param string $viewType + * @param array $keepModules + * @access public + * @return string + */ + public function getDataStructureTest($root, $viewType, $keepModules = array()) { - $objects = $this->objectModel->getDataStructure($stmt, $viewType, $keepModules = array()); + global $tester; + + $stmt = $tester->dbh->query($this->objectModel->buildMenuQuery($root, $viewType)); + + $objects = $this->objectModel->getDataStructure($stmt, $viewType, $keepModules); if(dao::isError()) return dao::getError(); - return $objects; + $child = ''; + foreach($objects as $object) $child .= isset($object->children) ? "$object->id:" . count($object->children) . ';' : "$object->id:0;"; + return $child; } public function getDocStructureTest() @@ -565,6 +723,8 @@ class treeTest if(dao::isError()) return dao::getError(); - return $objects; + $child = ''; + foreach($objects as $object) $child .= isset($object[0]->children) ? $object[0]->id . ':' . count($object[0]->children) . ';' : "$object[0]->id:0;"; + return $child; } } diff --git a/test/model/tree/createrequirementlink.php b/test/model/tree/createrequirementlink.php new file mode 100755 index 0000000000..97074f49fa --- /dev/null +++ b/test/model/tree/createrequirementlink.php @@ -0,0 +1,25 @@ +#!/usr/bin/env php +createRequirementLink(); +cid=1 +pid=1 + +*/ +$moduleID = array(1821, 1822, 1981, 1982, 1621, 1622, 21, 22); + +$tree = new treeTest(); + +r($tree->createRequirementLinkTest($moduleID[0])) && p() && e("title='产品模块1'"); // 测试创建module 1821 的RequirementLink +r($tree->createRequirementLinkTest($moduleID[1])) && p() && e("title='产品模块2'"); // 测试创建module 1822 的RequirementLink +r($tree->createRequirementLinkTest($moduleID[2])) && p() && e("title='产品模块161'"); // 测试创建module 1981 的RequirementLink +r($tree->createRequirementLinkTest($moduleID[3])) && p() && e("title='产品模块162'"); // 测试创建module 1982 的RequirementLink +r($tree->createRequirementLinkTest($moduleID[4])) && p() && e("title='模块1601'"); // 测试创建module 1621 的RequirementLink +r($tree->createRequirementLinkTest($moduleID[5])) && p() && e("title='模块1602'"); // 测试创建module 1622 的RequirementLink +r($tree->createRequirementLinkTest($moduleID[6])) && p() && e("title='模块1'"); // 测试创建module 21 的RequirementLink +r($tree->createRequirementLinkTest($moduleID[7])) && p() && e("title='模块2'"); // 测试创建module 22 的RequirementLink diff --git a/test/model/tree/createstorylink.php b/test/model/tree/createstorylink.php new file mode 100755 index 0000000000..8dc2c35b25 --- /dev/null +++ b/test/model/tree/createstorylink.php @@ -0,0 +1,40 @@ +#!/usr/bin/env php +createStoryLink(); +cid=1 +pid=1 + +*/ +$moduleID = array(1821, 1822, 1981, 1982, 1621, 1622, 21, 22); +$projectID = array(11,12); +$productID = array(1, 2); +$executionID = array(101, 102); +$branchID = array(0, 1, 2); + +$extra1 = array('branchID' => $branchID[0], 'projectID' => $projectID[0]); +$extra2 = array('branchID' => $branchID[0], 'projectID' => $projectID[0], 'productID' => $productID[0]); +$extra3 = array('branchID' => $branchID[0], 'projectID' => $projectID[1], 'productID' => $productID[1]); +$extra4 = array('branchID' => $branchID[0], 'projectID' => array(), 'productID' => $productID[0]); +$extra5 = array('branchID' => $branchID[0], 'executionID' => $executionID[0]); +$extra6 = array('branchID' => $branchID[0], 'executionID' => $executionID[1]); +$extra7 = array('branchID' => $branchID[0]); +$extra8 = array('branchID' => $branchID[1]); +$extra9 = array('branchID' => $branchID[2]); + +$tree = new treeTest(); + +r($tree->createStoryLinkTest($moduleID[0], $extra1)) && p() && e("projectstory title='产品模块1'"); // 测试获取module 1821 project 11 product 1 的 story link +r($tree->createStoryLinkTest($moduleID[1], $extra2)) && p() && e("projectstory title='产品模块2'"); // 测试获取module 1822 project 11 product 1 的 story link +r($tree->createStoryLinkTest($moduleID[2], $extra3)) && p() && e("projectstory title='产品模块161'"); // 测试获取module 1981 project 2 product 2 的 story link +r($tree->createStoryLinkTest($moduleID[3], $extra4)) && p() && e("product title='产品模块162'"); // 测试获取module 1982 product 1 的 story link +r($tree->createStoryLinkTest($moduleID[4], $extra5)) && p() && e("execution title='模块1601'"); // 测试获取module 1621 execution 101 的 story link +r($tree->createStoryLinkTest($moduleID[5], $extra6)) && p() && e("execution title='模块1602'"); // 测试获取module 1622 execution 102 的 story link +r($tree->createStoryLinkTest($moduleID[6], $extra7)) && p() && e("product title='模块1'"); // 测试获取module 21 branch 0 的 story link +r($tree->createStoryLinkTest($moduleID[7], $extra8)) && p() && e("product title='模块2'"); // 测试获取module 22 branch 1 的 story link +r($tree->createStoryLinkTest($moduleID[0], $extra9)) && p() && e("product title='产品模块1'"); // 测试获取module 1821 branch 2 的 story link diff --git a/test/model/tree/createtasklink.php b/test/model/tree/createtasklink.php new file mode 100755 index 0000000000..f523bd5957 --- /dev/null +++ b/test/model/tree/createtasklink.php @@ -0,0 +1,38 @@ +#!/usr/bin/env php +createTaskLink(); +cid=1 +pid=1 + +*/ +$moduleID = array(1821, 1822, 1981, 1982, 1621, 1622, 21, 22); +$productID = array(1, 2); +$executionID = array(101, 102); + +$extra1 = array('productID' => $productID[0], 'executionID' => $executionID[0]); +$extra2 = array('productID' => $productID[1], 'executionID' => $executionID[1]); + +$tree = new treeTest(); + +r($tree->createTaskLinkTest($moduleID[0], $extra1)) && p() && e("101 1821 title='产品模块1'"); // 测试获取module 1821 product 1 execution 101 的 story link +r($tree->createTaskLinkTest($moduleID[1], $extra1)) && p() && e("101 1822 title='产品模块2'"); // 测试获取module 1822 product 1 execution 101 的 story link +r($tree->createTaskLinkTest($moduleID[2], $extra1)) && p() && e("101 1981 title='产品模块161'"); // 测试获取module 1981 product 1 execution 101 的 story link +r($tree->createTaskLinkTest($moduleID[3], $extra1)) && p() && e("101 1982 title='产品模块162'"); // 测试获取module 1982 product 1 execution 101 的 story link +r($tree->createTaskLinkTest($moduleID[4], $extra1)) && p() && e("101 1621 title='模块1601'"); // 测试获取module 1621 product 1 execution 101 的 story link +r($tree->createTaskLinkTest($moduleID[5], $extra1)) && p() && e("101 1622 title='模块1602'"); // 测试获取module 1622 product 1 execution 101 的 story link +r($tree->createTaskLinkTest($moduleID[6], $extra1)) && p() && e("101 21 title='模块1'"); // 测试获取module 21 product 1 execution 101 的 story link +r($tree->createTaskLinkTest($moduleID[7], $extra1)) && p() && e("101 22 title='模块2'"); // 测试获取module 22 product 1 execution 101 的 story link +r($tree->createTaskLinkTest($moduleID[0], $extra2)) && p() && e("102 1821 title='产品模块1'"); // 测试获取module 1821 product 2 execution 102 的 story link +r($tree->createTaskLinkTest($moduleID[1], $extra2)) && p() && e("102 1822 title='产品模块2'"); // 测试获取module 1822 product 2 execution 102 的 story link +r($tree->createTaskLinkTest($moduleID[2], $extra2)) && p() && e("102 1981 title='产品模块161'"); // 测试获取module 1981 product 2 execution 102 的 story link +r($tree->createTaskLinkTest($moduleID[3], $extra2)) && p() && e("102 1982 title='产品模块162'"); // 测试获取module 1982 product 2 execution 102 的 story link +r($tree->createTaskLinkTest($moduleID[4], $extra2)) && p() && e("102 1621 title='模块1601'"); // 测试获取module 1621 product 2 execution 102 的 story link +r($tree->createTaskLinkTest($moduleID[5], $extra2)) && p() && e("102 1622 title='模块1602'"); // 测试获取module 1622 product 2 execution 102 的 story link +r($tree->createTaskLinkTest($moduleID[6], $extra2)) && p() && e("102 21 title='模块1'"); // 测试获取module 21 product 2 execution 102 的 story link +r($tree->createTaskLinkTest($moduleID[7], $extra2)) && p() && e("102 22 title='模块2'"); // 测试获取module 22 product 2 execution 102 的 story link diff --git a/test/model/tree/createtaskmanagelink.php b/test/model/tree/createtaskmanagelink.php new file mode 100755 index 0000000000..fdd76b4fdc --- /dev/null +++ b/test/model/tree/createtaskmanagelink.php @@ -0,0 +1,49 @@ +#!/usr/bin/env php +createTaskManageLink(); +cid=1 +pid=1 + +*/ +$moduleID = array(1821, 1822, 1981, 1982, 1621, 1622, 21, 22); +$productID = array(1, 2); +$executionID = array(101, 102); +$tip = 'tip'; + +$extra1 = array('productID' => $productID[0], 'executionID' => $executionID[0], 'tip' => $tip); +$extra2 = array('productID' => $productID[1], 'executionID' => $executionID[1], 'tip' => $tip); +$extra3 = array('productID' => $productID[0], 'executionID' => $executionID[0], 'tip' => null); +$extra4 = array('productID' => $productID[1], 'executionID' => $executionID[1], 'tip' => null); + +$tree = new treeTest(); + +r($tree->createTaskManageLinkTest($moduleID[0], $extra1)) && p() && e("产品模块1 browsetask 子模块"); // 测试获取module 1821 product 1 execution 101 的 story manage link +r($tree->createTaskManageLinkTest($moduleID[1], $extra1)) && p() && e("产品模块2 browsetask 子模块"); // 测试获取module 1822 product 1 execution 101 的 story manage link +r($tree->createTaskManageLinkTest($moduleID[2], $extra1)) && p() && e("产品模块161 browsetask 子模块"); // 测试获取module 1981 product 1 execution 101 的 story manage link +r($tree->createTaskManageLinkTest($moduleID[3], $extra1)) && p() && e("产品模块162 browsetask 子模块"); // 测试获取module 1982 product 1 execution 101 的 story manage link +r($tree->createTaskManageLinkTest($moduleID[4], $extra1)) && p() && e("模块1601 [T] edit 编辑模块 browsetask 子模块 delete 删除"); // 测试获取module 1621 product 1 execution 101 的 story manage link +r($tree->createTaskManageLinkTest($moduleID[5], $extra1)) && p() && e("模块1602 [T] edit 编辑模块 browsetask 子模块 delete 删除"); // 测试获取module 1622 product 1 execution 101 的 story manage link +r($tree->createTaskManageLinkTest($moduleID[6], $extra1)) && p() && e("模块1 [T] edit 编辑模块 browsetask 子模块 delete 删除"); // 测试获取module 21 product 1 execution 101 的 story manage link +r($tree->createTaskManageLinkTest($moduleID[7], $extra1)) && p() && e("模块2 [T] edit 编辑模块 browsetask 子模块 delete 删除"); // 测试获取module 22 product 1 execution 101 的 story manage link +r($tree->createTaskManageLinkTest($moduleID[0], $extra2)) && p() && e("产品模块1 browsetask 子模块"); // 测试获取module 1821 product 2 execution 102 的 story manage link +r($tree->createTaskManageLinkTest($moduleID[1], $extra2)) && p() && e("产品模块2 browsetask 子模块"); // 测试获取module 1822 product 2 execution 102 的 story manage link +r($tree->createTaskManageLinkTest($moduleID[2], $extra2)) && p() && e("产品模块161 browsetask 子模块"); // 测试获取module 1981 product 2 execution 102 的 story manage link +r($tree->createTaskManageLinkTest($moduleID[3], $extra2)) && p() && e("产品模块162 browsetask 子模块"); // 测试获取module 1982 product 2 execution 102 的 story manage link +r($tree->createTaskManageLinkTest($moduleID[4], $extra2)) && p() && e("模块1601 [T] edit 编辑模块 browsetask 子模块 delete 删除"); // 测试获取module 1621 product 2 execution 102 的 story manage link +r($tree->createTaskManageLinkTest($moduleID[5], $extra2)) && p() && e("模块1602 [T] edit 编辑模块 browsetask 子模块 delete 删除"); // 测试获取module 1622 product 2 execution 102 的 story manage link +r($tree->createTaskManageLinkTest($moduleID[6], $extra2)) && p() && e("模块1 [T] edit 编辑模块 browsetask 子模块 delete 删除"); // 测试获取module 21 product 2 execution 102 的 story manage link +r($tree->createTaskManageLinkTest($moduleID[7], $extra2)) && p() && e("模块2 [T] edit 编辑模块 browsetask 子模块 delete 删除"); // 测试获取module 22 product 2 execution 102 的 story manage link +r($tree->createTaskManageLinkTest($moduleID[0], $extra3)) && p() && e("产品模块1 browsetask 子模块"); // 测试获取module 1821 product 1 execution 101 tip null 的 story manage link +r($tree->createTaskManageLinkTest($moduleID[1], $extra3)) && p() && e("产品模块2 browsetask 子模块"); // 测试获取module 1822 product 1 execution 101 tip null 的 story manage link +r($tree->createTaskManageLinkTest($moduleID[6], $extra3)) && p() && e("模块1 edit 编辑模块 browsetask 子模块 delete 删除"); // 测试获取module 21 product 1 execution 101 tip null的 story manage link +r($tree->createTaskManageLinkTest($moduleID[7], $extra3)) && p() && e("模块2 edit 编辑模块 browsetask 子模块 delete 删除"); // 测试获取module 22 product 1 execution 101 tip null的 story manage link +r($tree->createTaskManageLinkTest($moduleID[0], $extra4)) && p() && e("产品模块1 browsetask 子模块"); // 测试获取module 1821 product 2 execution 102 tip null的 story manage link +r($tree->createTaskManageLinkTest($moduleID[1], $extra4)) && p() && e("产品模块2 browsetask 子模块"); // 测试获取module 1822 product 2 execution 102 tip null的 story manage link +r($tree->createTaskManageLinkTest($moduleID[6], $extra4)) && p() && e("模块1 edit 编辑模块 browsetask 子模块 delete 删除"); // 测试获取module 21 product 2 execution 102 tip null 的 story manage link +r($tree->createTaskManageLinkTest($moduleID[7], $extra4)) && p() && e("模块2 edit 编辑模块 browsetask 子模块 delete 删除"); // 测试获取module 22 product 2 execution 102 tip null 的 story manage link diff --git a/test/model/tree/createtesttasklink.php b/test/model/tree/createtesttasklink.php new file mode 100755 index 0000000000..049e7d7068 --- /dev/null +++ b/test/model/tree/createtesttasklink.php @@ -0,0 +1,26 @@ +#!/usr/bin/env php +createTestTaskLink(); +cid=1 +pid=1 + +*/ +$moduleID = array(1821, 1822, 1981, 1982, 1621, 1622, 21, 22); +$extra = 1; + +$tree = new treeTest(); + +r($tree->createTestTaskLinkTest($moduleID[0], $extra)) && p() && e("title='产品模块1'"); // 测试创建module 1821 的TestTasklink +r($tree->createTestTaskLinkTest($moduleID[1], $extra)) && p() && e("title='产品模块2'"); // 测试创建module 1822 的TestTasklink +r($tree->createTestTaskLinkTest($moduleID[2], $extra)) && p() && e("title='产品模块161'"); // 测试创建module 1981 的TestTasklink +r($tree->createTestTaskLinkTest($moduleID[3], $extra)) && p() && e("title='产品模块162'"); // 测试创建module 1982 的TestTasklink +r($tree->createTestTaskLinkTest($moduleID[4], $extra)) && p() && e("title='模块1601'"); // 测试创建module 1621 的TestTasklink +r($tree->createTestTaskLinkTest($moduleID[5], $extra)) && p() && e("title='模块1602'"); // 测试创建module 1622 的TestTasklink +r($tree->createTestTaskLinkTest($moduleID[6], $extra)) && p() && e("title='模块1'"); // 测试创建module 21 的TestTasklink +r($tree->createTestTaskLinkTest($moduleID[7], $extra)) && p() && e("title='模块2'"); // 测试创建module 22 的TestTasklink diff --git a/test/model/tree/delete.php b/test/model/tree/delete.php new file mode 100755 index 0000000000..0a75bca8ff --- /dev/null +++ b/test/model/tree/delete.php @@ -0,0 +1,29 @@ +#!/usr/bin/env php +delete(); +cid=1 +pid=1 + +*/ + +$moduleID = array(1821, 1822, 1981, 1982, 1621, 1622, 21, 22); + +$tree = new treeTest(); + +ob_start(); +r($tree->deleteTest($moduleID[0])) && p('deleted') && e('1'); // 测试删除module 1821 +r($tree->deleteTest($moduleID[1])) && p('deleted') && e('1'); // 测试删除module 1822 +r($tree->deleteTest($moduleID[2])) && p('deleted') && e('1'); // 测试删除module 1981 +r($tree->deleteTest($moduleID[3])) && p('deleted') && e('1'); // 测试删除module 1982 +r($tree->deleteTest($moduleID[4])) && p('deleted') && e('1'); // 测试删除module 1621 +r($tree->deleteTest($moduleID[5])) && p('deleted') && e('1'); // 测试删除module 1622 +r($tree->deleteTest($moduleID[6])) && p('deleted') && e('1'); // 测试删除module 21 +r($tree->deleteTest($moduleID[7])) && p('deleted') && e('1'); // 测试删除module 22 +ob_end_flush(); +system("./ztest init"); diff --git a/test/model/tree/fixmodulepath.php b/test/model/tree/fixmodulepath.php new file mode 100755 index 0000000000..61d125869a --- /dev/null +++ b/test/model/tree/fixmodulepath.php @@ -0,0 +1,28 @@ +#!/usr/bin/env php +fixModulePath(); +cid=1 +pid=1 + +*/ +$root = array(1, 2, 3, 41, 42, 43, 101, 102, 103); +$type = array('story', 'task'); + +$tree = new treeTest(); + +r($tree->fixModulePathTest($root[0], $type[0])) && p('1821:path;2621:path;2821:path') && e(',1821,;,1821,2621,;,2221,2821,'); // 修复root为 1 的module path +r($tree->fixModulePathTest($root[1], $type[0])) && p('1825:path;2623:path;2823:path') && e(',1825,;,1825,2623,;,2225,2823,'); // 修复root为 2 的module path +r($tree->fixModulePathTest($root[2], $type[0])) && p('1829:path;2625:path;2825:path') && e(',1829,;,1829,2625,;,2229,2825,'); // 修复root为 3 的module path +r($tree->fixModulePathTest($root[3], $type[0])) && p('1981:path;2701:path;2901:path') && e(',1981,;,1981,2701,;,2381,2901,'); // 修复root为 41 的module path +r($tree->fixModulePathTest($root[4], $type[0])) && p('1985:path;2703:path;2903:path') && e(',1985,;,1985,2703,;,2385,2903,'); // 修复root为 42 的module path +r($tree->fixModulePathTest($root[5], $type[0])) && p('1989:path;2705:path;2905:path') && e(',1989,;,1989,2705,;,2389,2905,'); // 修复root为 43 的module path +r($tree->fixModulePathTest($root[6], $type[1])) && p('21:path;22:path;3021:path') && e(',21,;,22,;,21,3021,'); // 修复root为 101 的module path +r($tree->fixModulePathTest($root[7], $type[1])) && p('24:path;25:path;3022:path') && e(',24,;,25,;,23,3022'); // 修复root为 102 的module path +r($tree->fixModulePathTest($root[8], $type[1])) && p('27:path;28:path;3023:path') && e(',27,;,28,;,25,3023'); // 修复root为 103 的module path +system("./ztest init"); diff --git a/test/model/tree/getallchildid.php b/test/model/tree/getallchildid.php new file mode 100755 index 0000000000..34bfafdb0f --- /dev/null +++ b/test/model/tree/getallchildid.php @@ -0,0 +1,29 @@ +#!/usr/bin/env php +getAllChildId(); +cid=1 +pid=1 + +*/ +$moduleID = array(1821, 1822, 1825, 1826, 1981, 1982, 1985, 1986, 21, 22, 24, 25); + +$tree = new treeTest(); + +r($tree->getAllChildIdTest($moduleID[0])) && p() && e(',1821,2621,2622 '); // 测试获取module 1821 的全部子项 +r($tree->getAllChildIdTest($moduleID[1])) && p() && e(',1822'); // 测试获取module 1821 的全部子项 +r($tree->getAllChildIdTest($moduleID[2])) && p() && e(',1825,2623,2624 '); // 测试获取module 1821 的全部子项 +r($tree->getAllChildIdTest($moduleID[3])) && p() && e(',1826'); // 测试获取module 1821 的全部子项 +r($tree->getAllChildIdTest($moduleID[4])) && p() && e(',1981,2701,2702 '); // 测试获取module 1821 的全部子项 +r($tree->getAllChildIdTest($moduleID[5])) && p() && e(',1982'); // 测试获取module 1821 的全部子项 +r($tree->getAllChildIdTest($moduleID[6])) && p() && e(',1985,2703,2704 '); // 测试获取module 1821 的全部子项 +r($tree->getAllChildIdTest($moduleID[7])) && p() && e(',1986'); // 测试获取module 1821 的全部子项 +r($tree->getAllChildIdTest($moduleID[8])) && p() && e(',21,3021'); // 测试获取module 1821 的全部子项 +r($tree->getAllChildIdTest($moduleID[9])) && p() && e(',22'); // 测试获取module 1821 的全部子项 +r($tree->getAllChildIdTest($moduleID[10])) && p() && e(',24'); // 测试获取module 1821 的全部子项 +r($tree->getAllChildIdTest($moduleID[11])) && p() && e(',25,3023'); // 测试获取module 1821 的全部子项 diff --git a/test/model/tree/getallmodulepairs.php b/test/model/tree/getallmodulepairs.php new file mode 100755 index 0000000000..2144a68943 --- /dev/null +++ b/test/model/tree/getallmodulepairs.php @@ -0,0 +1,21 @@ +#!/usr/bin/env php +getAllModulePairs(); +cid=1 +pid=1 + +*/ +$type = array('bug', 'case', 'task'); + +$tree = new treeTest(); + +r($tree->getAllModulePairsTest()) && p() && e('3601'); // 测试获取默认(task)的模块信息 +r($tree->getAllModulePairsTest($type[0])) && p() && e('1201'); // 测试获取默认(task)的模块信息 +r($tree->getAllModulePairsTest($type[1])) && p() && e('1201'); // 测试获取默认(task)的模块信息 +r($tree->getAllModulePairsTest($type[2])) && p() && e('3601'); // 测试获取默认(task)的模块信息 diff --git a/test/model/tree/getbyid.php b/test/model/tree/getbyid.php new file mode 100755 index 0000000000..1e549e57fa --- /dev/null +++ b/test/model/tree/getbyid.php @@ -0,0 +1,25 @@ +#!/usr/bin/env php +getByID(); +cid=1 +pid=1 + +*/ +$moduleID = array(1821, 1822, 1981, 1982, 1621, 1622, 21, 22); + +$tree = new treeTest(); + +r($tree->getByIDTest($moduleID[0])) && p('root,name,short') && e('1,产品模块1,模块简称1'); // 测试获取module 1821 的信息 +r($tree->getByIDTest($moduleID[1])) && p('root,name,short') && e('1,产品模块2,模块简称2'); // 测试获取module 1822 的信息 +r($tree->getByIDTest($moduleID[2])) && p('root,name,short') && e('41,产品模块161,模块简称161'); // 测试获取module 1981 的信息 +r($tree->getByIDTest($moduleID[3])) && p('root,name,short') && e('41,产品模块162,模块简称162'); // 测试获取module 1982 的信息 +r($tree->getByIDTest($moduleID[4])) && p('root,name,short') && e('634,模块1601,模块简称1601'); // 测试获取module 1621 的信息 +r($tree->getByIDTest($moduleID[5])) && p('root,name,short') && e('634,模块1602,模块简称1602'); // 测试获取module 1622 的信息 +r($tree->getByIDTest($moduleID[6])) && p('root,name,short') && e('101,模块1,模块简称1'); // 测试获取module 21 的信息 +r($tree->getByIDTest($moduleID[7])) && p('root,name,short') && e('101,模块2,模块简称2'); // 测试获取module 22 的信息 diff --git a/test/model/tree/getdatastructure.php b/test/model/tree/getdatastructure.php new file mode 100755 index 0000000000..0ecab517dd --- /dev/null +++ b/test/model/tree/getdatastructure.php @@ -0,0 +1,27 @@ +#!/usr/bin/env php +getDataStructure(); +cid=1 +pid=1 + +*/ +$root = array(1, 2, 3, 41, 42, 43, 101, 102, 103); +$type = array('story', 'task'); + +$tree = new treeTest(); + +r($tree->getDataStructureTest($root[0], $type[0])) && p() && e('1821:2;2221:2;1822:0;2222:0;1823:0;2223:0;1824:0;2224:0;'); // 测试获取root 1 type story 的树结构 +r($tree->getDataStructureTest($root[1], $type[0])) && p() && e('1825:2;2225:2;1826:0;2226:0;1827:0;2227:0;1828:0;2228:0;'); // 测试获取root 2 type story 的树结构 +r($tree->getDataStructureTest($root[2], $type[0])) && p() && e('1831:0;2231:0;1832:0;2232:0;1829:2;2229:2;1830:0;2230:0;'); // 测试获取root 3 type story 的树结构 +r($tree->getDataStructureTest($root[3], $type[0])) && p() && e('1981:2;2381:2;1982:0;2382:0;1983:0;2383:0;1984:0;2384:0;'); // 测试获取root 41 type story 的树结构 +r($tree->getDataStructureTest($root[4], $type[0])) && p() && e('1985:2;2385:2;1986:0;2386:0;1987:0;2387:0;1988:0;2388:0;'); // 测试获取root 42 type story 的树结构 +r($tree->getDataStructureTest($root[5], $type[0])) && p() && e('1991:0;2391:0;1992:0;2392:0;1989:2;2389:2;1990:0;2390:0;'); // 测试获取root 43 type story 的树结构 +r($tree->getDataStructureTest($root[6], $type[1])) && p() && e('0'); // 测试获取root 101 type task 的树结构 +r($tree->getDataStructureTest($root[7], $type[1])) && p() && e('0'); // 测试获取root 102 type task 的树结构 +r($tree->getDataStructureTest($root[8], $type[1])) && p() && e('0'); // 测试获取root 103 type task 的树结构 diff --git a/test/model/tree/getdocstructure.php b/test/model/tree/getdocstructure.php new file mode 100755 index 0000000000..c3a553147c --- /dev/null +++ b/test/model/tree/getdocstructure.php @@ -0,0 +1,17 @@ +#!/usr/bin/env php +getDocStructure(); +cid=1 +pid=1 + +*/ + +$tree = new treeTest(); + +r($tree->getDocStructureTest()) && p() && e('3621:2;3626:2;3631:2;3636:2;3641:2;3646:2;3651:2;3656:2;3661:2;3666:2;3671:2;3676:2;3681:2;3686:2;3691:2;3696:2;3701:2;3706:2;3711:2;3716:2;3622:2;3627:2;3632:2;3637:2;3642:2;3647:2;3652:2;3657:2;3662:2;3667:2;3672:2;3677:2;3682:2;3687:2;3692:2;3697:2;3702:2;3707:2;3712:2;3717:2;3623:2;3628:2;3633:2;3638:2;3643:2;3648:2;3653:2;3658:2;3663:2;3668:2;3673:2;3678:2;3683:2;3688:2;3693:2;3698:2;3703:2;3708:2;3713:2;3718:2;3624:2;3629:2;3634:2;3639:2;3644:2;3649:2;3654:2;3659:2;3664:2;3669:2;3674:2;3679:2;3684:2;3689:2;3694:2;3699:2;3704:2;3709:2;3714:2;3719:2;3625:2;3630:2;3635:2;3640:2;3645:2;3650:2;3655:2;3660:2;3665:2;3670:2;3675:2;3680:2;3685:2;3690:2;3695:2;3700:2;3705:2;3710:2;3715:2;3720:2;'); //测试获取doc树 diff --git a/test/model/tree/getmodulepairs.php b/test/model/tree/getmodulepairs.php new file mode 100755 index 0000000000..2fa4237325 --- /dev/null +++ b/test/model/tree/getmodulepairs.php @@ -0,0 +1,27 @@ +#!/usr/bin/env php +getModulePairs(); +cid=1 +pid=1 + +*/ +$root = array(1, 2, 3, 41, 42, 43, 101, 102, 103); +$type = array('story', 'task'); + +$tree = new treeTest(); + +r($tree->getModulePairsTest($root[0], $type[0])) && p() && e('12'); // 测试获取root 1 type story 的树结构 +r($tree->getModulePairsTest($root[1], $type[0])) && p() && e('12'); // 测试获取root 2 type story 的树结构 +r($tree->getModulePairsTest($root[2], $type[0])) && p() && e('12'); // 测试获取root 3 type story 的树结构 +r($tree->getModulePairsTest($root[3], $type[0])) && p() && e('12'); // 测试获取root 41 type story 的树结构 +r($tree->getModulePairsTest($root[4], $type[0])) && p() && e('12'); // 测试获取root 42 type story 的树结构 +r($tree->getModulePairsTest($root[5], $type[0])) && p() && e('12'); // 测试获取root 43 type story 的树结构 +r($tree->getModulePairsTest($root[6], $type[1])) && p() && e('40'); // 测试获取root 101 type task 的树结构 +r($tree->getModulePairsTest($root[7], $type[1])) && p() && e('40'); // 测试获取root 102 type task 的树结构 +r($tree->getModulePairsTest($root[8], $type[1])) && p() && e('40'); // 测试获取root 103 type task 的树结构 diff --git a/test/model/tree/getmodulesname.php b/test/model/tree/getmodulesname.php new file mode 100755 index 0000000000..f16b387dcc --- /dev/null +++ b/test/model/tree/getmodulesname.php @@ -0,0 +1,21 @@ +#!/usr/bin/env php +getModulesName(); +cid=1 +pid=1 + +*/ +$moduleIDList = array(array(1821, 1981), array(1982, 1621), array(1822, 22), array(1622, 21)); + +$tree = new treeTest(); + +r($tree->getModulesNameTest($moduleIDList[0])) && p('1821;1981') && e('/产品模块1;/产品模块161'); // 测试获取module 1821 1981 的module name +r($tree->getModulesNameTest($moduleIDList[1])) && p('1982;1621') && e('/产品模块162;/模块1601'); // 测试获取module 1982 1621 的module name +r($tree->getModulesNameTest($moduleIDList[2])) && p('1822;22') && e('/产品模块2;/模块2'); // 测试获取module 1822 22 的module name +r($tree->getModulesNameTest($moduleIDList[3])) && p('1622;21') && e('/模块1602;/模块1'); // 测试获取module 1622 21 的module name diff --git a/test/model/tree/getoptionmenu.php b/test/model/tree/getoptionmenu.php new file mode 100755 index 0000000000..b0c50a7e71 --- /dev/null +++ b/test/model/tree/getoptionmenu.php @@ -0,0 +1,26 @@ +#!/usr/bin/env php +getOptionMenu(); +cid=1 +pid=1 + +*/ +$root = array(1, 2, 41, 42, 101, 102); +$type = array('story', 'task', 'doc'); + +$tree = new treeTest(); + +r($tree->getOptionMenuTest($root[0], $type[0])) && p() && e('13'); // 测试获取root 1 type story 的目录 +r($tree->getOptionMenuTest($root[1], $type[0])) && p() && e('13'); // 测试获取root 2 type story 的目录 +r($tree->getOptionMenuTest($root[2], $type[0])) && p() && e('11'); // 测试获取root 41 type story 的目录 +r($tree->getOptionMenuTest($root[3], $type[0])) && p() && e('11'); // 测试获取root 42 type story 的目录 +r($tree->getOptionMenuTest($root[4], $type[1])) && p() && e('5'); // 测试获取root 101 type task 的目录 +r($tree->getOptionMenuTest($root[5], $type[1])) && p() && e('4'); // 测试获取root 102 type task 的目录 +r($tree->getOptionMenuTest($root[0], $type[2])) && p() && e('4'); // 测试获取root 1 type doc 的目录 +r($tree->getOptionMenuTest($root[1], $type[2])) && p() && e('4'); // 测试获取root 2 type doc 的目录 diff --git a/test/model/tree/getparents.php b/test/model/tree/getparents.php new file mode 100755 index 0000000000..4749478999 --- /dev/null +++ b/test/model/tree/getparents.php @@ -0,0 +1,28 @@ +#!/usr/bin/env php +getParents(); +cid=1 +pid=1 + +*/ + +$moduleID = array(1821, 2621, 2622, 21, 3021, 3022, 3621, 3721, 3722, 0); + +$tree = new treeTest(); + +r($tree->getParentsTest($moduleID[0])) && p() && e(',1821'); // 获取 module 1821 的父module +r($tree->getParentsTest($moduleID[1])) && p() && e(',1821,2621'); // 获取 module 2621 的父module +r($tree->getParentsTest($moduleID[2])) && p() && e(',1821,2622'); // 获取 module 2622 的父module +r($tree->getParentsTest($moduleID[3])) && p() && e(',21'); // 获取 module 21 的父module +r($tree->getParentsTest($moduleID[4])) && p() && e(',21,3021'); // 获取 module 3021 的父module +r($tree->getParentsTest($moduleID[5])) && p() && e(',23,3022'); // 获取 module 3022 的父module +r($tree->getParentsTest($moduleID[6])) && p() && e(',3621'); // 获取 module 3621 的父module +r($tree->getParentsTest($moduleID[7])) && p() && e(',3621,3721'); // 获取 module 3721 的父module +r($tree->getParentsTest($moduleID[8])) && p() && e(',3621,3722'); // 获取 module 3722 的父module +r($tree->getParentsTest($moduleID[9])) && p() && e('0'); // 获取 module 0 的父module diff --git a/test/model/tree/getproduct.php b/test/model/tree/getproduct.php new file mode 100755 index 0000000000..2fa427446d --- /dev/null +++ b/test/model/tree/getproduct.php @@ -0,0 +1,27 @@ +#!/usr/bin/env php +getProduct(); +cid=1 +pid=1 + +*/ +$moduleID = array(1821, 1825, 2621, 21, 25, 3021, 3621, 3622, 3722, 0); + +$tree = new treeTest(); + +r($tree->getProductTest($moduleID[0])) && p('name') && e('正常产品1'); // 获取module 1821 的产品 +r($tree->getProductTest($moduleID[1])) && p('name') && e('正常产品2'); // 获取module 1825 的产品 +r($tree->getProductTest($moduleID[2])) && p('name') && e('正常产品1'); // 获取module 2621 的产品 +r($tree->getProductTest($moduleID[3])) && p('name') && e('0'); // 获取module 21 的产品 +r($tree->getProductTest($moduleID[4])) && p('name') && e('0'); // 获取module 25 的产品 +r($tree->getProductTest($moduleID[5])) && p('name') && e('0'); // 获取module 3021 的产品 +r($tree->getProductTest($moduleID[6])) && p('name') && e('0'); // 获取module 3621 的产品 +r($tree->getProductTest($moduleID[7])) && p('name') && e('0'); // 获取module 3622 的产品 +r($tree->getProductTest($moduleID[8])) && p('name') && e('0'); // 获取module 3722 的产品 +r($tree->getProductTest($moduleID[9])) && p('name') && e('0'); // 获取module 0 的产品