(improvement)(project) Fix the concurrency issue in unit tests. (#1506)

This commit is contained in:
lexluo09
2024-08-02 13:41:22 +08:00
committed by GitHub
parent cabcbf16ff
commit e26263d229
3 changed files with 5 additions and 129 deletions

View File

@@ -14,7 +14,6 @@ import com.tencent.supersonic.util.DataUtils;
import org.springframework.beans.factory.annotation.Autowired;
import java.time.LocalDate;
import java.util.Objects;
import java.util.Set;
import java.util.stream.Collectors;
@@ -50,7 +49,7 @@ public class BaseTest extends BaseApplication {
}
protected QueryResult submitNewChat(String queryText, Integer agentId) throws Exception {
int chatId = 10;
int chatId = DataUtils.ONE_TURNS_CHAT_ID;
ParseResp parseResp = submitParse(queryText, agentId, chatId);
SemanticParseInfo parseInfo = parseResp.getSelectedParses().get(0);
@@ -70,9 +69,6 @@ public class BaseTest extends BaseApplication {
}
protected ParseResp submitParse(String queryText, Integer agentId, Integer chatId) {
if (Objects.isNull(chatId)) {
chatId = 10;
}
ChatParseReq chatParseReq = DataUtils.getChatParseReq(chatId, queryText);
chatParseReq.setAgentId(agentId);
return chatQueryService.performParsing(chatParseReq);

View File

@@ -1,122 +0,0 @@
package com.tencent.supersonic.headless;
import com.github.pagehelper.PageInfo;
import com.tencent.supersonic.auth.api.authentication.pojo.User;
import com.tencent.supersonic.headless.api.pojo.enums.TagDefineType;
import com.tencent.supersonic.headless.api.pojo.request.ItemValueReq;
import com.tencent.supersonic.headless.api.pojo.request.TagDeleteReq;
import com.tencent.supersonic.headless.api.pojo.request.TagFilterPageReq;
import com.tencent.supersonic.headless.api.pojo.request.TagReq;
import com.tencent.supersonic.headless.api.pojo.response.ItemValueResp;
import com.tencent.supersonic.headless.api.pojo.response.TagResp;
import com.tencent.supersonic.headless.server.pojo.TagFilter;
import com.tencent.supersonic.headless.server.service.TagMetaService;
import com.tencent.supersonic.headless.server.service.TagQueryService;
import org.junit.Assert;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.MethodOrderer;
import org.junit.jupiter.api.Order;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.TestMethodOrder;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
public class TagTest extends BaseTest {
@Autowired
private TagMetaService tagMetaService;
@Autowired
private TagQueryService tagQueryService;
private User user = User.getFakeUser();
public TagReq newTagReq() {
TagReq tagReq = new TagReq();
tagReq.setTagDefineType(TagDefineType.DIMENSION);
tagReq.setItemId(4L);
return tagReq;
}
public TagReq newTagReqV1() {
TagReq tagReq = new TagReq();
tagReq.setTagDefineType(TagDefineType.DIMENSION);
tagReq.setItemId(5L);
return tagReq;
}
public TagReq newTagReqV2() {
TagReq tagReq = new TagReq();
tagReq.setTagDefineType(TagDefineType.DIMENSION);
tagReq.setItemId(1L);
return tagReq;
}
public void setUp() {
TagDeleteReq tagDeleteReq = new TagDeleteReq();
tagDeleteReq.setTagDefineType(TagDefineType.DIMENSION);
tagDeleteReq.setItemIds(Arrays.asList(1L, 4L, 5L));
List<TagDeleteReq> tagDeleteReqList = new ArrayList<>();
tagDeleteReqList.add(tagDeleteReq);
tagMetaService.deleteBatch(tagDeleteReqList, user);
}
@Order(1)
@Test
public void testCreateTag() {
setUp();
TagReq tagReq = newTagReq();
tagMetaService.create(tagReq, user);
TagReq tagReq1 = newTagReqV1();
tagMetaService.create(tagReq1, user);
TagFilter tagFilter = new TagFilter();
tagFilter.setItemIds(Arrays.asList(4L, 5L));
tagFilter.setTagDefineType(TagDefineType.DIMENSION);
List<TagResp> tags = tagMetaService.getTags(tagFilter);
Assert.assertEquals(2, tags.size());
TagDeleteReq tagDeleteReq = new TagDeleteReq();
tagDeleteReq.setTagDefineType(TagDefineType.DIMENSION);
tagDeleteReq.setItemIds(Arrays.asList(4L, 5L));
List<TagDeleteReq> tagDeleteReqList = new ArrayList<>();
tagDeleteReqList.add(tagDeleteReq);
tagMetaService.deleteBatch(tagDeleteReqList, user);
List<TagResp> tags1 = tagMetaService.getTags(tagFilter);
Assert.assertEquals(0, tags1.size());
}
@Order(2)
@Test
public void testTagMarket() {
setUp();
TagReq tagReq = newTagReq();
tagMetaService.create(tagReq, user);
TagReq tagReq1 = newTagReqV1();
tagMetaService.create(tagReq1, user);
TagReq tagReq2 = newTagReqV2();
tagMetaService.create(tagReq2, user);
TagFilterPageReq filter = new TagFilterPageReq();
filter.setTagObjectId(2L);
filter.setKey("区域");
PageInfo<TagResp> tags = tagMetaService.queryTagMarketPage(filter, user);
Assert.assertEquals(1, tags.getList().size());
TagDeleteReq tagDeleteReq = new TagDeleteReq();
tagDeleteReq.setTagDefineType(TagDefineType.DIMENSION);
tagDeleteReq.setItemIds(Arrays.asList(1L, 4L, 5L));
List<TagDeleteReq> tagDeleteReqList = new ArrayList<>();
tagDeleteReqList.add(tagDeleteReq);
tagMetaService.deleteBatch(tagDeleteReqList, user);
}
@Test
@Order(0)
public void testQueryTagValue() throws Exception {
ItemValueReq itemValueReq = new ItemValueReq();
itemValueReq.setId(1L);
ItemValueResp itemValueResp = tagQueryService.queryTagValue(itemValueReq, user);
Assertions.assertNotNull(itemValueResp);
}
}

View File

@@ -1,7 +1,5 @@
package com.tencent.supersonic.util;
import static java.time.LocalDate.now;
import com.alibaba.fastjson.JSONObject;
import com.google.common.collect.Lists;
import com.tencent.supersonic.auth.api.authentication.pojo.User;
@@ -15,13 +13,17 @@ import com.tencent.supersonic.common.pojo.DateConf;
import com.tencent.supersonic.common.pojo.enums.FilterOperatorEnum;
import com.tencent.supersonic.headless.api.pojo.SchemaElement;
import com.tencent.supersonic.headless.api.pojo.request.QueryFilter;
import java.util.HashSet;
import java.util.Set;
import static java.time.LocalDate.now;
public class DataUtils {
public static final Integer metricAgentId = 1;
public static final Integer tagAgentId = 2;
public static final Integer ONE_TURNS_CHAT_ID = 10;
public static final Integer MULTI_TURNS_CHAT_ID = 11;
private static final User user_test = User.getFakeUser();