structure update

This commit is contained in:
aisensiy
2017-08-18 17:08:27 +08:00
parent ce6a56e1db
commit b97bf72311
68 changed files with 225 additions and 183 deletions

View File

@@ -1,7 +1,7 @@
package io.spring;
import io.spring.application.article.ArticleData;
import io.spring.application.profile.ProfileData;
import io.spring.application.data.ArticleData;
import io.spring.application.data.ProfileData;
import io.spring.core.article.Article;
import io.spring.core.user.User;
import org.joda.time.DateTime;

View File

@@ -1,9 +1,9 @@
package io.spring.api;
import io.restassured.RestAssured;
import io.spring.application.article.ArticleData;
import io.spring.application.article.ArticleQueryService;
import io.spring.application.profile.ProfileData;
import io.spring.application.data.ArticleData;
import io.spring.application.ArticleQueryService;
import io.spring.application.data.ProfileData;
import io.spring.core.article.Article;
import io.spring.core.article.ArticleRepository;
import io.spring.core.article.Tag;

View File

@@ -2,13 +2,14 @@ package io.spring.api;
import io.restassured.RestAssured;
import io.spring.TestHelper;
import io.spring.application.article.ArticleData;
import io.spring.application.article.ArticleQueryService;
import io.spring.application.profile.ProfileData;
import io.spring.application.data.ArticleData;
import io.spring.application.ArticleQueryService;
import io.spring.application.data.ProfileData;
import io.spring.core.article.Article;
import io.spring.core.article.ArticleRepository;
import io.spring.core.user.User;
import org.joda.time.DateTime;
import org.joda.time.format.ISODateTimeFormat;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -127,7 +128,7 @@ public class ArticlesApiTest extends TestWithCurrentUser {
.statusCode(200)
.body("article.slug", equalTo(slug))
.body("article.body", equalTo(articleData.getBody()))
.body("article.createdAt", equalTo(time.toDateTimeISO().toString()));
.body("article.createdAt", equalTo(ISODateTimeFormat.dateTime().withZoneUTC().print(time)));
}

View File

@@ -1,10 +1,9 @@
package io.spring.api;
import io.restassured.RestAssured;
import io.spring.application.comment.CommentData;
import io.spring.application.comment.CommentQueryService;
import io.spring.application.profile.ProfileData;
import io.spring.application.user.UserData;
import io.spring.application.CommentQueryService;
import io.spring.application.data.CommentData;
import io.spring.application.data.ProfileData;
import io.spring.core.article.Article;
import io.spring.core.article.ArticleRepository;
import io.spring.core.comment.Comment;
@@ -142,13 +141,8 @@ public class CommentsApiTest extends TestWithCurrentUser {
when(userRepository.findByUsername(eq(anotherUser.getUsername()))).thenReturn(Optional.of(anotherUser));
when(commentRepository.findById(eq(article.getId()), eq(comment.getId()))).thenReturn(Optional.of(comment));
String token = jwtService.toToken(
new UserData(
anotherUser.getId(),
anotherUser.getEmail(),
anotherUser.getUsername(),
anotherUser.getBio(),
anotherUser.getImage()));
String token = jwtService.toToken(anotherUser);
when(userRepository.findById(eq(anotherUser.getId()))).thenReturn(Optional.of(anotherUser));
given()
.header("Authorization", "Token " + token)
.when()

View File

@@ -1,16 +1,13 @@
package io.spring.api;
import io.restassured.RestAssured;
import io.spring.application.JwtService;
import io.spring.application.user.UserData;
import io.spring.application.data.UserData;
import io.spring.core.user.User;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.context.embedded.LocalServerPort;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.boot.test.mock.mockito.MockBean;
import org.springframework.test.context.junit4.SpringRunner;
import java.util.HashMap;
@@ -18,9 +15,6 @@ import java.util.Map;
import java.util.Optional;
import static io.restassured.RestAssured.given;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.CoreMatchers.not;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.core.IsEqual.equalTo;
import static org.mockito.Matchers.eq;
import static org.mockito.Mockito.when;
@@ -93,6 +87,9 @@ public class CurrentUserApiTest extends TestWithCurrentUser {
}});
}};
when(userRepository.findByUsername(eq(newUsername))).thenReturn(Optional.empty());
when(userRepository.findByEmail(eq(newEmail))).thenReturn(Optional.empty());
when(userReadService.findByUsername(eq(newUsername))).thenReturn(new UserData(user.getId(), newEmail, newUsername, newBio, user.getImage()));
given()
@@ -102,8 +99,7 @@ public class CurrentUserApiTest extends TestWithCurrentUser {
.when()
.put("/user")
.then()
.statusCode(200)
.body("user.token", not(token));
.statusCode(200);
}
@Test

View File

@@ -2,8 +2,8 @@ package io.spring.api;
import io.restassured.RestAssured;
import io.spring.application.Page;
import io.spring.application.article.ArticleDataList;
import io.spring.application.article.ArticleQueryService;
import io.spring.application.data.ArticleDataList;
import io.spring.application.ArticleQueryService;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;

View File

