本文整理汇总了PHP中testcase::getByPathName方法的典型用法代码示例。如果您正苦于以下问题:PHP testcase::getByPathName方法的具体用法?PHP testcase::getByPathName怎么用?PHP testcase::getByPathName使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类testcase
的用法示例。
在下文中一共展示了testcase::getByPathName方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getTestCaseIDByName
/**
* Find a test case by its name
*
* <b>Searching is case sensitive.</b> The test case will only be returned if there is a definite match.
* If possible also pass the string for the test suite name.
*
* No results will be returned if there are test cases with the same name that match the criteria provided.
*
* @param struct $args
* @param string $args["devKey"]
* @param string $args["testcasename"]
* @param string $args["testsuitename"] - optional
* @param string $args["testprojectname"] - optional
* @param string $args["testcasepathname"] - optional
* Full test case path name, starts with test project name
* pieces separator -> :: -> default value of getByPathName()
* @return mixed $resultInfo
*/
public function getTestCaseIDByName($args)
{
$msg_prefix = "(" . __FUNCTION__ . ") - ";
$status_ok = true;
$this->_setArgs($args);
$result = null;
$checkFunctions = array('authenticate', 'checkTestCaseName');
$status_ok = $this->_runChecks($checkFunctions, $msg_prefix);
if ($status_ok) {
$testCaseName = $this->args[self::$testCaseNameParamName];
$testCaseMgr = new testcase($this->dbObj);
$keys2check = array(self::$testSuiteNameParamName, self::$testCasePathNameParamName, self::$testProjectNameParamName);
foreach ($keys2check as $key) {
$optional[$key] = $this->_isParamPresent($key) ? trim($this->args[$key]) : '';
}
if ($optional[self::$testCasePathNameParamName] != '') {
$dummy = $testCaseMgr->getByPathName($optional[self::$testCasePathNameParamName]);
if (!is_null($dummy)) {
$result[0] = $dummy;
}
} else {
$result = $testCaseMgr->get_by_name($testCaseName, $optional[self::$testSuiteNameParamName], $optional[self::$testProjectNameParamName]);
}
$match_count = count($result);
switch ($match_count) {
case 0:
$status_ok = false;
$this->errors[] = new IXR_ERROR(NO_TESTCASE_BY_THIS_NAME, $msg_prefix . NO_TESTCASE_BY_THIS_NAME_STR);
break;
case 1:
$status_ok = true;
break;
default:
// multiple matches.
$status_ok = true;
break;
}
}
// $this->userHasRight("mgt_view_tc",self::CHECK_PUBLIC_PRIVATE_ATTR);
// if we have multiple matches, we have issues to check test project access for user
// requesting operation.
// what to do ?
// check access for each result and remove result if user has no access to corresponding
// test project.
if ($status_ok) {
$out = null;
foreach ($result as $testcase) {
$this->args[self::$testProjectIDParamName] = $this->tcaseMgr->get_testproject($testcase['id']);
if ($this->userHasRight("mgt_view_tc", self::CHECK_PUBLIC_PRIVATE_ATTR)) {
$out[] = $testcase;
}
}
}
return $status_ok ? $out : $this->errors;
}
示例2: getTestCaseIDByName
/**
* Find a test case by its name
*
* <b>Searching is case sensitive.</b> The test case will only be returned if there is a definite match.
* If possible also pass the string for the test suite name.
*
* No results will be returned if there are test cases with the same name that match the criteria provided.
*
* @param struct $args
* @param string $args["devKey"]
* @param string $args["testcasename"]
* @param string $args["testsuitename"] - optional
* @param string $args["testprojectname"] - optional
* @param string $args["testcasepathname"] - optional
* Full test case path name, starts with test project name
* pieces separator -> :: -> default value of getByPathName()
* @return mixed $resultInfo
*/
public function getTestCaseIDByName($args)
{
$msg_prefix = "(" . __FUNCTION__ . ") - ";
$status_ok = true;
$this->_setArgs($args);
$result = null;
$checkFunctions = array('authenticate', 'checkTestCaseName');
$status_ok = $this->_runChecks($checkFunctions, $msg_prefix) && $this->userHasRight("mgt_view_tc");
if ($status_ok) {
$testCaseName = $this->args[self::$testCaseNameParamName];
$testCaseMgr = new testcase($this->dbObj);
$keys2check = array(self::$testSuiteNameParamName, self::$testCasePathNameParamName, self::$testProjectNameParamName);
foreach ($keys2check as $key) {
$optional[$key] = $this->_isParamPresent($key) ? trim($this->args[$key]) : '';
}
// 20091128 - franciscom
if ($optional[self::$testCasePathNameParamName] != '') {
$dummy = $testCaseMgr->getByPathName($optional[self::$testCasePathNameParamName]);
if (!is_null($dummy)) {
$result[0] = $dummy;
}
} else {
$result = $testCaseMgr->get_by_name($testCaseName, $optional[self::$testSuiteNameParamName], $optional[self::$testProjectNameParamName]);
}
if (0 == sizeof($result)) {
$status_ok = false;
$this->errors[] = new IXR_ERROR(NO_TESTCASE_BY_THIS_NAME, $msg_prefix . NO_TESTCASE_BY_THIS_NAME_STR);
return $this->errors;
}
}
return $status_ok ? $result : $this->errors;
}