add unit test in UdfFuncMapperTest (#940)
* rename from DatasourceUserMapper to DataSourceUserMapper * add unit test in UserMapper and WorkerGroupMapper * change cn.escheduler to org.apache.dolphinscheduler * add unit test in UdfFuncMapperTest * add unit test in UdfFuncMapperTest * remove DatabaseConfiguration * add ConnectionFactoryTest
This commit is contained in:
parent
a6bd568df7
commit
58b55d4014
|
|
@ -1532,7 +1532,7 @@ public class ProcessDao extends AbstractBaseDao {
|
|||
* @param ids
|
||||
* @return
|
||||
*/
|
||||
public List<UdfFunc> queryUdfFunListByids(String ids){
|
||||
public List<UdfFunc> queryUdfFunListByids(int[] ids){
|
||||
|
||||
return udfFuncMapper.queryUdfByIdStr(ids, null);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -16,6 +16,7 @@
|
|||
*/
|
||||
package org.apache.dolphinscheduler.dao.entity;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import org.apache.dolphinscheduler.common.enums.UdfType;
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
|
|
@ -58,12 +59,13 @@ public class UdfFunc {
|
|||
/**
|
||||
* udf data base
|
||||
*/
|
||||
@TableField("`database`")
|
||||
private String database;
|
||||
|
||||
/**
|
||||
* udf description
|
||||
*/
|
||||
private String desc;
|
||||
private String description;
|
||||
|
||||
/**
|
||||
* resource id
|
||||
|
|
@ -138,12 +140,12 @@ public class UdfFunc {
|
|||
this.database = database;
|
||||
}
|
||||
|
||||
public String getDesc() {
|
||||
return desc;
|
||||
public String getDescription() {
|
||||
return description;
|
||||
}
|
||||
|
||||
public void setDesc(String desc) {
|
||||
this.desc = desc;
|
||||
public void setDescription(String description) {
|
||||
this.description = description;
|
||||
}
|
||||
|
||||
public int getResourceId() {
|
||||
|
|
@ -196,7 +198,7 @@ public class UdfFunc {
|
|||
", className='" + className + '\'' +
|
||||
", argTypes='" + argTypes + '\'' +
|
||||
", database='" + database + '\'' +
|
||||
", desc='" + desc + '\'' +
|
||||
", description='" + description + '\'' +
|
||||
", resourceId=" + resourceId +
|
||||
", resourceName='" + resourceName + '\'' +
|
||||
", type=" + type +
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@ import java.util.List;
|
|||
public interface UdfFuncMapper extends BaseMapper<UdfFunc> {
|
||||
|
||||
|
||||
List<UdfFunc> queryUdfByIdStr(@Param("ids") String ids,
|
||||
List<UdfFunc> queryUdfByIdStr(@Param("ids") int[] ids,
|
||||
@Param("funcNames") String funcNames);
|
||||
|
||||
IPage<UdfFunc> queryUdfFuncPaging(IPage<UdfFunc> page,
|
||||
|
|
|
|||
|
|
@ -6,9 +6,12 @@
|
|||
from t_escheduler_udfs
|
||||
where 1 = 1
|
||||
<if test="ids != null and ids != ''">
|
||||
and id in (#{ids})
|
||||
and id in
|
||||
<foreach collection="ids" item="i" open="(" close=")" separator=",">
|
||||
#{i}
|
||||
</foreach>
|
||||
</if>
|
||||
<if test="funcName != null and funcName != ''">
|
||||
<if test="funcNames != null and funcNames != ''">
|
||||
and func_name = #{funcName}
|
||||
</if>
|
||||
order by id asc
|
||||
|
|
|
|||
|
|
@ -30,4 +30,4 @@ public class ConnectionFactoryTest {
|
|||
Connection connection = ConnectionFactory.getDataSource().getPooledConnection().getConnection();
|
||||
Assert.assertEquals(connection != null , true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -17,32 +17,225 @@
|
|||
package org.apache.dolphinscheduler.dao.mapper;
|
||||
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import org.apache.dolphinscheduler.common.enums.UdfType;
|
||||
import org.apache.dolphinscheduler.common.enums.UserType;
|
||||
import org.apache.dolphinscheduler.dao.entity.UDFUser;
|
||||
import org.apache.dolphinscheduler.dao.entity.UdfFunc;
|
||||
import org.apache.dolphinscheduler.dao.entity.User;
|
||||
import org.junit.Assert;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.test.context.junit4.SpringRunner;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@RunWith(SpringRunner.class)
|
||||
@SpringBootTest
|
||||
public class UdfFuncMapperTest {
|
||||
|
||||
@Autowired
|
||||
private UserMapper userMapper;
|
||||
|
||||
@Autowired
|
||||
UdfFuncMapper udfFuncMapper;
|
||||
|
||||
@Autowired
|
||||
UDFUserMapper udfUserMapper;
|
||||
|
||||
/**
|
||||
* insert one udf
|
||||
* @return
|
||||
*/
|
||||
private UdfFunc insertOne(){
|
||||
UdfFunc udfFunc = new UdfFunc();
|
||||
udfFunc.setUserId(1);
|
||||
udfFunc.setFuncName("dolphin_udf_func");
|
||||
udfFunc.setClassName("org.apache.dolphinscheduler.test.mr");
|
||||
udfFunc.setType(UdfType.HIVE);
|
||||
udfFunc.setResourceId(1);
|
||||
udfFunc.setResourceName("dolphin_resource");
|
||||
udfFunc.setCreateTime(new Date());
|
||||
udfFunc.setUpdateTime(new Date());
|
||||
udfFuncMapper.insert(udfFunc);
|
||||
return udfFunc;
|
||||
}
|
||||
|
||||
/**
|
||||
* insert one udf
|
||||
* @return
|
||||
*/
|
||||
private UdfFunc insertOne(User user){
|
||||
UdfFunc udfFunc = new UdfFunc();
|
||||
udfFunc.setUserId(user.getId());
|
||||
udfFunc.setFuncName("dolphin_udf_func");
|
||||
udfFunc.setClassName("org.apache.dolphinscheduler.test.mr");
|
||||
udfFunc.setType(UdfType.HIVE);
|
||||
udfFunc.setResourceId(1);
|
||||
udfFunc.setResourceName("dolphin_resource");
|
||||
udfFunc.setCreateTime(new Date());
|
||||
udfFunc.setUpdateTime(new Date());
|
||||
udfFuncMapper.insert(udfFunc);
|
||||
return udfFunc;
|
||||
}
|
||||
|
||||
/**
|
||||
* insert one user
|
||||
* @return
|
||||
*/
|
||||
private User insertOneUser(){
|
||||
User user = new User();
|
||||
user.setUserName("user1");
|
||||
user.setUserPassword("1");
|
||||
user.setEmail("xx@123.com");
|
||||
user.setUserType(UserType.GENERAL_USER);
|
||||
user.setCreateTime(new Date());
|
||||
user.setTenantId(1);
|
||||
user.setUpdateTime(new Date());
|
||||
userMapper.insert(user);
|
||||
return user;
|
||||
}
|
||||
|
||||
/**
|
||||
* insert one user
|
||||
* @return
|
||||
*/
|
||||
private User insertOneUser(String userName){
|
||||
User user = new User();
|
||||
user.setUserName(userName);
|
||||
user.setUserPassword("1");
|
||||
user.setEmail("xx@123.com");
|
||||
user.setUserType(UserType.GENERAL_USER);
|
||||
user.setCreateTime(new Date());
|
||||
user.setTenantId(1);
|
||||
user.setUpdateTime(new Date());
|
||||
userMapper.insert(user);
|
||||
return user;
|
||||
}
|
||||
|
||||
private UDFUser insertOneUDFUser(User user,UdfFunc udfFunc){
|
||||
UDFUser udfUser = new UDFUser();
|
||||
udfUser.setUdfId(udfFunc.getId());
|
||||
udfUser.setUserId(user.getId());
|
||||
udfUser.setCreateTime(new Date());
|
||||
udfUser.setUpdateTime(new Date());
|
||||
udfUserMapper.insert(udfUser);
|
||||
return udfUser;
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testUpdate(){
|
||||
//insertOne
|
||||
UdfFunc udfFunc = insertOne();
|
||||
udfFunc.setResourceName("dolphin_resource_update");
|
||||
udfFunc.setResourceId(2);
|
||||
udfFunc.setClassName("org.apache.dolphinscheduler.test.mrUpdate");
|
||||
udfFunc.setUpdateTime(new Date());
|
||||
//update
|
||||
int update = udfFuncMapper.updateById(udfFunc);
|
||||
udfFuncMapper.deleteById(udfFunc.getId());
|
||||
Assert.assertEquals(update, 1);
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testDelete(){
|
||||
//insertOne
|
||||
UdfFunc udfFunc = insertOne();
|
||||
//delete
|
||||
int delete = udfFuncMapper.deleteById(udfFunc.getId());
|
||||
Assert.assertEquals(delete, 1);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testQuery(){
|
||||
//insertOne
|
||||
UdfFunc udfFunc = insertOne();
|
||||
//query
|
||||
List<UdfFunc> udfFuncList = udfFuncMapper.selectList(null);
|
||||
Assert.assertNotEquals(udfFuncList.size(), 0);
|
||||
udfFuncMapper.deleteById(udfFunc.getId());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testQueryUdfByIdStr() {
|
||||
//insertOne
|
||||
UdfFunc udfFunc = insertOne();
|
||||
//insertOne
|
||||
UdfFunc udfFunc1 = insertOne();
|
||||
int[] idArray = new int[]{udfFunc.getId(),udfFunc1.getId()};
|
||||
//queryUdfByIdStr
|
||||
List<UdfFunc> udfFuncList = udfFuncMapper.queryUdfByIdStr(idArray,"");
|
||||
Assert.assertNotEquals(udfFuncList.size(), 0);
|
||||
udfFuncMapper.deleteById(udfFunc.getId());
|
||||
udfFuncMapper.deleteById(udfFunc1.getId());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testQueryUdfFuncPaging() {
|
||||
//insertOneUser
|
||||
User user = insertOneUser();
|
||||
//insertOne
|
||||
UdfFunc udfFunc = insertOne(user);
|
||||
//queryUdfFuncPaging
|
||||
Page<UdfFunc> page = new Page(1,3);
|
||||
IPage<UdfFunc> udfFuncIPage = udfFuncMapper.queryUdfFuncPaging(page,user.getId(),"");
|
||||
userMapper.deleteById(user.getId());
|
||||
udfFuncMapper.deleteById(udfFunc.getId());
|
||||
Assert.assertNotEquals(udfFuncIPage.getTotal(), 0);
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testGetUdfFuncByType() {
|
||||
//insertOneUser
|
||||
User user = insertOneUser();
|
||||
//insertOne
|
||||
UdfFunc udfFunc = insertOne(user);
|
||||
//getUdfFuncByType
|
||||
List<UdfFunc> udfFuncList = udfFuncMapper.getUdfFuncByType(user.getId(), udfFunc.getType().ordinal());
|
||||
userMapper.deleteById(user.getId());
|
||||
udfFuncMapper.deleteById(udfFunc.getId());
|
||||
Assert.assertNotEquals(udfFuncList.size(), 0);
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testQueryUdfFuncExceptUserId() {
|
||||
//insertOneUser
|
||||
User user1 = insertOneUser();
|
||||
User user2 = insertOneUser("user2");
|
||||
//insertOne
|
||||
UdfFunc udfFunc1 = insertOne(user1);
|
||||
UdfFunc udfFunc2 = insertOne(user2);
|
||||
List<UdfFunc> udfFuncList = udfFuncMapper.queryUdfFuncExceptUserId(user1.getId());
|
||||
userMapper.deleteById(user1.getId());
|
||||
userMapper.deleteById(user2.getId());
|
||||
udfFuncMapper.deleteById(udfFunc1.getId());
|
||||
udfFuncMapper.deleteById(udfFunc2.getId());
|
||||
Assert.assertNotEquals(udfFuncList.size(), 0);
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testQueryAuthedUdfFunc() {
|
||||
//insertOneUser
|
||||
User user = insertOneUser();
|
||||
|
||||
//insertOne
|
||||
UdfFunc udfFunc = insertOne(user);
|
||||
|
||||
//insertOneUDFUser
|
||||
UDFUser udfUser = insertOneUDFUser(user, udfFunc);
|
||||
//queryAuthedUdfFunc
|
||||
List<UdfFunc> udfFuncList = udfFuncMapper.queryAuthedUdfFunc(user.getId());
|
||||
userMapper.deleteById(user.getId());
|
||||
udfFuncMapper.deleteById(udfFunc.getId());
|
||||
udfUserMapper.deleteById(udfUser.getId());
|
||||
Assert.assertNotEquals(udfFuncList.size(), 0);
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue