diff options
Diffstat (limited to 'sdnc_report_api_sdnc_253_story/sdnc_reports_api/src/test/java/com/onap/sdnc/reports')
3 files changed, 456 insertions, 0 deletions
diff --git a/sdnc_report_api_sdnc_253_story/sdnc_reports_api/src/test/java/com/onap/sdnc/reports/controller/ReportControllerTest.java b/sdnc_report_api_sdnc_253_story/sdnc_reports_api/src/test/java/com/onap/sdnc/reports/controller/ReportControllerTest.java new file mode 100644 index 0000000..8b407cc --- /dev/null +++ b/sdnc_report_api_sdnc_253_story/sdnc_reports_api/src/test/java/com/onap/sdnc/reports/controller/ReportControllerTest.java @@ -0,0 +1,107 @@ +/* +* ============LICENSE_START======================================================= +* ONAP : SDNC-FEATURES +* ================================================================================ +* Copyright 2018 TechMahindra +*================================================================================= +* Licensed under the Apache License, Version 2.0 (the "License"); +* you may not use this file except in compliance with the License. +* You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +* ============LICENSE_END========================================================= +*/ +package com.onap.sdnc.reports.controller; + +import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; +import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; + +import java.util.Arrays; +import java.util.Calendar; +import java.util.Date; +import java.util.List; + +import javax.transaction.Transactional; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.boot.test.mock.mockito.MockBean; +import org.springframework.http.MediaType; +import org.springframework.test.context.ContextConfiguration; +import org.springframework.test.context.junit4.SpringRunner; +import org.springframework.test.web.servlet.MockMvc; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; + +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.ObjectMapper; +import com.onap.sdnc.reports.Application; +import com.onap.sdnc.reports.controller.ReportController; +import com.onap.sdnc.reports.model.DeviceConfig; +import com.onap.sdnc.reports.model.PreTestConfig; +import com.onap.sdnc.reports.rest.model.PreTestModel; +import com.onap.sdnc.reports.service.IReportService; + +import static org.mockito.Mockito.when; +import org.springframework.boot.test.autoconfigure.orm.jpa.AutoConfigureTestDatabase; +import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest; + +//@RunWith(SpringRunner.class) +//@ContextConfiguration(classes=Application.class) +//@WebMvcTest(ReportController.class) +//@Transactional +//@DataJpaTest +//@AutoConfigureTestDatabase(replace=AutoConfigureTestDatabase.Replace.NONE) +public class ReportControllerTest { + +/* @Autowired + private MockMvc mvc; + + @MockBean + private IReportService reportService; + + private Date startDate,endDate; + + @Test + public void whenFindReportByDeviceName_thenReturnThis() + throws Exception { + Calendar calendar=Calendar.getInstance(); + + calendar.add(Calendar.DATE, -7); + calendar.add(Calendar.HOUR_OF_DAY, 00); + calendar.add(Calendar.MINUTE, 00); + calendar.add(Calendar.SECOND, 00); + calendar.add(Calendar.MILLISECOND, 00); + startDate=calendar.getTime(); + + Calendar endDateCalendar=Calendar.getInstance(); + + endDateCalendar.add(Calendar.HOUR_OF_DAY, 23); + endDateCalendar.add(Calendar.MINUTE, 59); + calendar.add(Calendar.SECOND, 00); + endDateCalendar.add(Calendar.MILLISECOND, 00); + endDate=endDateCalendar.getTime(); + + PreTestModel preTestModel=new PreTestModel(1, 1, "NetWorkTest", "Router", "Ping Got Successful", "Pass",endDate); + + List<PreTestModel> allTests = Arrays.asList(preTestModel); + + //given(reportService.findReportByDeviceName(startDate,endDate,"Router")).willReturn(allTests); + + when(reportService.findReportByDeviceName(startDate,endDate,"Router")).thenReturn(allTests); + + mvc.perform(get("/findReportByDeviceName/{startDate}/{endDate}/{deviceName",startDate,endDate,"Router") + .contentType(MediaType.APPLICATION_JSON)) + .andExpect(status().isOk()); + }*/ +} diff --git a/sdnc_report_api_sdnc_253_story/sdnc_reports_api/src/test/java/com/onap/sdnc/reports/repository/PreTestConfigRepositoryTest.java b/sdnc_report_api_sdnc_253_story/sdnc_reports_api/src/test/java/com/onap/sdnc/reports/repository/PreTestConfigRepositoryTest.java new file mode 100644 index 0000000..e70b04b --- /dev/null +++ b/sdnc_report_api_sdnc_253_story/sdnc_reports_api/src/test/java/com/onap/sdnc/reports/repository/PreTestConfigRepositoryTest.java @@ -0,0 +1,145 @@ +package com.onap.sdnc.reports.repository; + +import static org.assertj.core.api.Assertions.assertThat; + +import java.util.ArrayList; +import java.util.Calendar; +import java.util.Date; +import java.util.HashSet; +import java.util.List; +import java.util.Set; + +import javax.transaction.Transactional; + +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.autoconfigure.jdbc.AutoConfigureTestDatabase; +import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest; +import org.springframework.boot.test.autoconfigure.orm.jpa.TestEntityManager; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +import com.onap.sdnc.reports.Application; +//import com.onap.sdnc.reports.model.DeviceConfig; +//import com.onap.sdnc.reports.model.PreTestConfig; +import com.onap.sdnc.reports.model.DeviceConfig; +import com.onap.sdnc.reports.model.PreTestConfig; + +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; + +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; + +@RunWith(SpringRunner.class) +@SpringBootTest(classes = Application.class) +//@AutoConfigureTestDatabase(replace=AutoConfigureTestDatabase.Replace.NONE) +@DataJpaTest +@Transactional +public class PreTestConfigRepositoryTest { + + private static final Logger logger = LogManager.getLogger(Application.class); + + @Autowired + private PreTestConfigRepository preTestRepository; + + @Autowired + private TestEntityManager entityManager; + + + @Test + public void whenFindByDeviceName_thenReturnRouter() { + // given + + + DeviceConfig deviceConfig=new DeviceConfig(); + //deviceConfig.setId(3); + deviceConfig.setDeviceName("Router"); + deviceConfig.setPreTestConfig(null); + deviceConfig.setProtocolConfig(null); + deviceConfig.setCreationDate(new Date().toLocaleString()); + + entityManager.persist(deviceConfig); + entityManager.flush(); + + PreTestConfig obj=new PreTestConfig(); + obj.setDevice(deviceConfig); + obj.setExecuationDetails("Ping Successful"); + obj.setResult("Pass"); + //obj.setTestId(8); + obj.setTestName("Network Layer"); + obj.setTimestamp(new Date()); + + Set<PreTestConfig> set=new HashSet<>(); + set.add(obj); + deviceConfig.setPreTestConfig( set); + entityManager.persistAndFlush(deviceConfig); + + entityManager.persist(obj); + entityManager.flush(); + + Calendar calendar=Calendar.getInstance(); + + calendar.add(Calendar.DATE, -7); + Date startDate=calendar.getTime(); + Date endDate=new Date(); + // when + List<PreTestConfig> preTestList = preTestRepository.findReportByDeviceName(startDate,endDate,"Router"); + + assertThat(preTestList.get(0).getTestId()) + .isEqualTo(obj.getTestId()); + + System.out.println("Status : "+(preTestList.get(0).getTestId()==obj.getTestId())); + } + + /*@Test + public void whenFindByDeviceName_thenReturnRouter() { + // given + + PreTestConfigRepository preTestRepository= mock(PreTestConfigRepository.class); + DeviceConfig deviceConfig=new DeviceConfig(); + //deviceConfig.setId(3); + deviceConfig.setDeviceName("Router"); + deviceConfig.setPreTestConfig(null); + deviceConfig.setProtocolConfig(null); + deviceConfig.setCreationDate(new Date().toLocaleString()); + + + + PreTestConfig obj=new PreTestConfig(); + obj.setDevice(deviceConfig); + obj.setExecuationDetails("Ping Successful"); + obj.setResult("Pass"); + //obj.setTestId(8); + obj.setTestName("Network Layer"); + obj.setTimestamp(new Date()); + + Set<PreTestConfig> set=new HashSet<>(); + set.add(obj); + deviceConfig.setPreTestConfig( set); + + List<PreTestConfig> dummyInput=new ArrayList<>(); + dummyInput.add(obj); + + Calendar calendar=Calendar.getInstance(); + + calendar.add(Calendar.DATE, -7); + Date startDate=calendar.getTime(); + Date endDate=new Date(); + // when + + when(preTestRepository.findReportByDeviceName(startDate,endDate,"Router")).thenReturn(dummyInput); + + List<PreTestConfig> preTestList = preTestRepository.findReportByDeviceName(startDate,endDate,"Router"); + + assertThat(preTestList.get(0).getTestId()) + .isEqualTo(obj.getTestId()); + + logger.info("Status : "+(preTestList.get(0).getTestId()==obj.getTestId())); + }*/ + + +} diff --git a/sdnc_report_api_sdnc_253_story/sdnc_reports_api/src/test/java/com/onap/sdnc/reports/service/ReportServiceImplTest.java b/sdnc_report_api_sdnc_253_story/sdnc_reports_api/src/test/java/com/onap/sdnc/reports/service/ReportServiceImplTest.java new file mode 100644 index 0000000..b688f58 --- /dev/null +++ b/sdnc_report_api_sdnc_253_story/sdnc_reports_api/src/test/java/com/onap/sdnc/reports/service/ReportServiceImplTest.java @@ -0,0 +1,204 @@ +package com.onap.sdnc.reports.service; + +import static org.assertj.core.api.Assertions.assertThat; + +import java.util.ArrayList; +import java.util.Calendar; +import java.util.Date; +import java.util.List; + +import javax.transaction.Transactional; + +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; +import org.junit.Before; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.mockito.Mockito; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.test.autoconfigure.orm.jpa.DataJpaTest; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.boot.test.context.TestConfiguration; +import org.springframework.boot.test.mock.mockito.MockBean; +import org.springframework.context.annotation.Bean; +import org.springframework.test.context.junit4.SpringRunner; + +import com.onap.sdnc.reports.Application; +import com.onap.sdnc.reports.model.DeviceConfig; +import com.onap.sdnc.reports.model.PreTestConfig; +import com.onap.sdnc.reports.repository.PreTestConfigRepository; +import com.onap.sdnc.reports.rest.model.PreTestModel; + +import org.mockito.InjectMocks; +import org.mockito.Mock; + +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; + +import org.apache.logging.log4j.LogManager; +import org.apache.logging.log4j.Logger; +@RunWith(SpringRunner.class) +@SpringBootTest(classes = Application.class) +@DataJpaTest +@Transactional +public class ReportServiceImplTest { + + private static final Logger logger = LogManager.getLogger(Application.class); + + private Date startDate,endDate; + +/* @TestConfiguration + static class ReportServiceImplTestContextConfiguration + { + @Bean + public IReportService reportService() + { + return new ReportServiceImpl(); + } + } + + @Autowired + private IReportService reportService; + + @MockBean + private PreTestConfigRepository preTestConfigRepository; + + @Before + public void setUp() + { + DeviceConfig deviceConfig=new DeviceConfig(); + deviceConfig.setDeviceName("Router"); + deviceConfig.setPreTestConfig(null); + deviceConfig.setProtocolConfig(null); + deviceConfig.setCreationDate(new Date().toLocaleString()); + + PreTestConfig obj=new PreTestConfig(); + obj.setDevice(deviceConfig); + obj.setExecuationDetails("Ping Successful"); + obj.setResult("Pass"); + + obj.setTestName("Network Layer"); + obj.setTimestamp(new Date()); + + + Calendar calendar=Calendar.getInstance(); + + calendar.add(Calendar.DATE, -7); + calendar.add(Calendar.HOUR_OF_DAY, 00); + calendar.add(Calendar.MINUTE, 00); + calendar.add(Calendar.SECOND, 00); + calendar.add(Calendar.MILLISECOND, 00); + startDate=calendar.getTime(); + + Calendar endDateCalendar=Calendar.getInstance(); + + endDateCalendar.add(Calendar.HOUR_OF_DAY, 23); + endDateCalendar.add(Calendar.MINUTE, 59); + calendar.add(Calendar.SECOND, 00); + endDateCalendar.add(Calendar.MILLISECOND, 00); + endDate=endDateCalendar.getTime(); + + System.out.println("Before Call : startDate "+startDate.toLocaleString() +" endDate : "+endDate.toLocaleString()); + List<PreTestConfig> configList=new ArrayList<>(); + configList.add(obj); + Mockito.when(preTestConfigRepository.findReportByDeviceName(startDate,endDate,"Router")) + .thenReturn(configList); + } + + + @Test + public void whenFindByDeviceName_thenReturPreTest() + { + int expectedTestId=0; + System.out.println("Test Call : startDate "+startDate.toLocaleString() +" endDate : "+endDate.toLocaleString()); + + List<PreTestModel> testList; + try { + testList = reportService.findReportByDeviceName(startDate,endDate,"Router"); + assertThat(testList.get(0).getTestid()) + .isEqualTo(expectedTestId); + } catch (Exception e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + + + } + */ + /* @InjectMocks + private IReportService reportService; + + @Mock + private PreTestConfigRepository preTestConfigRepository;*/ + + List<PreTestConfig> configList; + + List<PreTestModel> dummyList; + @Before + public void setUp() + { + DeviceConfig deviceConfig=new DeviceConfig(); + deviceConfig.setDeviceName("Router"); + deviceConfig.setPreTestConfig(null); + deviceConfig.setProtocolConfig(null); + deviceConfig.setCreationDate(new Date().toLocaleString()); + + PreTestConfig obj=new PreTestConfig(); + obj.setDevice(deviceConfig); + obj.setExecuationDetails("Ping Successful"); + obj.setResult("Pass"); + + obj.setTestName("Network Layer"); + obj.setTimestamp(new Date()); + + PreTestModel model=new PreTestModel(1, 1, "Protocol Layer", "Router", "{\"output\": {\"testresult\": \"pass\", \"status\": \"unreachable\"}}", "Pass", new Date()); + Calendar calendar=Calendar.getInstance(); + + calendar.add(Calendar.DATE, -7); + calendar.add(Calendar.HOUR_OF_DAY, 00); + calendar.add(Calendar.MINUTE, 00); + calendar.add(Calendar.SECOND, 00); + calendar.add(Calendar.MILLISECOND, 00); + startDate=calendar.getTime(); + + Calendar endDateCalendar=Calendar.getInstance(); + + endDateCalendar.add(Calendar.HOUR_OF_DAY, 23); + endDateCalendar.add(Calendar.MINUTE, 59); + calendar.add(Calendar.SECOND, 00); + endDateCalendar.add(Calendar.MILLISECOND, 00); + endDate=endDateCalendar.getTime(); + + System.out.println("Before Call : startDate "+startDate.toLocaleString() +" endDate : "+endDate.toLocaleString()); + configList=new ArrayList<>(); + configList.add(obj); + + dummyList=new ArrayList<>(); + dummyList.add(model); + + } + + @Test + public void whenFindByDeviceName_thenReturPreTest() + { + IReportService reportService= mock(IReportService.class); + try { + when(reportService.findReportByDeviceName(startDate,endDate,"Router")).thenReturn(dummyList); + } catch (Exception e1) { + + e1.printStackTrace(); + } + + int expectedTestId=1; + + List<PreTestModel> testList; + try { + testList = reportService.findReportByDeviceName(startDate,endDate,"Router"); + assertThat(testList.get(0).getTestid()) + .isEqualTo(expectedTestId); + } catch (Exception e) { + // TODO Auto-generated catch block + e.printStackTrace(); + } + } +} |