Browse Source

AlertMappert UT modify #1465 (#1616)

* remove LogViewServiceGrpc.java file and pom modify

* remove kazoo

* remove kazoo

* remove kazoo

* remove common monitor package

* add license

* remove kazoo modify

* remove kazoo modify

* remove kazoo modify

* remove kazoo modify

* remove kazoo modify

* remove kazoo modify

* install.sh remove python kazoo

* add system param whether repeat running

* remove kazoo modify

* BusinessTimeUtils remove whther repeat running inner param

* add AccessTokenMapperTest UT

* CI UT yml modify,start postgresql and zookeeper by default

* add AlertGroupMapperTest UT in github action

* Conflicts reslove

* AlertMappert UT modify

* AlertMappert UT modify

* AlertMappert UT modify
pull/2/head
qiaozhanwei 5 years ago committed by GitHub
parent
commit
e9fcf6128e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 71
      dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/Alert.java
  2. 153
      dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/mapper/AlertMapperTest.java
  3. 1
      pom.xml

71
dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/entity/Alert.java

@ -32,7 +32,6 @@ import java.util.Map;
/** /**
* alert * alert
*/ */
@Data
@TableName("t_ds_alert") @TableName("t_ds_alert")
public class Alert { public class Alert {
@ -217,6 +216,72 @@ public class Alert {
this.updateTime = updateTime; this.updateTime = updateTime;
} }
@Override
public boolean equals(Object o) {
if (this == o) {
return true;
}
if (o == null || getClass() != o.getClass()) {
return false;
}
Alert alert = (Alert) o;
if (id != alert.id) {
return false;
}
if (alertGroupId != alert.alertGroupId) {
return false;
}
if (!title.equals(alert.title)) {
return false;
}
if (showType != alert.showType) {
return false;
}
if (!content.equals(alert.content)) {
return false;
}
if (alertType != alert.alertType) {
return false;
}
if (alertStatus != alert.alertStatus) {
return false;
}
if (!log.equals(alert.log)) {
return false;
}
if (!receivers.equals(alert.receivers)) {
return false;
}
if (!receiversCc.equals(alert.receiversCc)) {
return false;
}
if (!createTime.equals(alert.createTime)) {
return false;
}
return updateTime.equals(alert.updateTime) && info.equals(alert.info);
}
@Override
public int hashCode() {
int result = id;
result = 31 * result + title.hashCode();
result = 31 * result + showType.hashCode();
result = 31 * result + content.hashCode();
result = 31 * result + alertType.hashCode();
result = 31 * result + alertStatus.hashCode();
result = 31 * result + log.hashCode();
result = 31 * result + alertGroupId;
result = 31 * result + receivers.hashCode();
result = 31 * result + receiversCc.hashCode();
result = 31 * result + createTime.hashCode();
result = 31 * result + updateTime.hashCode();
result = 31 * result + info.hashCode();
return result;
}
@Override @Override
public String toString() { public String toString() {
return "Alert{" + return "Alert{" +
@ -228,10 +293,10 @@ public class Alert {
", alertStatus=" + alertStatus + ", alertStatus=" + alertStatus +
", log='" + log + '\'' + ", log='" + log + '\'' +
", alertGroupId=" + alertGroupId + ", alertGroupId=" + alertGroupId +
", createTime=" + createTime +
", updateTime=" + updateTime +
", receivers='" + receivers + '\'' + ", receivers='" + receivers + '\'' +
", receiversCc='" + receiversCc + '\'' + ", receiversCc='" + receiversCc + '\'' +
", createTime=" + createTime +
", updateTime=" + updateTime +
", info=" + info + ", info=" + info +
'}'; '}';
} }

153
dolphinscheduler-dao/src/test/java/org/apache/dolphinscheduler/dao/mapper/AlertMapperTest.java

@ -19,44 +19,52 @@ package org.apache.dolphinscheduler.dao.mapper;
import org.apache.dolphinscheduler.common.enums.AlertStatus; import org.apache.dolphinscheduler.common.enums.AlertStatus;
import org.apache.dolphinscheduler.common.enums.AlertType; import org.apache.dolphinscheduler.common.enums.AlertType;
import org.apache.dolphinscheduler.common.enums.ShowType; import org.apache.dolphinscheduler.common.enums.ShowType;
import org.apache.dolphinscheduler.common.utils.DateUtils;
import org.apache.dolphinscheduler.dao.entity.Alert; import org.apache.dolphinscheduler.dao.entity.Alert;
import org.junit.Assert; import org.junit.Assert;
import org.junit.Test; import org.junit.Test;
import org.junit.runner.RunWith; import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest; import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.annotation.Rollback;
import org.springframework.test.context.junit4.SpringRunner; import org.springframework.test.context.junit4.SpringRunner;
import org.springframework.transaction.annotation.Transactional;
import java.util.Date; import java.util.*;
import java.util.List;
import static org.hamcrest.Matchers.*;
import static org.junit.Assert.*;
@RunWith(SpringRunner.class) @RunWith(SpringRunner.class)
@SpringBootTest @SpringBootTest
@Transactional
@Rollback(true)
public class AlertMapperTest { public class AlertMapperTest {
@Autowired @Autowired
AlertMapper alertMapper; private AlertMapper alertMapper;
/** /**
* insert * test insert
* @return Alert * @return
*/ */
private Alert insertOne(){ @Test
//insertOne public void testInsert(){
Alert alert = new Alert(); Alert expectedAlert = createAlert();
alert.setContent("[{'type':'WORKER','host':'192.168.xx.xx','event':'server down','warning level':'serious'}]"); assertNotNull(expectedAlert.getId());
alert.setLog("success"); assertThat(expectedAlert.getId(), greaterThan(0));
alert.setReceivers("xx@aa.com"); }
alert.setAlertType(AlertType.EMAIL);
alert.setShowType(ShowType.TABLE);
alert.setAlertGroupId(1); /**
alert.setAlertStatus(AlertStatus.EXECUTION_SUCCESS); * test select by id
alert.setCreateTime(new Date()); * @return
alert.setUpdateTime(new Date()); */
alertMapper.insert(alert); @Test
return alert; public void testSelectById(){
Alert expectedAlert = createAlert();
Alert actualAlert = alertMapper.selectById(expectedAlert.getId());
assertEquals(expectedAlert, actualAlert);
} }
/** /**
@ -64,13 +72,18 @@ public class AlertMapperTest {
*/ */
@Test @Test
public void testUpdate(){ public void testUpdate(){
//insertOne
Alert alert = insertOne(); Alert expectedAlert = createAlert();
//update
alert.setTitle("hello"); expectedAlert.setAlertStatus(AlertStatus.EXECUTION_FAILURE);
int update = alertMapper.updateById(alert); expectedAlert.setLog("error");
Assert.assertEquals(update, 1); expectedAlert.setUpdateTime(DateUtils.getCurrentDate());
alertMapper.deleteById(alert.getId());
alertMapper.updateById(expectedAlert);
Alert actualAlert = alertMapper.selectById(expectedAlert.getId());
assertEquals(expectedAlert, actualAlert);
} }
/** /**
@ -78,33 +91,83 @@ public class AlertMapperTest {
*/ */
@Test @Test
public void testDelete(){ public void testDelete(){
Alert expectedAlert = createAlert();
Alert alert = insertOne(); alertMapper.deleteById(expectedAlert.getId());
int delete = alertMapper.deleteById(alert.getId());
Assert.assertEquals(delete, 1); Alert actualAlert = alertMapper.selectById(expectedAlert.getId());
assertNull(actualAlert);
} }
/** /**
* test query * test list alert by status
*/ */
@Test @Test
public void testQuery() { public void testListAlertByStatus() {
Alert alert = insertOne(); Integer count = 10;
//query AlertStatus waitExecution = AlertStatus.WAIT_EXECUTION;
List<Alert> alerts = alertMapper.selectList(null);
Assert.assertNotEquals(alerts.size(), 0); Map<Integer,Alert> expectedAlertMap = createAlertMap(count, waitExecution);
alertMapper.deleteById(alert.getId());
List<Alert> actualAlerts = alertMapper.listAlertByStatus(waitExecution);
for (Alert actualAlert : actualAlerts){
Alert expectedAlert = expectedAlertMap.get(actualAlert.getId());
if (expectedAlert != null){
assertEquals(expectedAlert,actualAlert);
}
}
} }
/** /**
* test list alert by status * create alert map
* @param count alert count
* @param alertStatus alert status
* @return alert map
*/ */
@Test private Map<Integer,Alert> createAlertMap(Integer count,AlertStatus alertStatus){
public void testListAlertByStatus() { Map<Integer,Alert> alertMap = new HashMap<>();
Alert alert = insertOne();
//query for (int i = 0 ; i < count ;i++){
List<Alert> alerts = alertMapper.listAlertByStatus(AlertStatus.EXECUTION_SUCCESS); Alert alert = createAlert(alertStatus);
Assert.assertNotEquals(alerts.size(), 0); alertMap.put(alert.getId(),alert);
alertMapper.deleteById(alert.getId()); }
return alertMap;
}
/**
* create alert
* @return alert
* @throws Exception
*/
private Alert createAlert(){
return createAlert(AlertStatus.WAIT_EXECUTION);
}
/**
* create alert
* @param alertStatus alert status
* @return alert
*/
private Alert createAlert(AlertStatus alertStatus){
Alert alert = new Alert();
alert.setShowType(ShowType.TABLE);
alert.setTitle("test alert");
alert.setContent("[{'type':'WORKER','host':'192.168.xx.xx','event':'server down','warning level':'serious'}]");
alert.setAlertType(AlertType.EMAIL);
alert.setAlertStatus(alertStatus);
alert.setLog("success");
alert.setReceivers("aa@aa.com");
alert.setReceiversCc("bb@aa.com");
alert.setCreateTime(DateUtils.getCurrentDate());
alert.setUpdateTime(DateUtils.getCurrentDate());
alertMapper.insert(alert);
return alert;
} }
} }

1
pom.xml

@ -674,6 +674,7 @@
<include>**/server/utils/FlinkArgsUtilsTest.java</include> <include>**/server/utils/FlinkArgsUtilsTest.java</include>
<include>**/dao/mapper/AccessTokenMapperTest.java</include> <include>**/dao/mapper/AccessTokenMapperTest.java</include>
<include>**/dao/mapper/AlertGroupMapperTest.java</include> <include>**/dao/mapper/AlertGroupMapperTest.java</include>
<include>**/dao/mapper/AlertMapperTest.java</include>
</includes> </includes>
<!-- <skip>true</skip> --> <!-- <skip>true</skip> -->
</configuration> </configuration>

Loading…
Cancel
Save