* Fix search module unit test bug.

This commit is contained in:
wangyuting
2023-12-28 16:22:32 +08:00
parent bedbb6c575
commit 095fc4f6ec
7 changed files with 34 additions and 21 deletions
+3 -3
View File
@@ -51,7 +51,7 @@ $config->search->fields->productplan = new stdclass();
$config->search->fields->productplan->id = 'id';
$config->search->fields->productplan->title = 'title';
$config->search->fields->productplan->content = 'desc';
$config->search->fields->productplan->addedDate = 'addedDate';
$config->search->fields->productplan->addedDate = 'createdDate';
$config->search->fields->productplan->editedDate = 'lastEditedDate';
$config->search->fields->project = new stdclass();
@@ -65,7 +65,7 @@ $config->search->fields->release = new stdclass();
$config->search->fields->release->id = 'id';
$config->search->fields->release->title = 'name';
$config->search->fields->release->content = 'desc';
$config->search->fields->release->addedDate = 'addedDate';
$config->search->fields->release->addedDate = 'createdDate';
$config->search->fields->release->editedDate = 'lastEditedDate';
$config->search->fields->story = new stdclass();
@@ -93,7 +93,7 @@ $config->search->fields->testtask = new stdclass();
$config->search->fields->testtask->id = 'id';
$config->search->fields->testtask->title = 'name';
$config->search->fields->testtask->content = 'desc,report';
$config->search->fields->testtask->addedDate = 'addedDate';
$config->search->fields->testtask->addedDate = 'createdDate';
$config->search->fields->testtask->editedDate = 'lastEditedDate';
$config->search->fields->todo = new stdclass();
+1 -1
View File
@@ -1,4 +1,4 @@
<?php
<?php
declare(strict_types=1);
class searchTao extends searchModel
{
+10 -5
View File
@@ -2,7 +2,6 @@
<?php
include dirname(__FILE__, 5) . '/test/lib/init.php';
include dirname(__FILE__, 2) . '/search.class.php';
su('admin');
zdTable('task')->gen(10);
zdTable('bug')->gen(10);
@@ -11,17 +10,23 @@ zdTable('todo')->gen(10);
zdTable('build')->gen(10);
zdTable('product')->gen(10);
zdTable('release')->gen(10);
zdTable('testtask')->gen(10);
zdTable('testtask')->config('testtask')->gen(10);
zdTable('testsuite')->gen(10);
zdTable('testreport')->gen(10);
zdTable('productplan')->gen(10);
zdTable('project')->gen(100);
zdTable('story')->gen(10);
zdTable('storyspec')->gen(10);
zdTable('doccontent')->gen(10);
$story = zdTable('story');
$story->version->range('1');
$story->gen(10);
$doc = zdTable('doc');
$doc->version->range('1');
$doc->gen(10);
zdTable('doccontent')->gen(10);
su('admin');
/**
@@ -91,4 +96,4 @@ r($search->getListTest($searchWords[12], $searchType[13])) && p() && e('0'); /
r($search->getListTest($searchWords[13], $searchType[14])) && p() && e('10'); //测试在项目集类型中搜索带有项目集字体的条数
r($search->getListTest($searchWords[14], $searchType[15])) && p() && e('90'); //测试在项目类型中搜索带有项目字体的条数
r($search->getListTest($searchWords[15], $searchType[16])) && p() && e('0'); //测试在迭代类型中搜索带有迭代字体的条数
r($search->getListTest($searchWords[16], $searchType[17])) && p() && e('5'); //测试在需求类型中搜索带有需求字体的条数
r($search->getListTest($searchWords[16], $searchType[17])) && p() && e('5'); //测试在需求类型中搜索带有需求字体的条数
+7 -7
View File
@@ -283,6 +283,8 @@ class searchTest
*/
public function getListTest(string $keywords, string|array $type): int|array
{
zdTable('searchindex')->gen(0);
zdTable('searchdict')->gen(0);
$result = array();
while(!isset($result['finished']))
{
@@ -300,10 +302,6 @@ class searchTest
if(dao::isError()) return dao::getError();
global $tester;
$tester->dao->delete()->from(TABLE_SEARCHINDEX)->exec();
$tester->dao->delete()->from(TABLE_SEARCHDICT)->exec();
return count($objects);
}
@@ -610,6 +608,8 @@ class searchTest
$results = $tester->dao->select('*')->from(TABLE_SEARCHINDEX)->fetchAll();
$tester->app->setModuleName('search');
$tester->app->setMethodName('setResultsInPage');
$tester->app->loadClass('pager', true);
$pager = new pager(0, $recPerPage, $pageID);
@@ -668,9 +668,9 @@ class searchTest
foreach($dataList as $data)
{
$data->comment = str_replace("\n", '', $data->comment);
$data->desc = str_replace("\n", '', $data->desc);
$data->expect = str_replace("\n", '', $data->expect);
if(!empty($data->comment)) $data->comment = str_replace("\n", '', $data->comment);
if(!empty($data->desc)) $data->desc = str_replace("\n", '', $data->desc);
if(!empty($data->expect)) $data->expect = str_replace("\n", '', $data->expect);
}
return $dataList;
@@ -38,24 +38,20 @@ $valueName = 'value1';
$postDatas = array();
$postData1 = new stdClass();
$postData1->$field = 'title';
$postData1->$andOrName = 'and';
$postData1->$operatorName = 'include';
$postData1->$valueName = '测试';
$postData2 = new stdClass();
$postData2->$field = 'id';
$postData2->$andOrName = 'or';
$postData2->$operatorName = '=';
$postData2->$valueName = '1';
$postData3 = new stdClass();
$postData3->$field = 'status';
$postData3->$andOrName = '';
$postData3->$operatorName = '';
$postData4 = new stdClass();
$postData4->$field = 'activatedCount';
$postData4->$andOrName = '';
$postData4->$operatorName = '';
$postData4->$valueName = 'ZERO';
@@ -69,4 +65,4 @@ $search = new searchTest();
r($search->processQueryFormDatasTest($postDatas[0], $fields[0], $andOrName, $operatorName, $valueName)) && p('andOr,operator,value') && e('AND,include,测试'); //测试 andOr,operator,value 的值
r($search->processQueryFormDatasTest($postDatas[1], $fields[1], $andOrName, $operatorName, $valueName)) && p('andOr,operator,value') && e('OR,=,1'); //测试 andOr,operator,value 的值
r($search->processQueryFormDatasTest($postDatas[2], $fields[2], $andOrName, $operatorName, $valueName)) && p('andOr,operator,value') && e('AND,=,~~'); //测试 andOr,operator,value 的值
r($search->processQueryFormDatasTest($postDatas[3], $fields[3], $andOrName, $operatorName, $valueName)) && p('andOr,operator,value') && e('AND,=,0'); //测试 andOr,operator,value 的值
r($search->processQueryFormDatasTest($postDatas[3], $fields[3], $andOrName, $operatorName, $valueName)) && p('andOr,operator,value') && e('AND,=,0'); //测试 andOr,operator,value 的值
+2
View File
@@ -6,6 +6,7 @@ include dirname(__FILE__, 2) . '/search.class.php';
su('admin');
zdTable('module')->gen(5);
zdTable('scene')->gen(1);
/**
@@ -29,6 +30,7 @@ cid=1
$operators = array('include', 'notinclude', 'belong', 'between', '=');
$fields = array('module', 'title', 'dept', 'scene', 'id', 'date');
$values = array(1, 'test', '0', '$thisMonth', '1,2,3');
$thisMonth = 1;
$search = new searchTest();
r($search->setConditionTest($fields[0], $operators[0], $values[0])) && p() && e("= '1'"); //测试 module 包含 id 为 1 的条件
+10
View File
@@ -0,0 +1,10 @@
title: table zt_testtask
desc: "测试版本"
author: automated export
version: "1.0"
fields:
- field: createdDate
note: "创建日期"
range: "-:60"
type: timestamp
format: "YYYY-MM-DD hh:mm:ss"