RealTimeWarningServiceImplTest

  1 import org.junit.Assert;
  2 import org.junit.Before;
  3 import org.junit.Test;
  4 import org.junit.runner.RunWith;
  5 import org.mockito.InjectMocks;
  6 import org.mockito.Mock;
  7 import org.mockito.MockitoAnnotations;
  8 import org.powermock.api.mockito.PowerMockito;
  9 import org.powermock.core.classloader.annotations.PowerMockIgnore;
 10 import org.powermock.core.classloader.annotations.PrepareForTest;
 11 import org.powermock.modules.junit4.PowerMockRunner;
 12 import org.springframework.beans.factory.annotation.Value;
 13 
 14 import java.io.IOException;
 15 import java.util.ArrayList;
 16 import java.util.Date;
 17 import java.util.List;
 18 
 19 import static org.mockito.Matchers.any;
 20 
 21 @RunWith(PowerMockRunner.class)
 22 @PrepareForTest({RegistryUtilService.class, ApiContainer.class,HttpUtils.class})
 23 @PowerMockIgnore({"javax.management.*", "javax.script.*", "javax.net.ssl.*"})
 24 public class RealTimeWarningServiceImplTest {
 25 
 26     @InjectMocks
 27     RealTimeWarningServiceImpl realTimeWarningService;
 28 
 29     @Mock
 30     MybatisQuery mybatisQuery;
 31 
 32     @Value("${request.application.appId}")
 33     private String appId;
 34 
 35     @Value("${request.appSecret}")
 36     private String appSecret;
 37 
 38     @Mock
 39     IPlinkManageService iPlinkManageService;
 40 
 41     @Before
 42     public void setUp() {
 43         MockitoAnnotations.initMocks(this);
 44     }
 45 
 46     @Test
 47     public void testQueryWarningTotal() throws IOException {
 48         Condition condition = new Condition("123", "20220101", new Region("西欧地区部", "ALL", "ALL"));
 49         ApiTemplate template = new ApiTemplate();
 50         template.setUrl("http://apigw.huawei.com/api/data-subject/app_000000035085/D103193");
 51         PowerMockito.mockStatic(ApiContainer.class);
 52         PowerMockito.when(ApiContainer.getApiById(ApiType.WARNING_TOTAL.getId())).thenReturn(template);
 53 
 54         String result = "{ \"list\":[{ \"REGION_CN_NAME\":\"西欧地区部\", \"COUNTRY_CN_NAME\":\"西班牙\", \"REPOFFICE_CN_NAME\":\"西班牙代表处\", \"PERIOD_ID\":\"20220101\", \"INDICATOR_NAME\":\"清关超期\", \"PROJ_NUM\":\"null\" },{ \"REGION_CN_NAME\":\"西欧地区部\", \"COUNTRY_CN_NAME\":\"法国\", \"REPOFFICE_CN_NAME\":\"法国代表处\", \"PERIOD_ID\":\"20220101\", \"INDICATOR_NAME\":\"清关超期\", \"PROJ_NUM\":\"56A05VC\" },{ \"REGION_CN_NAME\":\"西欧地区部\", \"COUNTRY_CN_NAME\":\"荷兰\", \"REPOFFICE_CN_NAME\":\"西欧多国管理部\", \"PERIOD_ID\":\"20220101\", \"INDICATOR_NAME\":\"清关超期\", \"PROJ_NUM\":\"null\" }]}\n";
 55         PowerMockito.mockStatic(HttpUtils.class);
 56         PowerMockito.when(HttpUtils.postRequest(any(),any(),any())).thenReturn(result);
 57 
 58          realTimeWarningService.queryWarningTotal(condition);
 59     }
 60 
 61     @Test
 62     public void testQueryDetailsList() {
 63         ArrayList<WarningDetailsParam> list = new ArrayList<>();
 64         list.add(new WarningDetailsParam("over_not_received", "56A0EXB"));
 65         list.add(new WarningDetailsParam("over_not_received", "56A0ED2"));
 66         list.add(new WarningDetailsParam("over_not_accept", "564690E"));
 67         list.add(new WarningDetailsParam("over_not_accept", "56A0FU8"));
 68 
 69         PlinkManageResponse response = new PlinkManageResponse();
 70         ArrayList<PlinkManageVo> plinkManageVos = new ArrayList<>();
 71         PlinkManageVo plinkManageVo = new PlinkManageVo();
 72         plinkManageVo.setContent("测试内容");
 73         plinkManageVo.setId("635f35e8bb299b00f1a9fae6");
 74         plinkManageVos.add(plinkManageVo);
 75         response.setPlinkManageVoList(plinkManageVos);
 76         PowerMockito.when(iPlinkManageService.batchQueryPlinkManageInfo(any())).thenReturn(response);
 77 
 78         List<WarningDetails> details = new ArrayList<>();
 79         details.add(new WarningDetails(null, null, null, null, null, "56A0EXB", "over_not_received", null));
 80         details.add(new WarningDetails(null, null, null, null, null, "56A0ED2", "over_not_received", null));
 81         details.add(new WarningDetails(null, null, null, null, null, "564690E", "over_not_accept", null));
 82         details.add(new WarningDetails(null, null, null, null, null, "56A0FU8", "over_not_accept", null));
 83 
 84         PowerMockito.when(mybatisQuery.queryTaskLink(any())).thenReturn(details);
 85         //{"taskIdList":["632d04ce269432047c9fd9dc"]}
 86         List<WarningDetails> warningDetails = realTimeWarningService.queryDetailsList(list);
 87         //Assert.assertNotNull(warningDetails);
 88         // todo
 89     }
 90 
 91     @Test
 92     public void testQueryDetails() {
 93         WarningDetailsParam warningDetailsParam = new WarningDetailsParam("1", "1");
 94         WarningDetailsCheckList warningDetailsCheckList = realTimeWarningService.queryDetails(warningDetailsParam);
 95         //Assert.assertNotNull(warningDetailsCheckList);
 96     }
 97 
 98     @Test
 99     public void testTrendingWeek() {
100         WaringTrendingParam waringTrendingParam = new WaringTrendingParam("西欧地区部", "", "1", "overdue_not_received", 2);
101 
102         List<Trending> trendingList = new ArrayList<>();
103         trendingList.add(new Trending("0.6",new Date()));
104         PowerMockito.when(mybatisQuery.queryTrending(any(),any(),any(),any())).thenReturn(trendingList);
105 
106         List<WarningTrending> warningTrendings = realTimeWarningService.trendingWeek(waringTrendingParam);
107 
108         Assert.assertNotNull(warningTrendings);
109     }
110 }

 

posted @ 2022-11-09 19:22  MING5135  阅读(14)  评论(0编辑  收藏  举报