Repository: incubator-griffin Updated Branches: refs/heads/master 90f3b16d7 -> 2556a1427
http://git-wip-us.apache.org/repos/asf/incubator-griffin/blob/2556a142/service/src/test/java/org/apache/griffin/core/job/JobServiceImplTest.java ---------------------------------------------------------------------- diff --git a/service/src/test/java/org/apache/griffin/core/job/JobServiceImplTest.java b/service/src/test/java/org/apache/griffin/core/job/JobServiceImplTest.java index cda4104..976a931 100644 --- a/service/src/test/java/org/apache/griffin/core/job/JobServiceImplTest.java +++ b/service/src/test/java/org/apache/griffin/core/job/JobServiceImplTest.java @@ -339,6 +339,21 @@ public class JobServiceImplTest { assertEquals(service.getHealthInfo().getHealthyJobCount(), 0); } + @Test + public void testGetJobDetailsGroupByMeasureId() throws SchedulerException { + Scheduler scheduler = Mockito.mock(Scheduler.class); + JobDetailImpl jobDetail = createJobDetail(); + given(factory.getObject()).willReturn(scheduler); + HashSet<JobKey> set = new HashSet<>(); + set.add(new JobKey("name", "group")); + given(scheduler.getJobKeys(GroupMatcher.anyGroup())).willReturn(set); + List<Trigger> triggers = Arrays.asList(newTriggerInstance("name", "group", 3000)); + JobKey jobKey = set.iterator().next(); + given((List<Trigger>) scheduler.getTriggersOfJob(jobKey)).willReturn(triggers); + given(scheduler.getJobDetail(jobKey)).willReturn(jobDetail); + assertTrue(service.getJobDetailsGroupByMeasureId().containsKey("1")); + } + private void mockJsonDataMap(Scheduler scheduler,JobKey jobKey,Boolean deleted) throws SchedulerException { JobDataMap jobDataMap = mock(JobDataMap.class); JobDetailImpl jobDetail = new JobDetailImpl(); http://git-wip-us.apache.org/repos/asf/incubator-griffin/blob/2556a142/service/src/test/java/org/apache/griffin/core/measure/MeasureOrgControllerTest.java ---------------------------------------------------------------------- diff --git a/service/src/test/java/org/apache/griffin/core/measure/MeasureOrgControllerTest.java b/service/src/test/java/org/apache/griffin/core/measure/MeasureOrgControllerTest.java index 372eac0..c9cb463 100644 --- a/service/src/test/java/org/apache/griffin/core/measure/MeasureOrgControllerTest.java +++ b/service/src/test/java/org/apache/griffin/core/measure/MeasureOrgControllerTest.java @@ -29,12 +29,17 @@ import org.springframework.boot.test.mock.mockito.MockBean; import org.springframework.test.context.junit4.SpringRunner; import org.springframework.test.web.servlet.MockMvc; +import java.io.Serializable; import java.util.Arrays; import java.util.HashMap; import java.util.List; import java.util.Map; +import static org.apache.griffin.core.measure.MeasureTestHelper.createJobDetailMap; import static org.hamcrest.CoreMatchers.is; +import static org.hamcrest.CoreMatchers.notNullValue; +import static org.hamcrest.Matchers.hasEntry; +import static org.hamcrest.Matchers.hasKey; import static org.hamcrest.Matchers.hasSize; import static org.mockito.Mockito.when; import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get; @@ -86,4 +91,24 @@ public class MeasureOrgControllerTest { .andExpect(jsonPath("$.orgName", hasSize(1))); } + @Test + public void testGetMeasureWithJobsGroupByOrg() throws Exception { + Map<String, Serializable> jobDetail = createJobDetailMap(); + List<Map<String, Serializable>> jobList = Arrays.asList(jobDetail); + Map<String, List<Map<String, Serializable>>> measuresById = new HashMap<>(); + measuresById.put("1", jobList); + when(jobService.getJobDetailsGroupByMeasureId()).thenReturn(measuresById); + + Map<String, List<Map<String, Serializable>>> measuresByName = new HashMap<>(); + Map<String, Map<String, List<Map<String, Serializable>>>> map = new HashMap<>(); + measuresByName.put("measureName", jobList); + map.put("orgName", measuresByName); + when(measureOrgService.getMeasureWithJobDetailsGroupByOrg(measuresById)).thenReturn(map); + + mockMvc.perform(get(URLHelper.API_VERSION_PATH + "/org/measure/jobs")) + .andExpect(status().isOk()) + .andExpect(jsonPath("$", notNullValue())) + .andExpect(jsonPath("$.orgName", hasKey("measureName"))); + } + } http://git-wip-us.apache.org/repos/asf/incubator-griffin/blob/2556a142/service/src/test/java/org/apache/griffin/core/measure/MeasureOrgServiceImplTest.java ---------------------------------------------------------------------- diff --git a/service/src/test/java/org/apache/griffin/core/measure/MeasureOrgServiceImplTest.java b/service/src/test/java/org/apache/griffin/core/measure/MeasureOrgServiceImplTest.java index ad9520b..6ad9a6a 100644 --- a/service/src/test/java/org/apache/griffin/core/measure/MeasureOrgServiceImplTest.java +++ b/service/src/test/java/org/apache/griffin/core/measure/MeasureOrgServiceImplTest.java @@ -28,11 +28,11 @@ import org.mockito.InjectMocks; import org.mockito.Mock; import org.springframework.test.context.junit4.SpringRunner; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; -import java.util.Map; +import java.io.Serializable; +import java.util.*; +import static org.apache.griffin.core.measure.MeasureTestHelper.createATestMeasure; +import static org.apache.griffin.core.measure.MeasureTestHelper.createJobDetailMap; import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.BDDMockito.given; import static org.mockito.Mockito.when; @@ -78,4 +78,21 @@ public class MeasureOrgServiceImplTest { } + @Test + public void testMeasureWithJobDetailsGroupByOrg() throws Exception { + Measure measure = createATestMeasure("measure", "org"); + measure.setId(1L); + given(measureRepo.findByDeleted(false)).willReturn(Arrays.asList(measure)); + + Map<String, Serializable> jobDetail = createJobDetailMap(); + List<Map<String, Serializable>> jobList = Arrays.asList(jobDetail); + Map<String, List<Map<String, Serializable>>> measuresById = new HashMap<>(); + measuresById.put("1", jobList); + + Map<String, Map<String, List<Map<String, Serializable>>>> map = service.getMeasureWithJobDetailsGroupByOrg(measuresById); + assertThat(map.size()).isEqualTo(1); + assertThat(map).containsKey("org"); + assertThat(map.get("org").get("measure")).isEqualTo(jobList); + } + } \ No newline at end of file http://git-wip-us.apache.org/repos/asf/incubator-griffin/blob/2556a142/service/src/test/java/org/apache/griffin/core/measure/MeasureTestHelper.java ---------------------------------------------------------------------- diff --git a/service/src/test/java/org/apache/griffin/core/measure/MeasureTestHelper.java b/service/src/test/java/org/apache/griffin/core/measure/MeasureTestHelper.java index 563732c..c9f1c7b 100644 --- a/service/src/test/java/org/apache/griffin/core/measure/MeasureTestHelper.java +++ b/service/src/test/java/org/apache/griffin/core/measure/MeasureTestHelper.java @@ -26,10 +26,8 @@ import org.quartz.JobDataMap; import org.quartz.Trigger; import org.quartz.impl.JobDetailImpl; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; +import java.io.Serializable; +import java.util.*; public class MeasureTestHelper { public static Measure createATestMeasure(String name, String org) throws Exception{ @@ -71,4 +69,19 @@ public class MeasureTestHelper { jobDetail.setJobDataMap(jobInfoMap); return jobDetail; } + + public static Map<String, Serializable> createJobDetailMap() { + Map<String, Serializable> jobDetailMap = new HashMap<>(); + jobDetailMap.put("jobName","jobName"); + jobDetailMap.put("measureId", "1"); + jobDetailMap.put("groupName","BA"); + jobDetailMap.put("targetPattern", "YYYYMMdd-HH"); + jobDetailMap.put("triggerState", Trigger.TriggerState.NORMAL); + jobDetailMap.put("nextFireTime", "1509613440000"); + jobDetailMap.put("previousFireTime", "1509613410000"); + jobDetailMap.put("interval", "3000"); + jobDetailMap.put("sourcePattern", "YYYYMMdd-HH"); + jobDetailMap.put("jobStartTime", "1506356105876"); + return jobDetailMap; + } }
