模块化拆分
This commit is contained in:
@@ -0,0 +1,11 @@
|
||||
package cn.celess.common;
|
||||
|
||||
import org.springframework.boot.SpringApplication;
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
|
||||
@SpringBootApplication
|
||||
public class CommonApplication {
|
||||
public static void main(String[] args) {
|
||||
SpringApplication.run(CommonApplication.class, args);
|
||||
}
|
||||
}
|
||||
@@ -1,9 +1,22 @@
|
||||
package cn.celess.common.config;
|
||||
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.mybatis.spring.annotation.MapperScan;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
|
||||
@Configuration
|
||||
@MapperScan("cn.celess.common.mapper")
|
||||
@Slf4j
|
||||
public class MybatisConfig {
|
||||
|
||||
// @Bean
|
||||
// public SqlSessionFactory sqlSessionFactory() throws Exception {
|
||||
// log.info("配置Mybatis的配置项");
|
||||
// PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver();
|
||||
// SqlSessionFactoryBean bean = new SqlSessionFactoryBean();
|
||||
// // 此处省略部分代码
|
||||
// bean.setMapperLocations(resolver.getResources("classpath:mapper/*.xml"));
|
||||
// bean.setTypeAliasesPackage("cn.celess.common.entity");
|
||||
// return bean.getObject();
|
||||
// }
|
||||
}
|
||||
|
||||
@@ -17,7 +17,6 @@ import org.springframework.web.bind.annotation.ExceptionHandler;
|
||||
import org.springframework.web.bind.annotation.ResponseBody;
|
||||
import org.springframework.web.method.annotation.MethodArgumentTypeMismatchException;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
|
||||
/**
|
||||
@@ -28,11 +27,11 @@ import javax.servlet.http.HttpServletRequest;
|
||||
@ControllerAdvice
|
||||
public class ExceptionHandle {
|
||||
public static final Logger logger = LoggerFactory.getLogger(ExceptionHandle.class);
|
||||
@Resource
|
||||
@Autowired
|
||||
MailService mailService;
|
||||
@Autowired
|
||||
HttpServletRequest request;
|
||||
@Value("${spring.profiles.active}")
|
||||
@Value("${spring.profiles.active:dev}")
|
||||
private String activeModel;
|
||||
|
||||
@ExceptionHandler(value = Exception.class)
|
||||
|
||||
331
blog-common/src/main/java/cn/celess/common/test/BaseTest.java
Normal file
331
blog-common/src/main/java/cn/celess/common/test/BaseTest.java
Normal file
@@ -0,0 +1,331 @@
|
||||
package cn.celess.common.test;
|
||||
|
||||
import cn.celess.common.entity.Response;
|
||||
import cn.celess.common.entity.dto.LoginReq;
|
||||
import cn.celess.common.entity.vo.QiniuResponse;
|
||||
import cn.celess.common.entity.vo.UserModel;
|
||||
import cn.celess.common.service.MailService;
|
||||
import cn.celess.common.service.QiniuService;
|
||||
import com.fasterxml.jackson.core.JsonParser;
|
||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import com.fasterxml.jackson.core.type.TypeReference;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.qiniu.storage.model.FileInfo;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.junit.After;
|
||||
import org.junit.Before;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.http.MediaType;
|
||||
import org.springframework.mail.SimpleMailMessage;
|
||||
import org.springframework.mock.web.MockHttpSession;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.test.context.ActiveProfiles;
|
||||
import org.springframework.test.context.web.WebAppConfiguration;
|
||||
import org.springframework.test.web.servlet.MockMvc;
|
||||
import org.springframework.test.web.servlet.MvcResult;
|
||||
import org.springframework.test.web.servlet.ResultActions;
|
||||
import org.springframework.test.web.servlet.request.MockHttpServletRequestBuilder;
|
||||
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
|
||||
import org.springframework.test.web.servlet.result.MockMvcResultMatchers;
|
||||
import org.springframework.test.web.servlet.setup.MockMvcBuilders;
|
||||
import org.springframework.web.context.WebApplicationContext;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.UnsupportedEncodingException;
|
||||
import java.lang.reflect.Field;
|
||||
import java.util.Map;
|
||||
import java.util.UUID;
|
||||
|
||||
import static cn.celess.common.enmu.ResponseEnum.SUCCESS;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
|
||||
/**
|
||||
* @Author: 小海
|
||||
* @Date: 2019/08/22 12:46
|
||||
* @Description: 测试基类
|
||||
*/
|
||||
@WebAppConfiguration
|
||||
@ActiveProfiles("test")
|
||||
public abstract class BaseTest {
|
||||
|
||||
private final Logger logger = LoggerFactory.getLogger(this.getClass());
|
||||
|
||||
protected MockMvc mockMvc;
|
||||
protected final static String Code = "code";
|
||||
protected final static String Result = "result";
|
||||
protected final static String USERE_MAIL = "zh56462271@qq.com";
|
||||
protected final static String ADMIN_EMAIL = "a@celess.cn";
|
||||
|
||||
/**
|
||||
* jackson 序列化/反序列化Json
|
||||
*/
|
||||
protected static final TypeReference<?> BOOLEAN_TYPE = new TypeReference<Response<Boolean>>() {
|
||||
};
|
||||
protected static final TypeReference<?> STRING_TYPE = new TypeReference<Response<String>>() {
|
||||
};
|
||||
protected static final TypeReference<?> OBJECT_TYPE = new TypeReference<Response<Object>>() {
|
||||
};
|
||||
protected static final TypeReference<?> MAP_OBJECT_TYPE = new TypeReference<Response<Map<String, Object>>>() {
|
||||
};
|
||||
|
||||
@Autowired
|
||||
private WebApplicationContext wac;
|
||||
protected MockHttpSession session;
|
||||
|
||||
@Before
|
||||
public void before() {
|
||||
this.mockMvc = MockMvcBuilders.webAppContextSetup(this.wac).build();
|
||||
session = new MockHttpSession();
|
||||
System.out.println("==========> 开始测试 <=========");
|
||||
}
|
||||
|
||||
@After
|
||||
public void after() {
|
||||
System.out.println("==========> 测试结束 <=========");
|
||||
}
|
||||
|
||||
/**
|
||||
* admin 权限用户登录
|
||||
*
|
||||
* @return token
|
||||
*/
|
||||
protected String adminLogin() {
|
||||
LoginReq req = new LoginReq();
|
||||
req.setEmail(ADMIN_EMAIL);
|
||||
req.setPassword("123456789");
|
||||
req.setIsRememberMe(true);
|
||||
String token = login(req);
|
||||
assertNotNull(token);
|
||||
return token;
|
||||
}
|
||||
|
||||
/**
|
||||
* user 权限用户登录
|
||||
*
|
||||
* @return token
|
||||
*/
|
||||
protected String userLogin() {
|
||||
LoginReq req = new LoginReq();
|
||||
req.setEmail(USERE_MAIL);
|
||||
req.setPassword("123456789");
|
||||
req.setIsRememberMe(true);
|
||||
String token = login(req);
|
||||
assertNotNull(token);
|
||||
return token;
|
||||
}
|
||||
|
||||
/**
|
||||
* 登录逻辑
|
||||
*
|
||||
* @param req 用户信息
|
||||
* @return token | null
|
||||
*/
|
||||
protected String login(LoginReq req) {
|
||||
String str = null;
|
||||
try {
|
||||
str = getMockData(MockMvcRequestBuilders.post("/login"), null, req)
|
||||
.andReturn().getResponse().getContentAsString();
|
||||
Response<UserModel> response = new ObjectMapper().readValue(str, new TypeReference<Response<UserModel>>() {
|
||||
});
|
||||
assertEquals(SUCCESS.getCode(), response.getCode());
|
||||
String token = response.getResult().getToken();
|
||||
assertNotNull(token);
|
||||
return token;
|
||||
} catch (Exception e) {
|
||||
logger.error("测试登录错误");
|
||||
e.printStackTrace();
|
||||
}
|
||||
assertNotNull(str);
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 产生指定长度的随机字符
|
||||
*
|
||||
* @param len len
|
||||
* @return str
|
||||
*/
|
||||
protected String randomStr(int len) {
|
||||
return UUID.randomUUID().toString().replaceAll("-", "").substring(0, len);
|
||||
}
|
||||
|
||||
/**
|
||||
* 产生指定长度的随机字符
|
||||
*
|
||||
* @return str
|
||||
*/
|
||||
protected String randomStr() {
|
||||
return UUID.randomUUID().toString();
|
||||
}
|
||||
|
||||
/**
|
||||
* 抽离的mock请求方法
|
||||
*
|
||||
* @param builder MockHttpServletRequestBuilder :get(...) post(...) ....
|
||||
* @return 返回 ResultActions
|
||||
* @throws Exception exc
|
||||
*/
|
||||
protected ResultActions getMockData(MockHttpServletRequestBuilder builder) throws Exception {
|
||||
return getMockData(builder, null, null);
|
||||
}
|
||||
|
||||
/**
|
||||
* 抽离的mock请求方法 重载
|
||||
*
|
||||
* @param builder ..
|
||||
* @param token 用户登录的token
|
||||
* @return ..
|
||||
* @throws Exception ..
|
||||
*/
|
||||
protected ResultActions getMockData(MockHttpServletRequestBuilder builder, String token) throws Exception {
|
||||
return getMockData(builder, token, null);
|
||||
}
|
||||
|
||||
/**
|
||||
* 抽离的mock请求方法 重载
|
||||
*
|
||||
* @param builder ..
|
||||
* @param token ..
|
||||
* @param content http中发送的APPLICATION_JSON的json数据
|
||||
* @return ..
|
||||
* @throws Exception ..
|
||||
*/
|
||||
protected ResultActions getMockData(MockHttpServletRequestBuilder builder, String token, Object content) throws Exception {
|
||||
// MockHttpServletRequestBuilder mockHttpServletRequestBuilder = get(url);
|
||||
if (token != null) {
|
||||
builder.header("Authorization", "Bearer "+token);
|
||||
}
|
||||
if (content != null) {
|
||||
ObjectMapper mapper = new ObjectMapper();
|
||||
builder.content(mapper.writeValueAsString(content)).contentType(MediaType.APPLICATION_JSON);
|
||||
logger.debug("param::json->{}", mapper.writeValueAsString(content));
|
||||
}
|
||||
return mockMvc.perform(builder).andExpect(MockMvcResultMatchers.status().isOk());
|
||||
}
|
||||
|
||||
|
||||
protected <T> Response<T> getResponse(String json) {
|
||||
return getResponse(json, OBJECT_TYPE);
|
||||
}
|
||||
|
||||
protected <T> Response<T> getResponse(MvcResult result) {
|
||||
return getResponse(result, OBJECT_TYPE);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据json 信息反序列化成Response对象
|
||||
*
|
||||
* @param json json
|
||||
* @param <T> 泛型
|
||||
* @return Response对象
|
||||
*/
|
||||
protected <T> Response<T> getResponse(String json, TypeReference<?> responseType) {
|
||||
Response<T> response = null;
|
||||
try {
|
||||
ObjectMapper mapper = new ObjectMapper();
|
||||
mapper.disable(JsonParser.Feature.AUTO_CLOSE_SOURCE);
|
||||
response = mapper.readValue(json, responseType);
|
||||
} catch (IOException e) {
|
||||
logger.error("解析json Response对象错误,json:[{}]", json);
|
||||
e.printStackTrace();
|
||||
}
|
||||
assertNotNull(response);
|
||||
return response;
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据json 信息反序列化成Response对象
|
||||
*
|
||||
* @param result MvcResult
|
||||
* @param <T> 泛型
|
||||
* @return Response对象
|
||||
*/
|
||||
protected <T> Response<T> getResponse(MvcResult result, TypeReference<?> responseType) {
|
||||
try {
|
||||
return getResponse(result.getResponse().getContentAsString(), responseType);
|
||||
} catch (UnsupportedEncodingException e) {
|
||||
logger.error("解析json Response对象错误,result:[{}]", result);
|
||||
e.printStackTrace();
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 修改 mailService 的实现类
|
||||
*
|
||||
* @param service service 类
|
||||
* @param mailFiledName service 中自动注入的mailService字段名
|
||||
*/
|
||||
protected void mockInjectInstance(Object service, String mailFiledName, Object impl) {
|
||||
Field field;
|
||||
try {
|
||||
assertNotNull(service);
|
||||
field = service.getClass().getDeclaredField(mailFiledName);
|
||||
field.setAccessible(true);
|
||||
field.set(service, impl);
|
||||
} catch (NoSuchFieldException | IllegalAccessException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@Slf4j
|
||||
@Service("mailService")
|
||||
public static class TestMailServiceImpl implements MailService {
|
||||
|
||||
@Override
|
||||
public Boolean AsyncSend(SimpleMailMessage message) {
|
||||
log.debug("异步邮件请求,SimpleMailMessage:[{}]", getJson(message));
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean send(SimpleMailMessage message) {
|
||||
log.debug("邮件请求,SimpleMailMessage:[{}]", getJson(message));
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* 转json
|
||||
*
|
||||
* @param o
|
||||
* @return
|
||||
*/
|
||||
private String getJson(Object o) {
|
||||
ObjectMapper mapper = new ObjectMapper();
|
||||
try {
|
||||
return mapper.writeValueAsString(o);
|
||||
} catch (JsonProcessingException e) {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Slf4j
|
||||
@Service("qiniuService")
|
||||
public static class TestQiNiuServiceImpl implements QiniuService {
|
||||
@Override
|
||||
public QiniuResponse uploadFile(InputStream is, String fileName) {
|
||||
QiniuResponse response = new QiniuResponse();
|
||||
log.debug("上传文件请求,[fileName:{}]", fileName);
|
||||
|
||||
response.key = "key";
|
||||
response.bucket = "bucket";
|
||||
response.hash = "hash";
|
||||
response.fsize = 1;
|
||||
return response;
|
||||
}
|
||||
|
||||
@Override
|
||||
public FileInfo[] getFileList() {
|
||||
log.debug("获取文件列表请求");
|
||||
return new FileInfo[0];
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
package cn.celess.common.test;
|
||||
|
||||
import redis.embedded.RedisServer;
|
||||
|
||||
import javax.annotation.PostConstruct;
|
||||
import javax.annotation.PreDestroy;
|
||||
import java.io.IOException;
|
||||
|
||||
/**
|
||||
* @author : xiaohai
|
||||
* @date : 2020/08/14 16:20
|
||||
*/
|
||||
public class RedisServerMock extends BaseTest {
|
||||
private static RedisServer redisServer;
|
||||
|
||||
@PostConstruct
|
||||
public static void startRedis() {
|
||||
try {
|
||||
if (redisServer == null) {
|
||||
redisServer = new RedisServer(6380);
|
||||
redisServer.start();
|
||||
}
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
@PreDestroy
|
||||
public static void stopRedis() {
|
||||
if (redisServer.isActive()) redisServer.stop();
|
||||
}
|
||||
}
|
||||
@@ -15,6 +15,9 @@ import java.io.IOException;
|
||||
* @Desc:
|
||||
*/
|
||||
public class HttpUtil {
|
||||
/**
|
||||
* FIXME
|
||||
*/
|
||||
public static String get(String urlStr) {
|
||||
try (final WebClient webClient = new WebClient(BrowserVersion.CHROME)) {
|
||||
webClient.getOptions().setCssEnabled(false);
|
||||
@@ -34,7 +37,9 @@ public class HttpUtil {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* FIXME
|
||||
*/
|
||||
public static String getAfterRendering(String url) {
|
||||
try (final WebClient webClient = new WebClient(BrowserVersion.BEST_SUPPORTED)) {
|
||||
webClient.getOptions().setCssEnabled(false);
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
package cn.celess.common;
|
||||
|
||||
import cn.celess.common.test.BaseTest;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.test.context.junit4.SpringRunner;
|
||||
|
||||
@SpringBootTest(classes = CommonApplication.class)
|
||||
@RunWith(SpringRunner.class)
|
||||
public abstract class CommonBaseTest extends BaseTest {
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
package cn.celess.common.enmu;
|
||||
|
||||
import cn.celess.common.CommonBaseTest;
|
||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.io.IOException;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
|
||||
public class UserAccountStatusEnumTest extends CommonBaseTest {
|
||||
|
||||
@Test
|
||||
public void get() {
|
||||
assertEquals(UserAccountStatusEnum.NORMAL, UserAccountStatusEnum.get(0));
|
||||
assertEquals(UserAccountStatusEnum.LOCKED, UserAccountStatusEnum.get(1));
|
||||
assertEquals(UserAccountStatusEnum.DELETED, UserAccountStatusEnum.get(2));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void toJson() throws JsonProcessingException {
|
||||
// 序列化
|
||||
ObjectMapper objectMapper = new ObjectMapper();
|
||||
assertEquals("{\"code\":0,\"desc\":\"正常\"}", objectMapper.writeValueAsString(UserAccountStatusEnum.NORMAL));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testGet() throws IOException {
|
||||
// 反序列化
|
||||
ObjectMapper mapper = new ObjectMapper();
|
||||
UserAccountStatusEnum userAccountStatusEnum = mapper.readValue(mapper.writeValueAsString(UserAccountStatusEnum.NORMAL), UserAccountStatusEnum.class);
|
||||
assertEquals(UserAccountStatusEnum.NORMAL.getCode(), userAccountStatusEnum.getCode());
|
||||
assertEquals(UserAccountStatusEnum.NORMAL.getDesc(), userAccountStatusEnum.getDesc());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,223 @@
|
||||
package cn.celess.common.mapper;
|
||||
|
||||
import cn.celess.common.CommonBaseTest;
|
||||
import cn.celess.common.entity.*;
|
||||
import org.junit.Test;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
public class ArticleMapperTest extends CommonBaseTest {
|
||||
@Autowired
|
||||
ArticleMapper articleMapper;
|
||||
@Autowired
|
||||
TagMapper tagMapper;
|
||||
@Autowired
|
||||
ArticleTagMapper articleTagMapper;
|
||||
|
||||
@Test
|
||||
public void insert() {
|
||||
Article article = generateArticle().getArticle();
|
||||
assertNotNull(article.getId());
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void delete() {
|
||||
Article article = generateArticle().getArticle();
|
||||
|
||||
assertFalse(articleMapper.isDeletedById(article.getId()));
|
||||
assertEquals(1, articleMapper.delete(article.getId()));
|
||||
assertTrue(articleMapper.isDeletedById(article.getId()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void update() {
|
||||
Article article = generateArticle().getArticle();
|
||||
String randomText = randomStr();
|
||||
|
||||
// 此字段不会通过insert被写入数据库而是使用插入数据的默认值 数据库中该字段默认为true
|
||||
article.setOpen(true);
|
||||
|
||||
article.setTitle("test update " + randomText);
|
||||
article.setMdContent("test update ");
|
||||
article.setSummary("test update ");
|
||||
article.setType(false);
|
||||
article.setUrl("https://www.celess.cn");
|
||||
article.getCategory().setId(2L);
|
||||
article.setOpen(!article.getOpen());
|
||||
articleMapper.update(article);
|
||||
|
||||
Article articleById = articleMapper.findArticleById(article.getId());
|
||||
assertEquals(article.getTitle(), articleById.getTitle());
|
||||
assertEquals(article.getMdContent(), articleById.getMdContent());
|
||||
assertEquals(article.getSummary(), articleById.getSummary());
|
||||
assertEquals(article.getType(), articleById.getType());
|
||||
assertEquals(article.getCategory().getId(), articleById.getCategory().getId());
|
||||
assertEquals(article.getOpen(), articleById.getOpen());
|
||||
assertNotNull(articleById.getUpdateDate());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void selectAll() {
|
||||
List<Article> list = articleMapper.findAll();
|
||||
assertNotEquals(0, list.size());
|
||||
list.forEach(article -> {
|
||||
assertNotEquals(0, article.getTags().size());
|
||||
assertNotNull(article.getId());
|
||||
assertNotNull(article.getTitle());
|
||||
assertNotNull(article.getSummary());
|
||||
assertNotNull(article.getMdContent());
|
||||
assertNotNull(article.getType());
|
||||
if (!article.getType()) {
|
||||
assertNotNull(article.getUrl());
|
||||
}
|
||||
assertNotNull(article.getReadingNumber());
|
||||
assertNotNull(article.getLikeCount());
|
||||
assertNotNull(article.getDislikeCount());
|
||||
assertNotNull(article.getPublishDate());
|
||||
assertNotNull(article.getOpen());
|
||||
assertNotNull(article.getCategory());
|
||||
assertNotNull(article.getUser());
|
||||
});
|
||||
}
|
||||
|
||||
@Test
|
||||
public void updateReadCount() {
|
||||
Article article = generateArticle().getArticle();
|
||||
Article articleById = articleMapper.findArticleById(article.getId());
|
||||
assertEquals(Long.valueOf(0), articleById.getReadingNumber());
|
||||
articleMapper.updateReadingNumber(articleById.getId());
|
||||
articleById = articleMapper.findArticleById(article.getId());
|
||||
assertEquals(Long.valueOf(1), articleById.getReadingNumber());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getLastestArticle() {
|
||||
Article article = generateArticle().getArticle();
|
||||
Article lastestArticle = articleMapper.getLastestArticle();
|
||||
assertNotNull(lastestArticle);
|
||||
assertEquals(article.getId(), lastestArticle.getId());
|
||||
assertNotNull(lastestArticle.getCategory());
|
||||
assertNotEquals(0, lastestArticle.getTags().size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findArticleById() {
|
||||
Article article = generateArticle().getArticle();
|
||||
Article articleById = articleMapper.findArticleById(article.getId());
|
||||
assertNotNull(articleById);
|
||||
assertEquals(article.getId(), articleById.getId());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void existsByTitle() {
|
||||
Article article = generateArticle().getArticle();
|
||||
assertTrue(articleMapper.existsByTitle(article.getTitle()));
|
||||
assertFalse(articleMapper.existsByTitle(randomStr()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void isDeletedById() {
|
||||
Article article = generateArticle().getArticle();
|
||||
assertFalse(articleMapper.isDeletedById(article.getId()));
|
||||
articleMapper.delete(article.getId());
|
||||
assertTrue(articleMapper.isDeletedById(article.getId()));
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findAllByAuthorId() {
|
||||
List<Article> allByAuthorId = articleMapper.findAllByAuthorId(1);
|
||||
assertNotEquals(0, allByAuthorId.size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findAllByOpen() {
|
||||
List<Article> allByOpen = articleMapper.findAllByOpen(true);
|
||||
assertNotEquals(0, allByOpen);
|
||||
|
||||
Article article = generateArticle().getArticle();
|
||||
article.setOpen(false);
|
||||
|
||||
articleMapper.update(article);
|
||||
|
||||
List<Article> privateArticles = articleMapper.findAllByOpen(false);
|
||||
assertTrue(privateArticles.size() > 0);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getTitleById() {
|
||||
Article article = generateArticle().getArticle();
|
||||
|
||||
assertEquals(article.getTitle(), articleMapper.getTitleById(article.getId()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findAllByCategoryId() {
|
||||
List<Article> allByCategoryId = articleMapper.findAllByCategoryId(1);
|
||||
assertNotEquals(0, allByCategoryId.size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findAllByCategoryIdAndOpen() {
|
||||
List<Article> allByCategoryId = articleMapper.findAllByCategoryIdAndOpen(1);
|
||||
assertNotEquals(0, allByCategoryId.size());
|
||||
allByCategoryId.forEach(article -> assertTrue(article.getOpen()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findAll() {
|
||||
List<Article> allByCategoryId = articleMapper.findAll();
|
||||
assertNotEquals(0, allByCategoryId.size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void count() {
|
||||
assertNotEquals(0, articleMapper.count());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getPreArticle() {
|
||||
ArticleTag articleTag = generateArticle();
|
||||
Article preArticle = articleMapper.getPreArticle(articleTag.getArticle().getId());
|
||||
assertNotNull(preArticle);
|
||||
assertTrue(preArticle.getId() < articleTag.getArticle().getId());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getNextArticle() {
|
||||
Article getNextArticle = articleMapper.getNextArticle(3L);
|
||||
assertNotNull(getNextArticle);
|
||||
assertTrue(getNextArticle.getId() > 3L);
|
||||
}
|
||||
|
||||
private ArticleTag generateArticle() {
|
||||
String randomText = randomStr();
|
||||
|
||||
Article article = new Article();
|
||||
Category category = new Category();
|
||||
category.setId(1L);
|
||||
article.setCategory(category);
|
||||
article.setTitle(" unity test for article " + randomText);
|
||||
article.setMdContent("# unity test for article");
|
||||
article.setSummary("unity test for article");
|
||||
|
||||
Tag tag = tagMapper.findTagByName("随笔");
|
||||
User user = new User();
|
||||
user.setId(1L);
|
||||
article.setUser(user);
|
||||
article.setType(true);
|
||||
|
||||
articleMapper.insert(article);
|
||||
|
||||
ArticleTag articleTag = new ArticleTag();
|
||||
articleTag.setArticle(article);
|
||||
articleTag.setTag(tag);
|
||||
articleTagMapper.insert(articleTag);
|
||||
|
||||
return articleTag;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,146 @@
|
||||
package cn.celess.common.mapper;
|
||||
|
||||
import cn.celess.common.CommonBaseTest;
|
||||
import cn.celess.common.entity.*;
|
||||
import org.junit.Test;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
public class ArticleTagMapperTest extends CommonBaseTest {
|
||||
|
||||
@Autowired
|
||||
ArticleMapper articleMapper;
|
||||
@Autowired
|
||||
ArticleTagMapper articleTagMapper;
|
||||
@Autowired
|
||||
TagMapper tagMapper;
|
||||
|
||||
|
||||
@Test
|
||||
public void insert() {
|
||||
ArticleTag articleTag = generateArticle();
|
||||
assertNotNull(articleTag);
|
||||
assertNotNull(articleTag.getArticle());
|
||||
assertNotNull(articleTag.getTag());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void update() {
|
||||
Tag tag = tagMapper.findTagByName("电影");
|
||||
ArticleTag articleTag = generateArticle();
|
||||
articleTag.setTag(tag);
|
||||
|
||||
articleTagMapper.update(articleTag);
|
||||
|
||||
ArticleTag oneById = articleTagMapper.findOneById(articleTag.getId());
|
||||
assertEquals(articleTag.getArticle().getId(), oneById.getArticle().getId());
|
||||
assertEquals(articleTag.getArticle().getTitle(), oneById.getArticle().getTitle());
|
||||
assertEquals(articleTag.getTag().getName(), oneById.getTag().getName());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void deleteById() {
|
||||
ArticleTag articleTag = generateArticle();
|
||||
|
||||
articleTagMapper.deleteById(articleTag.getId());
|
||||
|
||||
ArticleTag oneById = articleTagMapper.findOneById(articleTag.getId());
|
||||
assertNull(oneById);
|
||||
|
||||
articleTagMapper.insert(articleTag);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void deleteByArticleId() {
|
||||
ArticleTag articleTag = generateArticle();
|
||||
int i = articleTagMapper.deleteByArticleId(articleTag.getArticle().getId());
|
||||
assertNotEquals(0, i);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findAllByArticleId() {
|
||||
ArticleTag articleTag = generateArticle();
|
||||
List<ArticleTag> allByArticleId = articleTagMapper.findAllByArticleId(articleTag.getArticle().getId());
|
||||
assertEquals(1, allByArticleId.size());
|
||||
|
||||
List<ArticleTag> list = articleTagMapper.findAllByArticleId(5L);
|
||||
assertEquals(2, list.size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void deleteMultiById() {
|
||||
ArticleTag articleTag = new ArticleTag();
|
||||
Article article = articleMapper.getLastestArticle();
|
||||
Tag tag = tagMapper.getLastestTag();
|
||||
articleTag.setArticle(article);
|
||||
articleTag.setTag(tag);
|
||||
|
||||
articleTagMapper.insert(articleTag);
|
||||
articleTagMapper.insert(articleTag);
|
||||
articleTagMapper.insert(articleTag);
|
||||
articleTagMapper.insert(articleTag);
|
||||
articleTagMapper.insert(articleTag);
|
||||
articleTagMapper.insert(articleTag);
|
||||
|
||||
List<ArticleTag> allByArticleId = articleTagMapper.findAllByArticleId(article.getId());
|
||||
assertTrue(allByArticleId.size() >= 6);
|
||||
int lines = articleTagMapper.deleteMultiById(allByArticleId);
|
||||
assertTrue(lines >= 6);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findArticleByTag() {
|
||||
ArticleTag articleTag = generateArticle();
|
||||
List<ArticleTag> articleByTag = articleTagMapper.findArticleByTag(21L);
|
||||
assertNotEquals(0, articleByTag.size());
|
||||
articleByTag.forEach(articleTag1 -> assertEquals(articleTag.getTag().getName(), articleTag1.getTag().getName()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findArticleByTagAndOpen() {
|
||||
ArticleTag articleTag = generateArticle();
|
||||
List<ArticleTag> articleByTag = articleTagMapper.findArticleByTagAndOpen(21L);
|
||||
assertNotEquals(0, articleByTag.size());
|
||||
articleByTag.forEach(articleTag1 -> assertEquals(articleTag.getTag().getName(), articleTag1.getTag().getName()));
|
||||
articleByTag.forEach(articleTag1 -> assertTrue(articleTag1.getArticle().getOpen()));
|
||||
}
|
||||
|
||||
private ArticleTag generateArticle() {
|
||||
String randomText = randomStr();
|
||||
|
||||
Article article = new Article();
|
||||
Category category = new Category();
|
||||
category.setId(1L);
|
||||
article.setCategory(category);
|
||||
article.setTitle(" unity test for article " + randomText);
|
||||
article.setMdContent("# unity test for article");
|
||||
article.setSummary("unity test for article");
|
||||
|
||||
User user = new User();
|
||||
user.setId(1L);
|
||||
article.setUser(user);
|
||||
article.setType(true);
|
||||
|
||||
articleMapper.insert(article);
|
||||
|
||||
ArticleTag articleTag = new ArticleTag();
|
||||
Tag tag = tagMapper.findTagByName("随笔");
|
||||
articleTag.setArticle(article);
|
||||
articleTag.setTag(tag);
|
||||
articleTagMapper.insert(articleTag);
|
||||
|
||||
return articleTag;
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findTagByArticleId() {
|
||||
Article article = articleMapper.findAll().get(0);
|
||||
assertNotNull(article);
|
||||
|
||||
List<Tag> tagByArticleId = articleTagMapper.findTagByArticleId(article.getId());
|
||||
assertNotEquals(0, tagByArticleId.size());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,120 @@
|
||||
package cn.celess.common.mapper;
|
||||
|
||||
import cn.celess.common.CommonBaseTest;
|
||||
import cn.celess.common.entity.Category;
|
||||
import org.junit.Test;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
public class CategoryMapperTest extends CommonBaseTest {
|
||||
|
||||
@Autowired
|
||||
CategoryMapper categoryMapper;
|
||||
|
||||
@Test
|
||||
public void insert() {
|
||||
Category category = generateCategory();
|
||||
assertNotNull(category.getId());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void delete() {
|
||||
Category category = generateCategory();
|
||||
assertFalse(category.getDeleted());
|
||||
int lines = categoryMapper.delete(category.getId());
|
||||
assertNotEquals(0, lines);
|
||||
Category categoryById = categoryMapper.findCategoryById(category.getId());
|
||||
assertTrue(categoryById.getDeleted());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void update() {
|
||||
Category category = generateCategory();
|
||||
category.setName(randomStr(4));
|
||||
int update = categoryMapper.update(category);
|
||||
assertEquals(1, update);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void existsByName() {
|
||||
Category category = generateCategory();
|
||||
assertTrue(categoryMapper.existsByName(category.getName()));
|
||||
assertFalse(categoryMapper.existsByName(randomStr(8)));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void existsById() {
|
||||
Category category = generateCategory();
|
||||
assertTrue(categoryMapper.existsById(category.getId()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findCategoryByName() {
|
||||
Category suibi = categoryMapper.findCategoryByName("随笔");
|
||||
assertNotNull(suibi);
|
||||
|
||||
// tag 数据
|
||||
Category shiro = categoryMapper.findCategoryByName("shiro");
|
||||
assertNull(shiro);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findCategoryById() {
|
||||
Category suibi = categoryMapper.findCategoryByName("随笔");
|
||||
|
||||
Category categoryById = categoryMapper.findCategoryById(suibi.getId());
|
||||
|
||||
assertEquals(suibi.getName(), categoryById.getName());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findAll() {
|
||||
List<Category> all = categoryMapper.findAll();
|
||||
assertNotEquals(0, all);
|
||||
all.forEach(category -> assertTrue(category.getCategory()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getAllName() {
|
||||
List<String> allName = categoryMapper.getAllName();
|
||||
assertNotEquals(0, allName.size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getNameById() {
|
||||
Category category = generateCategory();
|
||||
assertEquals(category.getName(), categoryMapper.getNameById(category.getId()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getIdByName() {
|
||||
Category category = generateCategory();
|
||||
assertEquals(category.getId(), categoryMapper.getIdByName(category.getName()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getLastestCategory() {
|
||||
List<Category> all = categoryMapper.findAll();
|
||||
all.sort((o1, o2) -> (int) (o2.getId() - o1.getId()));
|
||||
assertEquals(all.get(0).getId(), categoryMapper.getLastestCategory().getId());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void count() {
|
||||
List<Category> all = categoryMapper.findAll();
|
||||
List<Category> collect = all.stream().filter(category -> !category.getDeleted()).collect(Collectors.toList());
|
||||
assertEquals(collect.size(), categoryMapper.count());
|
||||
}
|
||||
|
||||
private Category generateCategory() {
|
||||
Category category = new Category(randomStr(4));
|
||||
|
||||
categoryMapper.insert(category);
|
||||
category.setDeleted(false);
|
||||
return category;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,133 @@
|
||||
package cn.celess.common.mapper;
|
||||
|
||||
import cn.celess.common.CommonBaseTest;
|
||||
import cn.celess.common.enmu.CommentStatusEnum;
|
||||
import cn.celess.common.entity.Comment;
|
||||
import cn.celess.common.entity.User;
|
||||
import org.junit.Test;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
public class CommentMapperTest extends CommonBaseTest {
|
||||
|
||||
@Autowired
|
||||
UserMapper userMapper;
|
||||
@Autowired
|
||||
CommentMapper commentMapper;
|
||||
|
||||
@Test
|
||||
public void insert() {
|
||||
Comment comment = generateComment();
|
||||
assertNotNull(comment.getId());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void updateContent() {
|
||||
Comment comment = generateComment();
|
||||
comment.setContent(randomStr(10));
|
||||
assertEquals(1, commentMapper.updateContent(comment.getContent(), comment.getId()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void delete() {
|
||||
Comment comment = generateComment();
|
||||
assertEquals(1, commentMapper.delete(comment.getId()));
|
||||
Comment commentById = commentMapper.findCommentById(comment.getId());
|
||||
assertEquals(commentById.getStatus(), CommentStatusEnum.DELETED.getCode());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void deleteByPagePath() {
|
||||
Comment comment = generateComment();
|
||||
assertTrue(commentMapper.deleteByPagePath(comment.getPagePath()) >= 1);
|
||||
Comment commentById = commentMapper.findCommentById(comment.getId());
|
||||
assertEquals(commentById.getStatus(), CommentStatusEnum.DELETED.getCode());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void existsById() {
|
||||
Comment comment = generateComment();
|
||||
assertTrue(commentMapper.existsById(comment.getId()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findCommentById() {
|
||||
Comment comment = generateComment();
|
||||
assertNotNull(commentMapper.findCommentById(comment.getId()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getLastestComment() {
|
||||
Comment comment = generateComment();
|
||||
Comment lastestComment = commentMapper.getLastestComment();
|
||||
assertEquals(comment.getId(), lastestComment.getId());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findAllByFromUser() {
|
||||
Comment comment = generateComment();
|
||||
List<Comment> allByFromUser = commentMapper.findAllByFromUser(comment.getFromUser().getId());
|
||||
assertNotEquals(0, allByFromUser);
|
||||
allByFromUser.forEach(comment1 -> assertEquals(comment.getFromUser().getId(), comment1.getFromUser().getId()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findAllByPid() {
|
||||
Comment comment = generateComment();
|
||||
List<Comment> allByPid = commentMapper.findAllByPid(comment.getPid());
|
||||
assertTrue(allByPid.size() >= 1);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findAllByPagePath() {
|
||||
Comment comment = generateComment();
|
||||
List<Comment> allByPagePath = commentMapper.findAllByPagePath(comment.getPagePath());
|
||||
assertTrue(allByPagePath.size() >= 1);
|
||||
allByPagePath.forEach(comment1 -> assertEquals(comment.getPagePath(), comment1.getPagePath()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findAllByPagePathAndPid() {
|
||||
Comment comment = generateComment();
|
||||
List<Comment> allByPagePathAndPid = commentMapper.findAllByPagePathAndPidAndNormal(comment.getPagePath(), comment.getPid());
|
||||
assertTrue(allByPagePathAndPid.size() >= 1);
|
||||
allByPagePathAndPid.forEach(comment1 -> {
|
||||
assertEquals(comment.getPagePath(), comment1.getPagePath());
|
||||
assertEquals(comment.getPid(), comment1.getPid());
|
||||
});
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testFindAllByPid() {
|
||||
Comment comment = generateComment();
|
||||
List<Comment> findAllByPid = commentMapper.findAllByPid(comment.getPid());
|
||||
assertTrue(findAllByPid.size() >= 1);
|
||||
findAllByPid.forEach(comment1 -> assertEquals(comment.getPid(), comment1.getPid()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void countByType() {
|
||||
Comment comment = generateComment();
|
||||
long l = commentMapper.countByPagePath(comment.getPagePath());
|
||||
assertTrue(l >= 1);
|
||||
}
|
||||
|
||||
private Comment generateComment() {
|
||||
User from = userMapper.findById(1);
|
||||
assertNotNull(from);
|
||||
User to = userMapper.findById(2);
|
||||
assertNotNull(to);
|
||||
|
||||
Comment comment = new Comment();
|
||||
comment.setContent(randomStr(8));
|
||||
comment.setFromUser(from);
|
||||
comment.setToUser(to);
|
||||
comment.setPagePath("/tags");
|
||||
comment.setPid(-1L);
|
||||
commentMapper.insert(comment);
|
||||
return comment;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,103 @@
|
||||
package cn.celess.common.mapper;
|
||||
|
||||
import cn.celess.common.CommonBaseTest;
|
||||
import cn.celess.common.entity.PartnerSite;
|
||||
import org.junit.Test;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
public class PartnerMapperTest extends CommonBaseTest {
|
||||
|
||||
@Autowired
|
||||
PartnerMapper partnerMapper;
|
||||
|
||||
@Test
|
||||
public void insert() {
|
||||
PartnerSite partnerSite = generatePartnerSite();
|
||||
assertNotNull(partnerSite.getId());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void delete() {
|
||||
PartnerSite partnerSite = generatePartnerSite();
|
||||
assertEquals(1, partnerMapper.delete(partnerSite.getId()));
|
||||
partnerSite = partnerMapper.findById(partnerSite.getId());
|
||||
assertTrue(partnerSite.getDelete());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void update() {
|
||||
PartnerSite partnerSite = generatePartnerSite();
|
||||
partnerSite.setName(randomStr(5));
|
||||
partnerSite.setIconPath(randomStr(5));
|
||||
partnerSite.setDesc(randomStr(5));
|
||||
partnerSite.setOpen(false);
|
||||
partnerSite.setUrl("www.celess.cn/?random=" + randomStr(4));
|
||||
assertEquals(1, partnerMapper.update(partnerSite));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void existsById() {
|
||||
PartnerSite partnerSite = generatePartnerSite();
|
||||
assertTrue(partnerMapper.existsById(partnerSite.getId()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void existsByName() {
|
||||
PartnerSite partnerSite = generatePartnerSite();
|
||||
assertTrue(partnerMapper.existsByName(partnerSite.getName()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void existsByUrl() {
|
||||
PartnerSite partnerSite = generatePartnerSite();
|
||||
assertTrue(partnerMapper.existsByUrl(partnerSite.getUrl()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findById() {
|
||||
PartnerSite partnerSite = generatePartnerSite();
|
||||
assertNotNull(partnerMapper.findById(partnerSite.getId()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findByName() {
|
||||
PartnerSite partnerSite = generatePartnerSite();
|
||||
assertNotNull(partnerMapper.findByName(partnerSite.getName()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findByUrl() {
|
||||
PartnerSite partnerSite = generatePartnerSite();
|
||||
assertNotNull(partnerMapper.findByUrl(partnerSite.getUrl()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getLastest() {
|
||||
PartnerSite partnerSite = generatePartnerSite();
|
||||
List<PartnerSite> all = partnerMapper.findAll();
|
||||
all.sort(((o1, o2) -> (int) (o2.getId() - o1.getId())));
|
||||
assertEquals(partnerSite.getId(), all.get(0).getId());
|
||||
assertEquals(partnerSite.getId(), partnerMapper.getLastest().getId());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findAll() {
|
||||
List<PartnerSite> all = partnerMapper.findAll();
|
||||
assertNotEquals(0, all.size());
|
||||
}
|
||||
|
||||
private PartnerSite generatePartnerSite() {
|
||||
PartnerSite ps = new PartnerSite();
|
||||
ps.setName(randomStr(4));
|
||||
ps.setUrl("https://www.celess.cn?random=" + randomStr(4));
|
||||
ps.setOpen(true);
|
||||
ps.setDesc("小海的博客呀!");
|
||||
ps.setIconPath("https://www.celess.cn/icon_path.example");
|
||||
partnerMapper.insert(ps);
|
||||
return ps;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,93 @@
|
||||
package cn.celess.common.mapper;
|
||||
|
||||
import cn.celess.common.CommonBaseTest;
|
||||
import cn.celess.common.entity.Tag;
|
||||
import org.junit.Test;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
public class TagMapperTest extends CommonBaseTest {
|
||||
|
||||
@Autowired
|
||||
TagMapper tagMapper;
|
||||
|
||||
@Test
|
||||
public void insert() {
|
||||
Tag tag = generateTag();
|
||||
assertNotNull(tag.getId());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void update() {
|
||||
Tag tag = generateTag();
|
||||
tag.setName(randomStr(4));
|
||||
int update = tagMapper.update(tag);
|
||||
assertEquals(1, update);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void delete() {
|
||||
Tag tag = generateTag();
|
||||
assertFalse(tag.getDeleted());
|
||||
assertEquals(1, tagMapper.delete(tag.getId()));
|
||||
Tag tagById = tagMapper.findTagById(tag.getId());
|
||||
assertTrue(tagById.getDeleted());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findTagById() {
|
||||
Tag tag = generateTag();
|
||||
Tag tagById = tagMapper.findTagById(tag.getId());
|
||||
assertEquals(tag.getName(), tagById.getName());
|
||||
assertEquals(tag.getId(), tagById.getId());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findTagByName() {
|
||||
Tag tag = generateTag();
|
||||
Tag tagById = tagMapper.findTagByName(tag.getName());
|
||||
assertEquals(tag.getName(), tagById.getName());
|
||||
assertEquals(tag.getId(), tagById.getId());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void existsByName() {
|
||||
String s = randomStr(4);
|
||||
assertFalse(tagMapper.existsByName(s));
|
||||
Tag tag = new Tag(s);
|
||||
tagMapper.insert(tag);
|
||||
assertTrue(tagMapper.existsByName(s));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getLastestTag() {
|
||||
List<Tag> all = tagMapper.findAll();
|
||||
all.sort(((o1, o2) -> (int) (o2.getId() - o1.getId())));
|
||||
assertEquals(all.get(0).getId(), tagMapper.getLastestTag().getId());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findAll() {
|
||||
List<Tag> all = tagMapper.findAll();
|
||||
assertNotEquals(0, all.size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void count() {
|
||||
assertNotEquals(0, tagMapper.count());
|
||||
List<Tag> all = tagMapper.findAll();
|
||||
List<Tag> collect = all.stream().filter(tag -> !tag.getDeleted()).collect(Collectors.toList());
|
||||
assertEquals(collect.size(), tagMapper.count());
|
||||
}
|
||||
|
||||
private Tag generateTag() {
|
||||
Tag tag = new Tag(randomStr(4));
|
||||
tagMapper.insert(tag);
|
||||
tag.setDeleted(false);
|
||||
return tag;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,185 @@
|
||||
package cn.celess.common.mapper;
|
||||
|
||||
import cn.celess.common.CommonBaseTest;
|
||||
import cn.celess.common.enmu.RoleEnum;
|
||||
import cn.celess.common.enmu.UserAccountStatusEnum;
|
||||
import cn.celess.common.entity.User;
|
||||
import cn.celess.common.util.MD5Util;
|
||||
import org.junit.Test;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
public class UserMapperTest extends CommonBaseTest {
|
||||
|
||||
@Autowired
|
||||
UserMapper userMapper;
|
||||
|
||||
|
||||
@Test
|
||||
public void addUser() {
|
||||
User user = generateUser();
|
||||
assertNotNull(user.getId());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void updateInfo() {
|
||||
User user = generateUser();
|
||||
assertEquals(1, userMapper.updateInfo("ttt", "ttt", user.getId()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void updateAvatarImgUrl() {
|
||||
User user = generateUser();
|
||||
assertEquals(1, userMapper.updateAvatarImgUrl("https://www.celess.cn/example.jpg", user.getId()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void updateLoginTime() {
|
||||
User user = generateUser();
|
||||
assertEquals(1, userMapper.updateLoginTime(user.getEmail()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void updateEmailStatus() {
|
||||
User user = generateUser();
|
||||
assertEquals(1, userMapper.updateEmailStatus(user.getEmail(), true));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void updatePwd() {
|
||||
User user = generateUser();
|
||||
assertEquals(1, userMapper.updatePwd(user.getEmail(), MD5Util.getMD5("12345687654")));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getPwd() {
|
||||
User user = generateUser();
|
||||
assertEquals(user.getPwd(), userMapper.getPwd(user.getEmail()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void existsByEmail() {
|
||||
User user = generateUser();
|
||||
assertTrue(userMapper.existsByEmail(user.getEmail()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findByEmail() {
|
||||
User user = generateUser();
|
||||
User byEmail = userMapper.findByEmail(user.getEmail());
|
||||
assertNotNull(byEmail);
|
||||
assertEquals(user.getId(), byEmail.getId());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findById() {
|
||||
User user = generateUser();
|
||||
User findById = userMapper.findById(user.getId());
|
||||
assertNotNull(findById);
|
||||
assertEquals(user.getEmail(), findById.getEmail());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getAvatarImgUrlById() {
|
||||
User user = generateUser();
|
||||
assertNull(userMapper.getAvatarImgUrlById(user.getId()));
|
||||
userMapper.updateAvatarImgUrl("example.cn", user.getId());
|
||||
assertEquals("example.cn", userMapper.getAvatarImgUrlById(user.getId()));
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getEmail() {
|
||||
User user = generateUser();
|
||||
assertEquals(user.getEmail(), userMapper.getEmail(user.getId()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getDisPlayName() {
|
||||
User user = generateUser();
|
||||
assertNull(userMapper.getDisPlayName(user.getId()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getRoleByEmail() {
|
||||
User user = generateUser();
|
||||
assertEquals(RoleEnum.USER_ROLE.getRoleName(), userMapper.getRoleByEmail(user.getEmail()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getRoleById() {
|
||||
User user = generateUser();
|
||||
assertEquals(RoleEnum.USER_ROLE.getRoleName(), userMapper.getRoleById(user.getId()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void count() {
|
||||
generateUser();
|
||||
assertTrue(userMapper.count() >= 1);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void delete() {
|
||||
User user = generateUser();
|
||||
int delete = userMapper.delete(user.getId());
|
||||
assertEquals(1, delete);
|
||||
User byId = userMapper.findById(user.getId());
|
||||
assertEquals(UserAccountStatusEnum.DELETED.getCode(), byId.getStatus());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void lock() {
|
||||
User user = generateUser();
|
||||
int delete = userMapper.lock(user.getId());
|
||||
assertEquals(1, delete);
|
||||
User byId = userMapper.findById(user.getId());
|
||||
assertEquals(UserAccountStatusEnum.LOCKED.getCode(), byId.getStatus());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void setUserRole() {
|
||||
User user = generateUser();
|
||||
userMapper.setUserRole(user.getId(), RoleEnum.ADMIN_ROLE.getRoleName());
|
||||
|
||||
assertEquals(RoleEnum.ADMIN_ROLE.getRoleName(), userMapper.getRoleById(user.getId()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findAll() {
|
||||
User user = generateUser();
|
||||
List<User> all = userMapper.findAll();
|
||||
assertTrue(all.size() >= 1);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void update() {
|
||||
User user = generateUser();
|
||||
user.setDesc("aaa");
|
||||
user.setDisplayName("bbb");
|
||||
user.setEmailStatus(true);
|
||||
user.setRole(RoleEnum.ADMIN_ROLE.getRoleName());
|
||||
user.setAvatarImgUrl("https://celess.cn/examcple.jpg");
|
||||
user.setEmail(randomStr(8) + "@celess.cn");
|
||||
user.setPwd(MD5Util.getMD5("010100000100000"));
|
||||
assertEquals(1, userMapper.update(user));
|
||||
User byId = userMapper.findById(user.getId());
|
||||
assertEquals(user.getDesc(), byId.getDesc());
|
||||
assertEquals(user.getDisplayName(), byId.getDisplayName());
|
||||
assertEquals(user.getEmailStatus(), byId.getEmailStatus());
|
||||
assertEquals(user.getRole(), byId.getRole());
|
||||
assertEquals(user.getAvatarImgUrl(), byId.getAvatarImgUrl());
|
||||
assertEquals(user.getEmail(), byId.getEmail());
|
||||
assertEquals(user.getPwd(), byId.getPwd());
|
||||
}
|
||||
|
||||
private User generateUser() {
|
||||
User user = new User(randomStr(6) + "@celess.cn", MD5Util.getMD5("1234567890"));
|
||||
userMapper.addUser(user);
|
||||
User newUser = userMapper.findByEmail(user.getEmail());
|
||||
assertEquals(user.getId(), newUser.getId());
|
||||
return newUser;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
package cn.celess.common.mapper;
|
||||
|
||||
import cn.celess.common.CommonBaseTest;
|
||||
import cn.celess.common.entity.Visitor;
|
||||
import org.junit.Test;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
import static org.junit.Assert.assertNotEquals;
|
||||
|
||||
public class VisitorMapperTest extends CommonBaseTest {
|
||||
|
||||
@Autowired
|
||||
VisitorMapper visitorMapper;
|
||||
|
||||
@Test
|
||||
public void insert() {
|
||||
Visitor visitor = new Visitor();
|
||||
visitor.setDate(new Date());
|
||||
visitor.setIp("127.0.0.1");
|
||||
visitor.setUa("ua");
|
||||
assertEquals(1, visitorMapper.insert(visitor));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void delete() {
|
||||
Visitor visitor = new Visitor();
|
||||
visitor.setDate(new Date());
|
||||
visitor.setIp("127.0.0.1");
|
||||
visitor.setUa("ua");
|
||||
visitorMapper.insert(visitor);
|
||||
assertEquals(1, visitorMapper.delete(visitor.getId()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void count() {
|
||||
assertNotEquals(0, visitorMapper.count());
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,80 @@
|
||||
package cn.celess.common.mapper;
|
||||
|
||||
import cn.celess.common.CommonBaseTest;
|
||||
import cn.celess.common.entity.WebUpdate;
|
||||
import org.junit.Test;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
public class WebUpdateInfoMapperTest extends CommonBaseTest {
|
||||
|
||||
@Autowired
|
||||
WebUpdateInfoMapper webUpdateInfoMapper;
|
||||
|
||||
@Test
|
||||
public void insert() {
|
||||
WebUpdate webUpdate = generateUpdateInfo();
|
||||
assertNotNull(webUpdate);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void delete() {
|
||||
WebUpdate webUpdate = generateUpdateInfo();
|
||||
assertEquals(1, webUpdateInfoMapper.delete(webUpdate.getId()));
|
||||
assertTrue(webUpdateInfoMapper.findById(webUpdate.getId()).isDelete());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void update() {
|
||||
WebUpdate webUpdate = generateUpdateInfo();
|
||||
assertEquals(1, webUpdateInfoMapper.update(webUpdate.getId(), randomStr(6)));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void existsById() {
|
||||
WebUpdate webUpdate = generateUpdateInfo();
|
||||
assertTrue(webUpdateInfoMapper.existsById(webUpdate.getId()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findById() {
|
||||
WebUpdate webUpdate = generateUpdateInfo();
|
||||
WebUpdate byId = webUpdateInfoMapper.findById(webUpdate.getId());
|
||||
assertEquals(webUpdate.getUpdateInfo(), byId.getUpdateInfo());
|
||||
assertEquals(webUpdate.getId(), byId.getId());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findAll() {
|
||||
List<WebUpdate> all = webUpdateInfoMapper.findAll();
|
||||
assertNotEquals(0, all.size());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void findAllNotDeleted() {
|
||||
this.delete();
|
||||
List<WebUpdate> allNotDeleted = webUpdateInfoMapper.findAllNotDeleted();
|
||||
allNotDeleted.forEach(webUpdate -> assertFalse(webUpdate.isDelete()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getLastestOne() {
|
||||
WebUpdate webUpdate = generateUpdateInfo();
|
||||
List<WebUpdate> all = webUpdateInfoMapper.findAll();
|
||||
List<WebUpdate> allNotDeleted = webUpdateInfoMapper.findAllNotDeleted();
|
||||
all.sort(((o1, o2) -> (int) (o2.getId() - o1.getId())));
|
||||
allNotDeleted.sort(((o1, o2) -> (int) (o2.getId() - o1.getId())));
|
||||
assertEquals(webUpdate.getId(), all.get(0).getId());
|
||||
assertEquals(webUpdate.getId(), allNotDeleted.get(0).getId());
|
||||
assertEquals(webUpdate.getId(), webUpdateInfoMapper.getLastestOne().getId());
|
||||
}
|
||||
|
||||
private WebUpdate generateUpdateInfo() {
|
||||
WebUpdate webUpdate = new WebUpdate(randomStr(8));
|
||||
webUpdateInfoMapper.insert(webUpdate);
|
||||
return webUpdate;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
package cn.celess.common.util;
|
||||
|
||||
import cn.celess.common.CommonBaseTest;
|
||||
import org.junit.Test;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
|
||||
public class DateFormatUtilTest extends CommonBaseTest {
|
||||
|
||||
@Test
|
||||
public void get() {
|
||||
assertNotNull(DateFormatUtil.get(new Date()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getForXmlDate() {
|
||||
assertNotNull(DateFormatUtil.getForXmlDate(new Date()));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void getNow() {
|
||||
assertNotNull(DateFormatUtil.getNow());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package cn.celess.common.util;
|
||||
|
||||
import cn.celess.common.CommonBaseTest;
|
||||
import org.junit.Ignore;
|
||||
import org.junit.Test;
|
||||
|
||||
import static org.junit.Assert.assertNotNull;
|
||||
|
||||
public class HttpUtilTest extends CommonBaseTest {
|
||||
|
||||
@Test
|
||||
@Ignore
|
||||
public void get() {
|
||||
String s = HttpUtil.get("https://api.celess.cn/headerInfo");
|
||||
assertNotNull(s);
|
||||
// Response<Map<String, Object>> response = getResponse(s, MAP_OBJECT_TYPE);
|
||||
// assertEquals(ResponseEnum.SUCCESS.getCode(), response.getCode());
|
||||
// assertNotEquals(0, response.getResult().size());
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
package cn.celess.common.util;
|
||||
|
||||
import cn.celess.common.CommonBaseTest;
|
||||
import org.junit.Test;
|
||||
|
||||
import static org.junit.Assert.assertEquals;
|
||||
|
||||
public class MD5UtilTest extends CommonBaseTest {
|
||||
|
||||
@Test
|
||||
public void getMD5() {
|
||||
assertEquals("25f9e794323b453885f5181f1b624d0b", MD5Util.getMD5("123456789"));
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user