帆软报表设计器源代码。
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

98 lines
3.8 KiB

package com.fr.design.mainframe.alphafine.search.manager.impl;
import com.fr.design.i18n.Toolkit;
import com.fr.design.mainframe.alphafine.AlphaFineHelper;
import com.fr.design.mainframe.alphafine.CellType;
import com.fr.design.mainframe.alphafine.model.SearchResult;
import com.fr.design.mainframe.toolbar.UpdateActionManager;
import com.fr.json.JSONObject;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.Mockito;
import org.powermock.api.mockito.PowerMockito;
import org.powermock.core.classloader.annotations.PowerMockIgnore;
import org.powermock.core.classloader.annotations.PrepareForTest;
import org.powermock.modules.junit4.PowerMockRunner;
import java.util.ArrayList;
@RunWith(PowerMockRunner.class)
@PrepareForTest(Toolkit.class)
@PowerMockIgnore("javax.swing.*")
public class SearchManegerTest {
SimilarSearchManager similarSearchManager;
ComplementAdviceManager complementAdviceManager;
DocumentSearchManager documentSearchManager;
PluginSearchManager pluginSearchManager;
RecommendSearchManager recommendSearchManager;
RecentSearchManager recentSearchManager;
ActionSearchManager actionSearchManager;
FileSearchManager fileSearchManager;
SegmentationManager segmentationManager;
@Before
public void setUp() {
UpdateActionManager.getUpdateActionManager().setUpdateActions(new ArrayList<>());
PowerMockito.mockStatic(Toolkit.class);
PowerMockito.when(Toolkit.i18nText(Mockito.anyString())).thenReturn("test");
recentSearchManager = RecentSearchManager.getInstance();
recommendSearchManager = RecommendSearchManager.getInstance();
similarSearchManager = SimilarSearchManager.getInstance();
complementAdviceManager = ComplementAdviceManager.getInstance();
documentSearchManager = DocumentSearchManager.getInstance();
pluginSearchManager = PluginSearchManager.getInstance();
actionSearchManager = ActionSearchManager.getInstance();
fileSearchManager = FileSearchManager.getInstance();
segmentationManager = SegmentationManager.getInstance();
}
@Test
public void getSearchResultTest() {
//检测网络情况
Assert.assertTrue(AlphaFineHelper.isNetworkOk());
//正常搜索情况
SearchResult lessModelList;
lessModelList = recentSearchManager.getLessSearchResult(new String[]{"数据集"});
Assert.assertNotNull(lessModelList);
lessModelList = similarSearchManager.getLessSearchResult(new String[]{"数据集"});
Assert.assertEquals(lessModelList.get(1).getType(), CellType.ROBOT);
lessModelList = complementAdviceManager.getAllSearchResult(new String[]{"数据集"});
Assert.assertEquals(lessModelList.get(1).getType(), CellType.ROBOT);
//返回MoreSearchResult
SearchResult moreModelList;
moreModelList = similarSearchManager.getMoreSearchResult("数据集");
Assert.assertNotNull(moreModelList);
moreModelList = recommendSearchManager.getMoreSearchResult("数据集");
Assert.assertNotNull(moreModelList);
}
@Test
public void getModelFromCloudTest() {
Assert.assertNotNull(SimilarSearchManager.getModelFromCloud(new JSONObject()));
Assert.assertNotNull(DocumentSearchManager.getModelFromCloud(new JSONObject()));
Assert.assertNotNull(PluginSearchManager.getModelFromCloud(new JSONObject()));
}
@Test
public void isNeedSegmentationTest() {
Assert.assertEquals(segmentationManager.isNeedSegmentation("多维数据集"), true);
}
@Test
public void startSegmentationTest() {
String[] result = {"结果报表", "结果", "报表"};
Assert.assertEquals(segmentationManager.startSegmentation("结果报表"), result);
}
}