@@ -1,13 +1,11 @@
package io.spring.api;
import io.restassured.RestAssured;
import io.spring.application.profile.ProfileData;
import io.spring.application.profile.ProfileQueryService;
import io.spring.application.profile.UserRelationshipQueryService;
import io.spring.application.data.ProfileData;
import io.spring.application.ProfileQueryService;
import io.spring.core.article.Article;
import io.spring.core.user.FollowRelation;
import io.spring.core.user.User;
import io.spring.core.user.UserRepository;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;

View File

@@ -1,8 +1,8 @@
package io.spring.api;
import io.spring.application.JwtService;
import io.spring.application.user.UserData;
import io.spring.application.user.UserReadService;
import io.spring.core.service.JwtService;
import io.spring.application.data.UserData;
import io.spring.infrastructure.mybatis.readservice.UserReadService;
import io.spring.core.user.User;
import io.spring.core.user.UserRepository;
import org.springframework.beans.factory.annotation.Autowired;
@@ -37,10 +37,11 @@ class TestWithCurrentUser {
user = new User(email, username, "123", "", defaultAvatar);
when(userRepository.findByUsername(eq(username))).thenReturn(Optional.of(user));
when(userRepository.findById(eq(user.getId()))).thenReturn(Optional.of(user));
userData = new UserData(user.getId(), email, username, "", defaultAvatar);
when(userReadService.findByUsername(eq(username))).thenReturn(userData);
when(userReadService.findById(eq(user.getId()))).thenReturn(userData);
token = jwtService.toToken(userData);
token = jwtService.toToken(user);
}
}

View File

