Repository: incubator-griffin Updated Branches: refs/heads/master 32f080d75 -> 6be533035
http://git-wip-us.apache.org/repos/asf/incubator-griffin/blob/6be53303/service/src/test/java/org/apache/griffin/core/measure/GriffinMeasureOperatorImplTest.java ---------------------------------------------------------------------- diff --git a/service/src/test/java/org/apache/griffin/core/measure/GriffinMeasureOperatorImplTest.java b/service/src/test/java/org/apache/griffin/core/measure/GriffinMeasureOperatorImplTest.java new file mode 100644 index 0000000..3d99d71 --- /dev/null +++ b/service/src/test/java/org/apache/griffin/core/measure/GriffinMeasureOperatorImplTest.java @@ -0,0 +1,109 @@ +///* +//Licensed to the Apache Software Foundation (ASF) under one +//or more contributor license agreements. See the NOTICE file +//distributed with this work for additional information +//regarding copyright ownership. The ASF licenses this file +//to you 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. +//*/ +// +//package org.apache.griffin.core.measure; +// +//import org.apache.griffin.core.exception.GriffinException; +//import org.apache.griffin.core.job.JobServiceImpl; +//import org.apache.griffin.core.measure.entity.DataConnector; +//import org.apache.griffin.core.measure.entity.GriffinMeasure; +//import org.apache.griffin.core.measure.entity.Measure; +//import org.apache.griffin.core.measure.repo.DataConnectorRepo; +//import org.apache.griffin.core.measure.repo.MeasureRepo; +//import org.junit.Before; +//import org.junit.Test; +//import org.junit.runner.RunWith; +//import org.mockito.InjectMocks; +//import org.mockito.Mock; +//import org.springframework.test.context.junit4.SpringRunner; +// +//import static org.apache.griffin.core.util.EntityHelper.createDataConnector; +//import static org.apache.griffin.core.util.EntityHelper.createGriffinMeasure; +//import static org.junit.Assert.assertEquals; +//import static org.mockito.BDDMockito.given; +//import static org.mockito.Mockito.*; +// +//@RunWith(SpringRunner.class) +//public class GriffinMeasureOperatorImplTest { +// +// @InjectMocks +// private GriffinMeasureOperationImpl operation; +// +// @Mock +// private MeasureRepo<Measure> measureRepo; +// @Mock +// private DataConnectorRepo dcRepo; +// @Mock +// private JobServiceImpl jobService; +// +// +// @Before +// public void setup() { +// } +// +// @Test +// public void testCreateForSuccess() throws Exception { +// Measure measure = createGriffinMeasure("view_item_hourly"); +// given(measureRepo.save(measure)).willReturn(measure); +// +// Measure m = operation.create(measure); +// assertEquals(m.getName(), measure.getName()); +// } +// +// @Test(expected = GriffinException.BadRequestException.class) +// public void testCreateForFailureWithConnectorNull() throws Exception { +// String measureName = "view_item_hourly"; +// DataConnector dcSource = createDataConnector(null, "default", "test_data_src", "dt=#YYYYMMdd# AND hour=#HH#"); +// DataConnector dcTarget = createDataConnector(null, "default", "test_data_tgt", "dt=#YYYYMMdd# AND hour=#HH#"); +// GriffinMeasure measure = createGriffinMeasure(measureName, dcSource, dcTarget); +// +// operation.create(measure); +// } +// +// @Test +// public void testUpdateForSuccess() throws Exception { +// Measure measure = createGriffinMeasure("view_item_hourly"); +// given(measureRepo.save(measure)).willReturn(measure); +// +// operation.update(measure); +// verify(measureRepo, times(1)).save(measure); +// } +// +// @Test +// public void testDeleteForSuccess() throws Exception { +// Measure measure = createGriffinMeasure("view_item_hourly"); +// measure.setId(1L); +// doNothing().when(jobService).deleteJobsRelateToMeasure(1L); +// given(measureRepo.save(measure)).willReturn(measure); +// +// operation.update(measure); +// verify(measureRepo, times(1)).save(measure); +// } +// +// @Test(expected = GriffinException.ServiceException.class) +// public void testDeleteForFailureWithPauseJob() throws Exception { +// Measure measure = createGriffinMeasure("view_item_hourly"); +// measure.setId(1L); +// doThrow(new GriffinException.ServiceException("Service exception", new RuntimeException())) +// .when(jobService).deleteJobsRelateToMeasure(1L); +// +// operation.delete(measure); +// } +// +//} http://git-wip-us.apache.org/repos/asf/incubator-griffin/blob/6be53303/service/src/test/java/org/apache/griffin/core/measure/MeasureControllerTest.java ---------------------------------------------------------------------- diff --git a/service/src/test/java/org/apache/griffin/core/measure/MeasureControllerTest.java b/service/src/test/java/org/apache/griffin/core/measure/MeasureControllerTest.java index 5bf6161..1ce77c0 100644 --- a/service/src/test/java/org/apache/griffin/core/measure/MeasureControllerTest.java +++ b/service/src/test/java/org/apache/griffin/core/measure/MeasureControllerTest.java @@ -45,10 +45,9 @@ import java.util.List; import static org.apache.griffin.core.util.EntityHelper.createGriffinMeasure; import static org.hamcrest.CoreMatchers.is; import static org.mockito.BDDMockito.given; -import static org.mockito.Mockito.doNothing; -import static org.mockito.Mockito.doThrow; -import static org.mockito.Mockito.when; +import static org.mockito.Mockito.*; import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.*; +import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; @@ -149,11 +148,12 @@ public class MeasureControllerTest { public void testUpdateMeasureForSuccess() throws Exception { Measure measure = createGriffinMeasure("view_item_hourly"); String measureJson = JsonUtil.toJson(measure); - doNothing().when(service).updateMeasure(measure); + doReturn(measure).when(service).updateMeasure(measure); mvc.perform(put(URLHelper.API_VERSION_PATH + "/measures") .contentType(MediaType.APPLICATION_JSON).content(measureJson)) - .andExpect(status().isNoContent()); + .andExpect(status().isOk()) + .andExpect(jsonPath("$.name", is("view_item_hourly"))); } @Test http://git-wip-us.apache.org/repos/asf/incubator-griffin/blob/6be53303/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 cc3828a..e30c7e9 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 @@ -73,7 +73,7 @@ public class MeasureOrgServiceImplTest { } @Test - public void testGetMeasureNamesGroupByOrgWithEmpty(){ + public void testGetMeasureNamesGroupByOrgWithNull(){ when(measureRepo.findByDeleted(false)).thenReturn(new ArrayList<>()); Map<String, List<String>> map = service.getMeasureNamesGroupByOrg(); assert map.size() == 0; http://git-wip-us.apache.org/repos/asf/incubator-griffin/blob/6be53303/service/src/test/java/org/apache/griffin/core/measure/MeasureServiceImplTest.java ---------------------------------------------------------------------- diff --git a/service/src/test/java/org/apache/griffin/core/measure/MeasureServiceImplTest.java b/service/src/test/java/org/apache/griffin/core/measure/MeasureServiceImplTest.java index ff5cf1e..0b2a9d9 100644 --- a/service/src/test/java/org/apache/griffin/core/measure/MeasureServiceImplTest.java +++ b/service/src/test/java/org/apache/griffin/core/measure/MeasureServiceImplTest.java @@ -30,6 +30,14 @@ import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.InjectMocks; import org.mockito.Mock; +import org.quartz.SchedulerException; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.boot.SpringBootConfiguration; +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.boot.test.context.TestComponent; +import org.springframework.boot.test.context.TestConfiguration; +import org.springframework.context.annotation.PropertySource; +import org.springframework.stereotype.Component; import org.springframework.test.context.junit4.SpringRunner; import java.util.ArrayList; @@ -44,20 +52,31 @@ import static org.mockito.BDDMockito.given; import static org.mockito.Mockito.*; @RunWith(SpringRunner.class) +@Component public class MeasureServiceImplTest { @InjectMocks private MeasureServiceImpl service; @Mock - private MeasureOperation externalOp; + private MeasureOperator externalOp; @Mock - private MeasureOperation griffinOp; + private MeasureOperator griffinOp; @Mock private MeasureRepo<Measure> measureRepo; + @Value("${hive.hmshandler.retry.attempts}") + private String attempts; + + + @Test + public void test() { + System.out.println(attempts); + } + + @Before public void setup() { } @@ -110,7 +129,7 @@ public class MeasureServiceImplTest { } @Test - public void testDeleteMeasureByIdForExternalSuccess() { + public void testDeleteMeasureByIdForExternalSuccess() throws SchedulerException { ExternalMeasure measure = createExternalMeasure("externalMeasure"); measure.setId(1L); given(measureRepo.findByIdAndDeleted(measure.getId(), false)).willReturn(measure); @@ -121,7 +140,7 @@ public class MeasureServiceImplTest { } @Test(expected = GriffinException.NotFoundException.class) - public void testDeleteMeasureByIdFailureWithNotFound() { + public void testDeleteMeasureByIdFailureWithNotFound() throws SchedulerException { given(measureRepo.findByIdAndDeleted(1L, false)).willReturn(null); service.deleteMeasureById(1L); } @@ -146,7 +165,7 @@ public class MeasureServiceImplTest { } @Test - public void testDeleteMeasuresForExternalSuccess() { + public void testDeleteMeasuresForExternalSuccess() throws SchedulerException { ExternalMeasure measure = createExternalMeasure("externalMeasure"); measure.setId(1L); given(measureRepo.findByDeleted(false)).willReturn(Arrays.asList(measure)); @@ -198,7 +217,7 @@ public class MeasureServiceImplTest { public void testUpdateMeasureForGriffinSuccess() throws Exception { Measure measure = createGriffinMeasure("view_item_hourly"); given(measureRepo.findByIdAndDeleted(measure.getId(), false)).willReturn(measure); - doNothing().when(griffinOp).update(measure); + doReturn(measure).when(externalOp).update(measure); service.updateMeasure(measure); verify(griffinOp, times(1)).update(measure); @@ -225,7 +244,7 @@ public class MeasureServiceImplTest { public void testUpdateMeasureForExternal() { ExternalMeasure measure = createExternalMeasure("external_view_item_hourly"); given(measureRepo.findByIdAndDeleted(measure.getId(), false)).willReturn(measure); - doNothing().when(externalOp).update(measure); + doReturn(measure).when(externalOp).update(measure); service.updateMeasure(measure); verify(externalOp, times(1)).update(measure); http://git-wip-us.apache.org/repos/asf/incubator-griffin/blob/6be53303/service/src/test/java/org/apache/griffin/core/metastore/hive/HiveMetaStoreServiceImplTest.java ---------------------------------------------------------------------- diff --git a/service/src/test/java/org/apache/griffin/core/metastore/hive/HiveMetaStoreServiceImplTest.java b/service/src/test/java/org/apache/griffin/core/metastore/hive/HiveMetaStoreServiceImplTest.java index 96157ab..d27a87b 100644 --- a/service/src/test/java/org/apache/griffin/core/metastore/hive/HiveMetaStoreServiceImplTest.java +++ b/service/src/test/java/org/apache/griffin/core/metastore/hive/HiveMetaStoreServiceImplTest.java @@ -117,7 +117,7 @@ public class HiveMetaStoreServiceImplTest { String tableName = "table"; List<String> databases = Arrays.asList(useDbName); given(client.getAllDatabases()).willReturn(databases); - given(client.getAllTables(databases.iterator().next())).willReturn(Arrays.asList(tableName)); + given(client.getAllTables(databases.get(0))).willReturn(Arrays.asList(tableName)); given(client.getTable(useDbName, tableName)).willReturn(new Table()); assertEquals(service.getAllTable().size(), 1); } http://git-wip-us.apache.org/repos/asf/incubator-griffin/blob/6be53303/service/src/test/java/org/apache/griffin/core/metric/MetricControllerTest.java ---------------------------------------------------------------------- diff --git a/service/src/test/java/org/apache/griffin/core/metric/MetricControllerTest.java b/service/src/test/java/org/apache/griffin/core/metric/MetricControllerTest.java index 088144c..ca6fa57 100644 --- a/service/src/test/java/org/apache/griffin/core/metric/MetricControllerTest.java +++ b/service/src/test/java/org/apache/griffin/core/metric/MetricControllerTest.java @@ -44,6 +44,7 @@ import java.util.HashMap; import java.util.List; import static org.apache.griffin.core.exception.GriffinExceptionMessage.INVALID_METRIC_VALUE_FORMAT; +import static org.apache.griffin.core.measure.entity.DqType.ACCURACY; import static org.hamcrest.Matchers.hasSize; import static org.hamcrest.Matchers.is; import static org.mockito.BDDMockito.given; @@ -73,7 +74,7 @@ public class MetricControllerTest { @Test public void testGetAllMetricsSuccess() throws Exception { - Metric metric = new Metric("metricName", "accuracy", "owner", Collections.emptyList()); + Metric metric = new Metric("metricName", ACCURACY, "owner", Collections.emptyList()); given(service.getAllMetrics()).willReturn( Collections.singletonMap("measureName", Collections.singletonList(metric))); http://git-wip-us.apache.org/repos/asf/incubator-griffin/blob/6be53303/service/src/test/java/org/apache/griffin/core/util/EntityHelper.java ---------------------------------------------------------------------- diff --git a/service/src/test/java/org/apache/griffin/core/util/EntityHelper.java b/service/src/test/java/org/apache/griffin/core/util/EntityHelper.java index 2428bad..e7185e0 100644 --- a/service/src/test/java/org/apache/griffin/core/util/EntityHelper.java +++ b/service/src/test/java/org/apache/griffin/core/util/EntityHelper.java @@ -34,7 +34,6 @@ import java.util.*; import static org.apache.griffin.core.job.JobInstance.*; import static org.apache.griffin.core.job.JobServiceImpl.GRIFFIN_JOB_ID; -import static org.apache.griffin.core.job.JobServiceImpl.JOB_SCHEDULE_ID; import static org.apache.hadoop.mapreduce.MRJobConfig.JOB_NAME; public class EntityHelper { @@ -59,20 +58,20 @@ public class EntityHelper { String rules = "source.id=target.id AND source.name=target.name AND source.age=target.age"; Map<String, Object> map = new HashMap<>(); map.put("detail", "detail info"); - Rule rule = new Rule("griffin-dsl", "accuracy", rules, map); + Rule rule = new Rule("griffin-dsl", "ACCURACY", rules, map); EvaluateRule evaluateRule = new EvaluateRule(Arrays.asList(rule)); return new GriffinMeasure(name, "test", dataSources, evaluateRule); } - public static DataConnector createDataConnector(String name, String database, String table, String where) { + public static DataConnector createDataConnector(String name, String database, String table, String where) throws IOException { HashMap<String, String> config = new HashMap<>(); config.put("database", database); config.put("table.name", table); config.put("where", where); - return new DataConnector(name, "1h", config, new ArrayList<>()); + return new DataConnector(name, "1h", config, null); } - public static DataConnector createDataConnector(String name, String database, String table, String where, SegmentPredicate predicate) { + public static DataConnector createDataConnector(String name, String database, String table, String where, SegmentPredicate predicate) throws IOException { HashMap<String, String> config = new HashMap<>(); config.put("database", database); config.put("table.name", table); @@ -124,7 +123,7 @@ public class EntityHelper { public static JobInstanceBean createJobInstance() { JobInstanceBean jobBean = new JobInstanceBean(); jobBean.setSessionId(1L); - jobBean.setState(LivySessionStates.State.starting); + jobBean.setState(LivySessionStates.State.STARTING); jobBean.setAppId("app_id"); jobBean.setTms(System.currentTimeMillis()); return jobBean; @@ -139,7 +138,6 @@ public class EntityHelper { jobDataMap.put(PREDICATES_KEY, predicatesJson); jobDataMap.put(JOB_NAME, "jobName"); jobDataMap.put(PREDICATE_JOB_NAME, "predicateJobName"); - jobDataMap.put(JOB_SCHEDULE_ID, 1L); jobDataMap.put(GRIFFIN_JOB_ID, 1L); jobDetail.setJobDataMap(jobDataMap); return jobDetail; @@ -169,8 +167,8 @@ public class EntityHelper { return trigger; } - public static GriffinJob createGriffinJob() { - return new GriffinJob(1L, 1L, "jobName", + public static BatchJob createGriffinJob() { + return new BatchJob(1L, 1L, "jobName", "quartzJobName", "quartzGroupName", false); } http://git-wip-us.apache.org/repos/asf/incubator-griffin/blob/6be53303/service/src/test/java/org/apache/griffin/core/util/JsonUtilTest.java ---------------------------------------------------------------------- diff --git a/service/src/test/java/org/apache/griffin/core/util/JsonUtilTest.java b/service/src/test/java/org/apache/griffin/core/util/JsonUtilTest.java index baa20a9..79e86b1 100644 --- a/service/src/test/java/org/apache/griffin/core/util/JsonUtilTest.java +++ b/service/src/test/java/org/apache/griffin/core/util/JsonUtilTest.java @@ -80,5 +80,8 @@ public class JsonUtilTest { assert map == null; } - + @Test + public void test() throws IOException { + System.out.println(FileUtil.readEnv("env/env_batch.json")); + } } \ No newline at end of file