@@ -1,9 +1,9 @@
package io.spring.api;
import io.restassured.RestAssured;
import io.spring.application.JwtService;
import io.spring.application.user.UserData;
import io.spring.application.user.UserReadService;
import io.spring.core.service.JwtService;
import io.spring.application.data.UserData;
import io.spring.infrastructure.mybatis.readservice.UserReadService;
import io.spring.core.user.User;
import io.spring.core.user.UserRepository;
import org.junit.Before;
@@ -54,8 +54,9 @@ public class UsersApiTest {
String username = "johnjacob";
when(jwtService.toToken(any())).thenReturn("123");
UserData userData = new UserData("123", email, username, "", defaultAvatar);
when(userReadService.findByUsername(eq(username))).thenReturn(userData);
User user = new User(email, username, "123", "", defaultAvatar);
UserData userData = new UserData(user.getId(), email, username, "", defaultAvatar);
when(userReadService.findById(any())).thenReturn(userData);
when(userRepository.findByUsername(eq(username))).thenReturn(Optional.empty());
when(userRepository.findByEmail(eq(email))).thenReturn(Optional.empty());
@@ -122,6 +123,7 @@ public class UsersApiTest {
when(userRepository.findByUsername(eq(username))).thenReturn(Optional.of(new User(
email, username, "123", "bio", ""
)));
when(userRepository.findByEmail(any())).thenReturn(Optional.empty());
Map<String, Object> param = prepareRegisterParameter(email, username);
@@ -179,6 +181,7 @@ public class UsersApiTest {
when(userRepository.findByEmail(eq(email))).thenReturn(Optional.of(user));
when(userReadService.findByUsername(eq(username))).thenReturn(userData);
when(userReadService.findById(eq(user.getId()))).thenReturn(userData);
when(jwtService.toToken(any())).thenReturn("123");
Map<String, Object> param = new HashMap<String, Object>() {{

View File

@@ -1,6 +1,9 @@
package io.spring.application.article;
import io.spring.application.ArticleQueryService;
import io.spring.application.Page;
import io.spring.application.data.ArticleData;
import io.spring.application.data.ArticleDataList;
import io.spring.core.article.Article;
import io.spring.core.article.ArticleRepository;
import io.spring.core.favorite.ArticleFavorite;
@@ -8,9 +11,9 @@ import io.spring.core.favorite.ArticleFavoriteRepository;
import io.spring.core.user.FollowRelation;
import io.spring.core.user.User;
import io.spring.core.user.UserRepository;
import io.spring.infrastructure.article.MyBatisArticleRepository;
import io.spring.infrastructure.favorite.MyBatisArticleFavoriteRepository;
import io.spring.infrastructure.user.MyBatisUserRepository;
import io.spring.infrastructure.repository.MyBatisArticleRepository;
import io.spring.infrastructure.repository.MyBatisArticleFavoriteRepository;
import io.spring.infrastructure.repository.MyBatisUserRepository;
import org.joda.time.DateTime;
import org.junit.Before;
import org.junit.Test;
@@ -22,10 +25,9 @@ import org.springframework.test.context.junit4.SpringRunner;
import java.util.Optional;
import static org.hamcrest.CoreMatchers.anyOf;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.CoreMatchers.notNullValue;
import static org.junit.Assert.*;
import static org.junit.Assert.assertThat;
@RunWith(SpringRunner.class)
@MybatisTest
@@ -54,7 +56,7 @@ public class ArticleQueryServiceTest {
public void setUp() throws Exception {
user = new User("aisensiy@gmail.com", "aisensiy", "123", "", "");
userRepository.save(user);
article = new Article("test", "desc", "body", new String[]{"java", "spring"}, user.getId());
article = new Article("test", "desc", "body", new String[]{"java", "spring"}, user.getId(), new DateTime());
articleRepository.save(article);
}

View File

@@ -1,5 +1,7 @@
package io.spring.application.comment;
import io.spring.application.CommentQueryService;
import io.spring.application.data.CommentData;
import io.spring.core.article.Article;
import io.spring.core.article.ArticleRepository;
import io.spring.core.comment.Comment;
@@ -7,9 +9,9 @@ import io.spring.core.comment.CommentRepository;
import io.spring.core.user.FollowRelation;
import io.spring.core.user.User;
import io.spring.core.user.UserRepository;
import io.spring.infrastructure.article.MyBatisArticleRepository;
import io.spring.infrastructure.comment.MyBatisCommentRepository;
import io.spring.infrastructure.user.MyBatisUserRepository;
import io.spring.infrastructure.repository.MyBatisArticleRepository;
import io.spring.infrastructure.repository.MyBatisCommentRepository;
import io.spring.infrastructure.repository.MyBatisUserRepository;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;

View File

@@ -1,8 +1,10 @@
package io.spring.application.profile;
import io.spring.application.ProfileQueryService;
import io.spring.application.data.ProfileData;
import io.spring.core.user.User;
import io.spring.core.user.UserRepository;
import io.spring.infrastructure.user.MyBatisUserRepository;
import io.spring.infrastructure.repository.MyBatisUserRepository;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mybatis.spring.boot.test.autoconfigure.MybatisTest;

View File

@@ -1,8 +1,9 @@
package io.spring.application.tag;
import io.spring.application.TagsQueryService;
import io.spring.core.article.Article;
import io.spring.core.article.ArticleRepository;
import io.spring.infrastructure.article.MyBatisArticleRepository;
import io.spring.infrastructure.repository.MyBatisArticleRepository;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mybatis.spring.boot.test.autoconfigure.MybatisTest;

View File

@@ -5,7 +5,8 @@ import io.spring.core.article.ArticleRepository;
import io.spring.core.article.Tag;
import io.spring.core.user.User;
import io.spring.core.user.UserRepository;
import io.spring.infrastructure.user.MyBatisUserRepository;
import io.spring.infrastructure.repository.MyBatisArticleRepository;
import io.spring.infrastructure.repository.MyBatisUserRepository;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;

View File

@@ -2,6 +2,7 @@ package io.spring.infrastructure.comment;
import io.spring.core.comment.Comment;
import io.spring.core.comment.CommentRepository;
import io.spring.infrastructure.repository.MyBatisCommentRepository;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mybatis.spring.boot.test.autoconfigure.MybatisTest;

View File

@@ -2,6 +2,7 @@ package io.spring.infrastructure.favorite;
import io.spring.core.favorite.ArticleFavorite;
import io.spring.core.favorite.ArticleFavoriteRepository;
import io.spring.infrastructure.repository.MyBatisArticleFavoriteRepository;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mybatis.spring.boot.test.autoconfigure.MybatisTest;
@@ -21,7 +22,7 @@ public class MyBatisArticleFavoriteRepositoryTest {
private ArticleFavoriteRepository articleFavoriteRepository;
@Autowired
private ArticleFavoriteMapper articleFavoriteMapper;
private io.spring.infrastructure.mybatis.mapper.ArticleFavoriteMapper articleFavoriteMapper;
@Test
public void should_save_and_fetch_articleFavorite_success() throws Exception {

View File

@@ -1,7 +1,7 @@
package io.spring.infrastructure.service;
import io.spring.application.JwtService;
import io.spring.application.user.UserData;
import io.spring.core.service.JwtService;
import io.spring.core.user.User;
import org.junit.Before;
import org.junit.Test;
@@ -9,7 +9,7 @@ import java.util.Optional;
import static org.hamcrest.CoreMatchers.is;
import static org.hamcrest.core.IsNull.notNullValue;
import static org.junit.Assert.*;
import static org.junit.Assert.assertThat;
public class DefaultJwtServiceTest {
@@ -22,14 +22,12 @@ public class DefaultJwtServiceTest {
@Test
public void should_generate_and_parse_token() throws Exception {
String username = "aisensiy";
UserData userData = new UserData("123", "aisensiy@163.com", username, "", "");
String token = jwtService.toToken(userData);
User user = new User("email@email.com", "username", "123", "", "");
String token = jwtService.toToken(user);
assertThat(token, notNullValue());
Optional<String> optional = jwtService.getSubFromToken(token);
assertThat(optional.isPresent(), is(true));
assertThat(optional.get(), is(username));
assertThat(optional.get(), is(user.getId()));
}
@Test

View File

@@ -3,6 +3,7 @@ package io.spring.infrastructure.user;
import io.spring.core.user.FollowRelation;
import io.spring.core.user.User;
import io.spring.core.user.UserRepository;
import io.spring.infrastructure.repository.MyBatisUserRepository;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;